sbom

package
v0.0.13 Latest Latest
Warning

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

Go to latest
Published: Nov 7, 2022 License: Apache-2.0 Imports: 51 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Indexing edn.Keyword = "sbom.state/INDEXING"
	Indexed  edn.Keyword = "sbom.state/INDEXED"
)

Variables

This section is empty.

Functions

func DiffImages added in v0.0.5

func DiffImages(image1 string, image2 string, cli command.Cli, workspace string, apikey string) error

func IndexImage

func IndexImage(image string, cli command.Cli) (*types.Sbom, *v1.Image, error)

func IndexPath

func IndexPath(path string, name string, cli command.Cli) (*types.Sbom, *v1.Image, error)

func UploadSbom

func UploadSbom(sb *types.Sbom, img *v1.Image, workspace string, apikey string) error

UploadSbom transact an image and its data into the data plane

func WatchImages added in v0.0.10

func WatchImages(cli command.Cli) error

Types

type BlobEntity

type BlobEntity struct {
	skill.Entity `entity-type:"docker.image/blob"`
	Size         int64  `edn:"docker.image.blob/size"`
	Digest       string `edn:"docker.image.blob/digest"`
	DiffId       string `edn:"docker.image.blob/diff-id"`
}

type CveEntry added in v0.0.5

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

type CveMap added in v0.0.5

type CveMap map[string]CveEntry

type DependencyEntity

type DependencyEntity struct {
	skill.Entity `entity-type:"package/dependency"`
	Scopes       []string      `edn:"package.dependency/scopes"`
	Parent       ImageEntity   `edn:"package.dependency/parent"`
	Package      PackageEntity `edn:"package.dependency/package"`
	Files        []FileEntity  `edn:"package.dependency/files"`
}

type EnvironmentVariableEntity

type EnvironmentVariableEntity struct {
	skill.Entity `entity-type:"docker.image.environment/variable"`
	Name         string `edn:"docker.image.environment.variable/name"`
	Value        string `edn:"docker.image.environment.variable/value"`
}

type FileEntity

type FileEntity struct {
	skill.Entity `entity-type:"package/file"`
	Id           string `edn:"package.file/id"`
	Path         string `edn:"package.file/path"`
	Digest       string `edn:"package.file/digest"`
}

type ImageEntity

type ImageEntity struct {
	skill.Entity         `entity-type:"docker/image"`
	Digest               string                       `edn:"docker.image/digest"`
	CreatedAt            *time.Time                   `edn:"docker.image/created-at,omitempty"`
	Repository           *RepositoryEntity            `edn:"docker.image/repository,omitempty"`
	Repositories         *[]RepositoryEntity          `edn:"docker.image/repositories,omitempty"`
	Tags                 *skill.ManyRef               `edn:"docker.image/tags,omitempty"`
	Labels               *[]LabelEntity               `edn:"docker.image/labels,omitempty"`
	Ports                *[][2]string                 `edn:"docker.image/ports,omitempty"`
	Env                  *[][2]string                 `edn:"docker.image/env,omitempty"`
	EnvironmentVariables *[]EnvironmentVariableEntity `edn:"docker.image/environment-variables,omitempty"`
	Layers               *[]LayerEntity               `edn:"docker.image/layers,omitempty"`
	BlobDigest           string                       `edn:"docker.image/blob-digest,omitempty"`
	DiffChainId          string                       `edn:"docker.image/diff-chain-id,omitempty"`
	Sha                  string                       `edn:"docker.image/sha,omitempty"`

	SbomState        edn.Keyword `edn:"sbom/state"`
	SbomVersion      string      `edn:"sbom/version,omitempty"`
	SbomLastUpdated  *time.Time  `edn:"sbom/last-updated,omitempty"`
	SbomPackageCount int         `edn:"sbom/package-count,omitempty"`

	Dependencies *skill.ManyRef `edn:"artifact/dependencies,omitempty"`
}

type ImageIndexResult added in v0.0.5

type ImageIndexResult struct {
	Input string
	Image *v1.Image
	Sbom  *types.Sbom
	Error error
}

type LabelEntity

type LabelEntity struct {
	skill.Entity `entity-type:"docker.image/label"`
	Name         string `edn:"docker.image.label/name"`
	Value        string `edn:"docker.image.label/value"`
}

type LayerEntity

type LayerEntity struct {
	skill.Entity `entity-type:"docker.image/layer"`
	Ordinal      int        `edn:"docker.image.layer/ordinal"`
	ImageDigest  string     `edn:"docker.image.layer/image-digest"`
	Blob         BlobEntity `edn:"docker.image.layer/blob"`
	CreatedAt    time.Time  `edn:"docker.image.layer/created-at"`
	CreatedBy    string     `edn:"docker.image.layer/created-by"`
	BlobDigest   string     `edn:"docker.image.layer/blob-digest"`
	ChainId      string     `edn:"docker.image.layer/chain-id"`
}

type PackageEntity

type PackageEntity struct {
	skill.Entity `entity-type:"package"`
	Purl         string   `edn:"package/url"`
	Type         string   `edn:"package/type"`
	Namespace    string   `edn:"package/namespace,omitempty"`
	Name         string   `edn:"package/name"`
	Version      string   `edn:"package/version"`
	Author       string   `edn:"package/author,omitempty"`
	Licenses     []string `edn:"package/licenses,omitempty"`
	Description  string   `edn:"package/description,omitempty"`
	Url          string   `edn:"package/homepage,omitempty"`
	Size         int      `edn:"package/size,omitempty"`
	AdvisoryUrl  string   `edn:"package/advisory-url"`
}

type PackageEntry added in v0.0.5

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

type PackageMap added in v0.0.5

type PackageMap map[string]PackageEntry

type PlatformEntity

type PlatformEntity struct {
	skill.Entity `entity-type:"docker/platform"`
	Image        ImageEntity `edn:"docker.platform/image"`
	Os           string      `edn:"docker.platform/os"`
	Architecture string      `edn:"docker.platform/architecture"`
	Variant      string      `edn:"docker.platform/variant,omitempty"`
}

type RepositoryEntity

type RepositoryEntity struct {
	skill.Entity `entity-type:"docker/repository"`
	Host         string        `edn:"docker.repository/host"`
	Name         string        `edn:"docker.repository/repository"`
	Platforms    skill.ManyRef `edn:"docker.repository/platforms"`
	Type         edn.Keyword   `edn:"docker.repository/type,omitempty"`
}

type TagEntity

type TagEntity struct {
	skill.Entity `entity-type:"docker/tag"`
	Name         string           `edn:"docker.tag/name"`
	UpdatedAt    time.Time        `edn:"docker.tag/updated-at"`
	Repository   RepositoryEntity `edn:"docker.tag/repository"`
	Digest       string           `edn:"docker.tag/digest"`
	Image        ImageEntity      `edn:"docker.tag/image"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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