registry

package
v0.2.23 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetCertificates

func GetCertificates(certFile string) (certificates *x509.CertPool, err error)

GetCertificates get X509 certificates.

Types

type Artifact

type Artifact struct {
	Registry   string
	Repository string
	Tag        string
	Digest     string
}

Artifact to head release dependency.

func NewArtifact

func NewArtifact(registry, repository, tag, digest string) Artifact

NewArtifact creates a new artifact object.

func (*Artifact) Version

func (art *Artifact) Version() string

Version returns tag or digest.

func (*Artifact) VersionedImage

func (art *Artifact) VersionedImage() string

VersionedImage returns full URI for image.

type CredentialStore

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

CredentialStore for registry credentials such as ~/.docker/config.json.

func NewCredentialStore

func NewCredentialStore() CredentialStore

NewCredentialStore create a create store.

func (*CredentialStore) Credential

func (cs *CredentialStore) Credential(registry string) (auth.Credential, error)

Credential get an authentication credential for a given registry.

func (*CredentialStore) Init

func (cs *CredentialStore) Init() (err error)

Init initialize a credential store.

func (*CredentialStore) SetDirectory

func (cs *CredentialStore) SetDirectory(directory string)

SetDirectory override default directory.

type OCIRegistryClient

type OCIRegistryClient struct {
	StorageContext
	// contains filtered or unexported fields
}

OCIRegistryClient storage client for an OCI registry.

func NewOCIRegistry

func NewOCIRegistry(context StorageContext) *OCIRegistryClient

NewOCIRegistry create an OCI registry client.

func (*OCIRegistryClient) CopyGraph

func (or *OCIRegistryClient) CopyGraph(ctx context.Context, srcStorage orasregistry.Repository, dstStorage orasregistry.Repository, desc ocispec.Descriptor) error

CopyGraph copy manifest and all blobs to destination.

func (*OCIRegistryClient) Destination

func (or *OCIRegistryClient) Destination(image Artifact) string

Destination of this storage registry.

func (*OCIRegistryClient) GetHost

func (or *OCIRegistryClient) GetHost() string

GetHost for registry host.

func (*OCIRegistryClient) GetStorage

func (or *OCIRegistryClient) GetStorage(ctx context.Context, image Artifact) (repo orasregistry.Repository, err error)

GetStorage object based on repository.

func (*OCIRegistryClient) Init

func (or *OCIRegistryClient) Init() error

Init registry configuration.

func (*OCIRegistryClient) Resolve

func (or *OCIRegistryClient) Resolve(ctx context.Context, srcStorage orasregistry.Repository, versionedImage string) (desc ocispec.Descriptor, err error)

Resolve the location of the source repository given the image.

func (*OCIRegistryClient) SetProject

func (or *OCIRegistryClient) SetProject(project string)

SetProject for registry destination.

type StorageClient

type StorageClient interface {
	Init() error
	Resolve(ctx context.Context, srcStorage orasregistry.Repository, versionedImage string) (desc ocispec.Descriptor, err error)
	GetStorage(ctx context.Context, image Artifact) (repo orasregistry.Repository, err error)
	SetProject(project string)
	Destination(image Artifact) string
	CopyGraph(ctx context.Context, srcStorage orasregistry.Repository, dstStorage orasregistry.Repository, desc ocispec.Descriptor) error
}

StorageClient interface for general image storage client.

type StorageContext

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

StorageContext describes aspects of a registry.

func NewStorageContext

func NewStorageContext(host string, credentialStore CredentialStore, certificates *x509.CertPool, insecure bool) StorageContext

NewStorageContext create registry context.

Directories

Path Synopsis
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

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