containerimage

package
v0.34.0 Latest Latest
Warning

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

Go to latest
Published: Oct 7, 2026 License: Apache-2.0 Imports: 66 Imported by: 84

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DefaultOCIArtifact added in v0.32.0

func DefaultOCIArtifact(compatibilityVersion int, opts *ImageCommitOpts) bool

DefaultOCIArtifact returns the default attestation manifest format.

func DefaultOCITypes added in v0.31.0

func DefaultOCITypes(compatibilityVersion int, src *exporter.Source) bool

DefaultOCITypes returns the default media type behavior for image exports.

func New

func New(opt Opt) (exporter.Exporter, error)

New returns a new containerimage exporter instance that supports exporting to an image store and pushing the image to registry. This exporter supports following values in returned kv map: - containerimage.digest - The digest of the root manifest for the image.

func NewDescriptorReference added in v0.11.0

func NewDescriptorReference(desc ocispecs.Descriptor, release func(context.Context) error) exporter.DescriptorReference

func RemoveInternalLayerAnnotations added in v0.11.0

func RemoveInternalLayerAnnotations(in map[string]string, oci bool) map[string]string

Types

type Annotations added in v0.11.0

type Annotations struct {
	Index              map[string]string
	IndexDescriptor    map[string]string
	Manifest           map[string]string
	ManifestDescriptor map[string]string
}

type AnnotationsGroup added in v0.11.0

type AnnotationsGroup map[string]*Annotations

AnnotationsGroup is a map of annotations keyed by the reference key

func ParseAnnotations added in v0.11.0

func ParseAnnotations(data map[string][]byte) (AnnotationsGroup, map[string][]byte, error)

func (AnnotationsGroup) Merge added in v0.11.0

func (AnnotationsGroup) Platform added in v0.11.0

func (ag AnnotationsGroup) Platform(p *ocispecs.Platform) *Annotations

type ImageCommitOpts added in v0.11.0

type ImageCommitOpts struct {
	ImageName   string
	RefCfg      cacheconfig.RefConfig
	OCITypes    *bool
	OCIArtifact *bool
	Annotations AnnotationsGroup
	Epoch       *epoch.Epoch

	ForceInlineAttestations bool // force inline attestations to be attached
	RewriteTimestamp        bool // rewrite timestamps in layers to match the epoch
}

func (*ImageCommitOpts) Load added in v0.11.0

func (c *ImageCommitOpts) Load(ctx context.Context, opt map[string]string) (map[string]string, error)

func (*ImageCommitOpts) OCIArtifactEnabled added in v0.32.0

func (c *ImageCommitOpts) OCIArtifactEnabled() bool

func (*ImageCommitOpts) OCITypesEnabled added in v0.31.0

func (c *ImageCommitOpts) OCITypesEnabled() bool

func (*ImageCommitOpts) SetOCIArtifactDefault added in v0.32.0

func (c *ImageCommitOpts) SetOCIArtifactDefault(v bool)

func (*ImageCommitOpts) SetOCITypesDefault added in v0.31.0

func (c *ImageCommitOpts) SetOCITypesDefault(v bool)

func (*ImageCommitOpts) Validate added in v0.31.0

func (c *ImageCommitOpts) Validate() error

type ImageWriter

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

func NewImageWriter

func NewImageWriter(opt WriterOpt) (*ImageWriter, error)

func (*ImageWriter) Applier added in v0.5.0

func (ic *ImageWriter) Applier() diff.Applier

func (*ImageWriter) Commit

func (ic *ImageWriter) Commit(ctx context.Context, inp *exporter.Source, sessionID string, inlineCache exptypes.InlineCache, opts *ImageCommitOpts, compatibilityVersion int, exporterType string) (*ocispecs.Descriptor, *result.Result[*solver.Remote], error)

Commit commits the image to the content store and returns the descriptor of the manifest (or the manifest list) and the remotes that were committed for each platform. The returned remotes contain the rewritten layers when opts.RewriteTimestamp is set.

func (*ImageWriter) ContentStore

func (ic *ImageWriter) ContentStore() content.Store

func (*ImageWriter) Snapshotter added in v0.5.0

func (ic *ImageWriter) Snapshotter() snapshot.Snapshotter

type Opt

type Opt struct {
	SessionManager *session.Manager
	ImageWriter    *ImageWriter
	Images         images.Store
	RegistryHosts  docker.RegistryHosts
	LeaseManager   leases.Manager
}

type WriterOpt

type WriterOpt struct {
	Snapshotter  snapshot.Snapshotter
	ContentStore content.Store
	Applier      diff.Applier
	Differ       diff.Comparer
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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