Help us shape the future of Go! Take the 2026 Go Developer Survey

metadata

package
v1.11.0 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 2016 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type FSMetadataStore

type FSMetadataStore struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

FSMetadataStore uses the filesystem to associate metadata with layer and image IDs.

func NewFSMetadataStore

func NewFSMetadataStore(basePath string) (*FSMetadataStore, error)

NewFSMetadataStore creates a new filesystem-based metadata store.

func (*FSMetadataStore) Delete

func (store *FSMetadataStore) Delete(namespace, key string) error

Delete removes data indexed by namespace and key. The data file named after the key, stored in the namespace's directory is deleted.

func (*FSMetadataStore) Get

func (store *FSMetadataStore) Get(namespace string, key string) ([]byte, error)

Get retrieves data by namespace and key. The data is read from a file named after the key, stored in the namespace's directory.

func (*FSMetadataStore) Set

func (store *FSMetadataStore) Set(namespace, key string, value []byte) error

Set writes data indexed by namespace and key. The data is written to a file named after the key, stored in the namespace's directory.

type Store

type Store interface {
	// Get retrieves data by namespace and key.
	Get(namespace string, key string) ([]byte, error)
	// Set writes data indexed by namespace and key.
	Set(namespace, key string, value []byte) error
	// Delete removes data indexed by namespace and key.
	Delete(namespace, key string) error
}

Store implements a K/V store for mapping distribution-related IDs to on-disk layer IDs and image IDs. The namespace identifies the type of mapping (i.e. "v1ids" or "artifacts"). MetadataStore is goroutine-safe.

type V1IDService

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

V1IDService maps v1 IDs to layers on disk.

func NewV1IDService

func NewV1IDService(store Store) *V1IDService

NewV1IDService creates a new V1 ID mapping service.

func (*V1IDService) Get

func (idserv *V1IDService) Get(v1ID, registry string) (layer.DiffID, error)

Get finds a layer by its V1 ID.

func (*V1IDService) Set

func (idserv *V1IDService) Set(v1ID, registry string, id layer.DiffID) error

Set associates an image with a V1 ID.

type V2Metadata

type V2Metadata struct {
	Digest           digest.Digest
	SourceRepository string
}

V2Metadata contains the digest and source repository information for a layer.

type V2MetadataService

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

V2MetadataService maps layer IDs to a set of known metadata for the layer.

func NewV2MetadataService

func NewV2MetadataService(store Store) *V2MetadataService

NewV2MetadataService creates a new diff ID to v2 metadata mapping service.

func (*V2MetadataService) Add

func (serv *V2MetadataService) Add(diffID layer.DiffID, metadata V2Metadata) error

Add associates metadata with a layer DiffID. If too many metadata entries are present, the oldest one is dropped.

func (*V2MetadataService) GetDiffID

func (serv *V2MetadataService) GetDiffID(dgst digest.Digest) (layer.DiffID, error)

GetDiffID finds a layer DiffID from a digest.

func (*V2MetadataService) GetMetadata

func (serv *V2MetadataService) GetMetadata(diffID layer.DiffID) ([]V2Metadata, error)

GetMetadata finds the metadata associated with a layer DiffID.

func (*V2MetadataService) Remove

func (serv *V2MetadataService) Remove(metadata V2Metadata) error

Remove unassociates a metadata entry from a layer DiffID.

Jump to

Keyboard shortcuts

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