store

package
v0.8.7 Latest Latest
Warning

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

Go to latest
Published: Jan 10, 2023 License: Apache-2.0 Imports: 28 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultLayerTarName = "layer.tar.gz"

	DefaultJSONIndent = "\t"
)

Variables

This section is empty.

Functions

func DeleteImageLocal

func DeleteImageLocal(imageID string) (err error)

Types

type Backend

type Backend interface {
	Get(id digest.Digest) ([]byte, error)
	Set(data []byte) (digest.Digest, error)
	Delete(id digest.Digest) error
	ListImages() ([][]byte, error)
	SetMetadata(id digest.Digest, key string, data []byte) error
	GetMetadata(id digest.Digest, key string) ([]byte, error)
	DeleteMetadata(id digest.Digest, key string) error
	LayerDBDir(digest digest.Digest) string
	LayerDataDir(digest digest.Digest) string
	// contains filtered or unexported methods
}

Backend is a service for image/layer read and write. is majorly used by layer store. Avoid invoking backend by others as possible as we can.

func NewFSStoreBackend

func NewFSStoreBackend() (Backend, error)

type DistributionMetadata

type DistributionMetadata []DistributionMetadataItem

DistributionMetadata is the data from {layerdb}/distribution_layer_digest which indicate that digest of compressedlayerStream in specific registry and repository

type DistributionMetadataItem

type DistributionMetadataItem struct {
	SourceRepository   string        `json:"source_repository"`
	LayerContentDigest digest.Digest `json:"layer_content_digest"`
}

type ImageMetadataMap

type ImageMetadataMap map[string]*types.ManifestList

type ImageStore

type ImageStore interface {
	GetByName(name string, platform *v1.Platform) (*v1.Image, error)

	GetByID(id string) (*v1.Image, error)

	DeleteByName(name string, platform *v1.Platform) error

	DeleteByID(id string) error

	Save(image v1.Image) error

	SetImageMetadataItem(name string, imageMetadata *types.ManifestDescriptor) error

	GetImageMetadataItem(name string, platform *v1.Platform) (*types.ManifestDescriptor, error)

	GetImageMetadataMap() (ImageMetadataMap, error)

	GetImageManifestList(name string) ([]*types.ManifestDescriptor, error)
}

func NewDefaultImageStore

func NewDefaultImageStore() (ImageStore, error)

type Layer

type Layer interface {
	ID() LayerID
	TarStream() (io.ReadCloser, error)
	SimpleID() string
	Size() int64
	MediaType() string
	DistributionMetadata() map[string]digest.Digest
	SetSize(size int64)
}

type LayerID

type LayerID digest.Digest

func (LayerID) String

func (li LayerID) String() string

func (LayerID) ToDigest

func (li LayerID) ToDigest() digest.Digest

func (LayerID) Validate

func (li LayerID) Validate() error

type LayerStore

type LayerStore interface {
	Get(id LayerID) Layer
	RegisterLayerIfNotPresent(layer Layer) error
	RegisterLayerForBuilder(diffPath string) (digest.Digest, error)
	Delete(id LayerID) error
	DisassembleTar(layerID digest.Digest, streamReader io.ReadCloser) error
	AddDistributionMetadata(layerID LayerID, named reference.Named, descriptorDigest digest.Digest) error
}

func NewDefaultLayerStore

func NewDefaultLayerStore() (LayerStore, error)

type ROLayer

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

func NewROLayer

func NewROLayer(layerDigest digest.Digest, size int64, distributionMetadata map[string]digest.Digest) (*ROLayer, error)

func (*ROLayer) DistributionMetadata

func (rl *ROLayer) DistributionMetadata() map[string]digest.Digest

func (*ROLayer) ID

func (rl *ROLayer) ID() LayerID

func (*ROLayer) MediaType

func (rl *ROLayer) MediaType() string

func (*ROLayer) SetSize

func (rl *ROLayer) SetSize(size int64)

func (*ROLayer) SimpleID

func (rl *ROLayer) SimpleID() string

func (*ROLayer) Size

func (rl *ROLayer) Size() int64

func (*ROLayer) TarStream

func (rl *ROLayer) TarStream() (io.ReadCloser, error)

Jump to

Keyboard shortcuts

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