cacheimport

package
v0.9.1 Latest Latest
Warning

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

Go to latest
Published: Oct 4, 2021 License: Apache-2.0 Imports: 18 Imported by: 108

Documentation

Index

Constants

View Source
const CacheConfigMediaTypeV0 = "application/vnd.buildkit.cacheconfig.v0"

Variables

View Source
var EmptyLayerRemovalSupported = true

EmptyLayerRemovalSupported defines if implementation supports removal of empty layers. Buildkit image exporter removes empty layers, but moby layerstore based implementation does not.

Functions

func Parse

func Parse(configJSON []byte, provider DescriptorProvider, t solver.CacheExporterTarget) error

func ParseConfig added in v0.4.0

func ParseConfig(config CacheConfig, provider DescriptorProvider, t solver.CacheExporterTarget) error

Types

type CacheChains

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

func NewCacheChains

func NewCacheChains() *CacheChains

func (*CacheChains) Add

func (*CacheChains) Marshal

func (c *CacheChains) Marshal() (*CacheConfig, DescriptorProvider, error)

func (*CacheChains) Visit

func (c *CacheChains) Visit(v interface{})

func (*CacheChains) Visited

func (c *CacheChains) Visited(v interface{}) bool

type CacheConfig

type CacheConfig struct {
	Layers  []CacheLayer  `json:"layers,omitempty"`
	Records []CacheRecord `json:"records,omitempty"`
}

type CacheInput

type CacheInput struct {
	Selector  string `json:"selector,omitempty"`
	LinkIndex int    `json:"link"`
}

type CacheLayer

type CacheLayer struct {
	Blob        digest.Digest     `json:"blob,omitempty"`
	ParentIndex int               `json:"parent,omitempty"`
	Annotations *LayerAnnotations `json:"annotations,omitempty"`
}

type CacheRecord

type CacheRecord struct {
	Results []CacheResult  `json:"layers,omitempty"`
	Digest  digest.Digest  `json:"digest,omitempty"`
	Inputs  [][]CacheInput `json:"inputs,omitempty"`
}

type CacheResult

type CacheResult struct {
	LayerIndex int       `json:"layer"`
	CreatedAt  time.Time `json:"createdAt,omitempty"`
}

type DescriptorProvider

type DescriptorProvider map[digest.Digest]DescriptorProviderPair

type DescriptorProviderPair

type DescriptorProviderPair struct {
	Descriptor ocispec.Descriptor
	Provider   content.Provider
}

type LayerAnnotations added in v0.9.0

type LayerAnnotations struct {
	MediaType string        `json:"mediaType,omitempty"`
	DiffID    digest.Digest `json:"diffID,omitempty"`
	Size      int64         `json:"size,omitempty"`
	CreatedAt time.Time     `json:"createdAt,omitempty"`
}

Jump to

Keyboard shortcuts

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