package cacheimport
import "github.com/moby/buildkit/cache/remotecache/v1"
Index ¶
- Constants
- func NewCacheKeyStorage(cc *CacheChains, w worker.Worker) (solver.CacheKeyStorage, solver.CacheResultStorage, error)
- func Parse(configJSON []byte, provider DescriptorProvider, t solver.CacheExporterTarget) error
- func ParseConfig(config CacheConfig, provider DescriptorProvider, t solver.CacheExporterTarget) error
- type CacheChains
- func NewCacheChains() *CacheChains
- func (c *CacheChains) Add(dgst digest.Digest) solver.CacheExporterRecord
- func (c *CacheChains) Marshal(ctx context.Context) (*CacheConfig, DescriptorProvider, error)
- func (c *CacheChains) Visit(v interface{})
- func (c *CacheChains) Visited(v interface{}) bool
- type CacheConfig
- type CacheInput
- type CacheLayer
- type CacheRecord
- type CacheResult
- type ChainedResult
- type DescriptorProvider
- type DescriptorProviderPair
- type LayerAnnotations
Constants ¶
const CacheConfigMediaTypeV0 = "application/vnd.buildkit.cacheconfig.v0"
Functions ¶
func NewCacheKeyStorage ¶
func NewCacheKeyStorage(cc *CacheChains, w worker.Worker) (solver.CacheKeyStorage, solver.CacheResultStorage, error)
func Parse ¶
func Parse(configJSON []byte, provider DescriptorProvider, t solver.CacheExporterTarget) error
func ParseConfig ¶
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 (c *CacheChains) Add(dgst digest.Digest) solver.CacheExporterRecord
func (*CacheChains) Marshal ¶
func (c *CacheChains) Marshal(ctx context.Context) (*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 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"`
ChainedResults []ChainedResult `json:"chains,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 ChainedResult ¶
type ChainedResult struct {
LayerIndexes []int `json:"layers"`
CreatedAt time.Time `json:"createdAt,omitempty"`
}
type DescriptorProvider ¶
type DescriptorProvider map[digest.Digest]DescriptorProviderPair
type DescriptorProviderPair ¶
type DescriptorProviderPair struct {
Descriptor ocispecs.Descriptor
Provider content.Provider
}
type LayerAnnotations ¶
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"`
}
Source Files ¶
cachestorage.go chains.go doc.go parse.go spec.go utils.go
- Version
- v0.13.0-beta1
- Published
- Sep 29, 2023
- Platform
- linux/amd64
- Imports
- 18 packages
- Last checked
- 8 minutes ago –
Tools for package owners.