sbomreport

package
v0.9.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 14, 2023 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ArtifactRef added in v0.9.2

func ArtifactRef(data v1alpha1.SbomReportData) string

func BuildSbomReportData added in v0.9.2

func BuildSbomReportData(reports ty.Report, clock ext.Clock, registry v1alpha1.Registry, artifact v1alpha1.Artifact, version string) (*v1alpha1.SbomReportData, error)

func ImageRef added in v0.9.2

func ImageRef(imageRef string) (string, error)

func ParseReference added in v0.9.2

func ParseReference(ref string) (containerimage.Reference, error)

func ReportGlobalName added in v0.9.2

func ReportGlobalName(artifact string) string

Types

type ReadWriter

type ReadWriter interface {
	Reader
	Writer
}

func NewReadWriter

func NewReadWriter(objectResolver *kube.ObjectResolver) ReadWriter

NewReadWriter constructs a new ReadWriter which is using the client package provided by the controller-runtime libraries for interacting with the Kubernetes API server.

type Reader

type Reader interface {
	FindByOwner(context.Context, kube.ObjectRef) ([]v1alpha1.SbomReport, error)
	FindReportByImageRef(ctx context.Context, imageRef string) ([]v1alpha1.ClusterSbomReport, error)
}

Reader is the interface that wraps methods for finding v1alpha1.SbomReport objects.

FindByOwner returns the slice of v1alpha1.SbomReport instances owned by the given kube.ObjectRef or an empty slice if the reports are not found.

type ReportBuilder

type ReportBuilder struct {
	// contains filtered or unexported fields
}

func NewReportBuilder

func NewReportBuilder(scheme *runtime.Scheme) *ReportBuilder

func (*ReportBuilder) AdditionalReportLabels

func (b *ReportBuilder) AdditionalReportLabels(additionalReportLabels map[string]string) *ReportBuilder

func (*ReportBuilder) CacheTTL added in v0.9.2

func (b *ReportBuilder) CacheTTL(cacheTTL *time.Duration) *ReportBuilder

func (*ReportBuilder) Container

func (b *ReportBuilder) Container(name string) *ReportBuilder

func (*ReportBuilder) Controller

func (b *ReportBuilder) Controller(controller client.Object) *ReportBuilder

func (*ReportBuilder) Data

func (*ReportBuilder) Get

func (*ReportBuilder) NamespacedReport added in v0.9.2

func (b *ReportBuilder) NamespacedReport() (v1alpha1.SbomReport, error)

func (*ReportBuilder) PodSpecHash

func (b *ReportBuilder) PodSpecHash(hash string) *ReportBuilder

func (*ReportBuilder) ResourceLabelsToInclude

func (b *ReportBuilder) ResourceLabelsToInclude(resourceLabelsToInclude []string) *ReportBuilder

type Writer

type Writer interface {
	Write(context.Context, []v1alpha1.SbomReport) error
	WriteCluster(context.Context, []v1alpha1.ClusterSbomReport) error
}

Writer is the interface that wraps the basic Write method.

Write creates or updates the given slice of v1alpha1.SbomReport instances.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL