docker_registry

package
v2.14.0 Latest Latest
Warning

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

Go to latest
Published: Nov 26, 2024 License: Apache-2.0 Imports: 40 Imported by: 0

Documentation

Index

Constants

View Source
const (
	GitHubPackagesImplementationName = "github"
	GitHubPackagesRegistryAddress    = "ghcr.io"
)
View Source
const AwsEcrImplementationName = "ecr"
View Source
const (
	AzureCrImplementationName = "acr"
)
View Source
const DefaultImplementationName = "default"
View Source
const DockerHubImplementationName = "dockerhub"
View Source
const GcrImplementationName = "gcr"
View Source
const GitLabRegistryImplementationName = "gitlab"
View Source
const (
	HarborImplementationName = "harbor"
)
View Source
const OptionCachedTagsDefault = false
View Source
const (
	QuayImplementationName = "quay"
)

Variables

Functions

func ImplementationList

func ImplementationList() []string

func Init

func Init(ctx context.Context, insecureRegistry, skipTlsVerifyRegistry bool, registryMirrors []string) error

func IsAzureCrRepositoryNotFoundErr

func IsAzureCrRepositoryNotFoundErr(err error) bool

func IsBrokenImageError

func IsBrokenImageError(err error) bool

func IsDockerHubRepositoryNotFoundErr

func IsDockerHubRepositoryNotFoundErr(err error) bool

func IsDockerHubUnauthorizedErr

func IsDockerHubUnauthorizedErr(err error) bool

func IsGitHubPackagesForbiddenErr

func IsGitHubPackagesForbiddenErr(err error) bool

func IsGitHubPackagesUnauthorizedErr

func IsGitHubPackagesUnauthorizedErr(err error) bool

func IsHarborNotFoundError

func IsHarborNotFoundError(err error) bool

func IsHarborRepositoryNotFoundErr

func IsHarborRepositoryNotFoundErr(err error) bool

func IsImageNotFoundError

func IsImageNotFoundError(err error) bool

func IsQuayRepositoryNotFoundErr

func IsQuayRepositoryNotFoundErr(err error) bool

func IsQuayTagExpiredErr

func IsQuayTagExpiredErr(err error) bool

func IsStatusNotFoundErr

func IsStatusNotFoundErr(err error) bool

func ResolveImplementation

func ResolveImplementation(repository, implementation string) (string, error)

func ValidateRepositoryReference

func ValidateRepositoryReference(reference string) error

Types

type ArchiveOpener

type ArchiveOpener interface {
	Open() (io.ReadCloser, error)
}

type AzureCrRepositoryNotFoundErr

type AzureCrRepositoryNotFoundErr apiError

func NewAzureCrRepositoryNotFoundErr

func NewAzureCrRepositoryNotFoundErr(err error) AzureCrRepositoryNotFoundErr

type CopyImageOptions

type CopyImageOptions struct{}

type DockerHubRepositoryNotFoundErr

type DockerHubRepositoryNotFoundErr apiError

func NewDockerHubRepositoryNotFoundErr

func NewDockerHubRepositoryNotFoundErr(err error) DockerHubRepositoryNotFoundErr

type DockerHubUnauthorizedErr

type DockerHubUnauthorizedErr apiError

func NewDockerHubUnauthorizedErr

func NewDockerHubUnauthorizedErr(err error) DockerHubUnauthorizedErr

type DockerRegistryOptions

type DockerRegistryOptions struct {
	InsecureRegistry      bool
	SkipTlsVerifyRegistry bool
	DockerHubToken        string
	DockerHubUsername     string
	DockerHubPassword     string
	GitHubToken           string
	HarborUsername        string
	HarborPassword        string
	QuayToken             string
}

type DockerRegistryTracer

type DockerRegistryTracer struct {
	DockerRegistry    Interface
	DockerRegistryApi GenericApiInterface
}

func NewDockerRegistryTracer

func NewDockerRegistryTracer(dockerRegistry Interface, dockerRegistryApi GenericApiInterface) *DockerRegistryTracer

func (*DockerRegistryTracer) CopyImage

func (r *DockerRegistryTracer) CopyImage(ctx context.Context, sourceReference, destinationReference string, opts CopyImageOptions) (err error)

func (*DockerRegistryTracer) CreateRepo

func (r *DockerRegistryTracer) CreateRepo(ctx context.Context, reference string) (err error)

func (*DockerRegistryTracer) DeleteRepo

func (r *DockerRegistryTracer) DeleteRepo(ctx context.Context, reference string) (err error)

func (*DockerRegistryTracer) DeleteRepoImage

func (r *DockerRegistryTracer) DeleteRepoImage(ctx context.Context, repoImage *image.Info) (err error)

func (*DockerRegistryTracer) GetRepoImage

func (r *DockerRegistryTracer) GetRepoImage(ctx context.Context, reference string) (res *image.Info, err error)

func (*DockerRegistryTracer) GetRepoImageConfigFile

func (r *DockerRegistryTracer) GetRepoImageConfigFile(ctx context.Context, reference string) (res *v1.ConfigFile, err error)

func (*DockerRegistryTracer) IsTagExist

func (r *DockerRegistryTracer) IsTagExist(ctx context.Context, reference string, opts ...Option) (res bool, err error)

func (*DockerRegistryTracer) MutateAndPushImage

func (r *DockerRegistryTracer) MutateAndPushImage(ctx context.Context, sourceReference, destinationReference string, mutateConfigFunc func(v1.Config) (v1.Config, error)) (err error)

func (*DockerRegistryTracer) PullImageArchive

func (r *DockerRegistryTracer) PullImageArchive(ctx context.Context, archiveWriter io.Writer, reference string) (err error)

func (*DockerRegistryTracer) PushImage

func (r *DockerRegistryTracer) PushImage(ctx context.Context, reference string, opts *PushImageOptions) (err error)

func (*DockerRegistryTracer) PushImageArchive

func (r *DockerRegistryTracer) PushImageArchive(ctx context.Context, archiveOpener ArchiveOpener, reference string) (err error)

func (*DockerRegistryTracer) PushManifestList

func (r *DockerRegistryTracer) PushManifestList(ctx context.Context, reference string, opts ManifestListOptions) (err error)

func (*DockerRegistryTracer) String

func (r *DockerRegistryTracer) String() (res string)

func (*DockerRegistryTracer) TagRepoImage

func (r *DockerRegistryTracer) TagRepoImage(ctx context.Context, repoImage *image.Info, tag string) (err error)

func (*DockerRegistryTracer) Tags

func (r *DockerRegistryTracer) Tags(ctx context.Context, reference string, opts ...Option) (res []string, err error)

func (*DockerRegistryTracer) TryGetRepoImage

func (r *DockerRegistryTracer) TryGetRepoImage(ctx context.Context, reference string) (res *image.Info, err error)

type DockerRegistryWithCache

type DockerRegistryWithCache struct {
	Interface
	// contains filtered or unexported fields
}

func (*DockerRegistryWithCache) DeleteRepoImage

func (r *DockerRegistryWithCache) DeleteRepoImage(ctx context.Context, repoImage *image.Info) error

func (*DockerRegistryWithCache) IsTagExist

func (r *DockerRegistryWithCache) IsTagExist(ctx context.Context, reference string, opts ...Option) (bool, error)

func (*DockerRegistryWithCache) MutateAndPushImage

func (r *DockerRegistryWithCache) MutateAndPushImage(ctx context.Context, sourceReference, destinationReference string, mutateConfigFunc func(v1.Config) (v1.Config, error)) error

func (*DockerRegistryWithCache) PushImage

func (r *DockerRegistryWithCache) PushImage(ctx context.Context, reference string, opts *PushImageOptions) error

func (*DockerRegistryWithCache) TagRepoImage

func (r *DockerRegistryWithCache) TagRepoImage(ctx context.Context, repoImage *image.Info, tag string) error

func (*DockerRegistryWithCache) Tags

func (r *DockerRegistryWithCache) Tags(ctx context.Context, reference string, opts ...Option) ([]string, error)

type GcrOptions

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

type GenericApiInterface

type GenericApiInterface interface {
	GetRepoImageConfigFile(ctx context.Context, reference string) (*v1.ConfigFile, error)
	// contains filtered or unexported methods
}

func API

func API() GenericApiInterface

type GetRepoImageOptions

type GetRepoImageOptions struct {
	IsImageIndex bool
}

type GitHubPackagesForbiddenErr

type GitHubPackagesForbiddenErr apiError

func NewGitHubPackagesForbiddenErr

func NewGitHubPackagesForbiddenErr(err error) GitHubPackagesForbiddenErr

type GitHubPackagesUnauthorizedErr

type GitHubPackagesUnauthorizedErr apiError

func NewGitHubPackagesUnauthorizedErr

func NewGitHubPackagesUnauthorizedErr(err error) GitHubPackagesUnauthorizedErr

type HarborRepositoryNotFoundErr

type HarborRepositoryNotFoundErr apiError

func NewHarborRepositoryNotFoundErr

func NewHarborRepositoryNotFoundErr(err error) HarborRepositoryNotFoundErr

type Interface

type Interface interface {
	CreateRepo(ctx context.Context, reference string) error
	DeleteRepo(ctx context.Context, reference string) error
	Tags(ctx context.Context, reference string, opts ...Option) ([]string, error)
	IsTagExist(ctx context.Context, reference string, opts ...Option) (bool, error)
	TagRepoImage(ctx context.Context, repoImage *image.Info, tag string) error
	TryGetRepoImage(ctx context.Context, reference string) (*image.Info, error)
	DeleteRepoImage(ctx context.Context, repoImage *image.Info) error
	PushImage(ctx context.Context, reference string, opts *PushImageOptions) error
	CopyImage(ctx context.Context, sourceReference, destinationReference string, opts CopyImageOptions) error

	PushImageArchive(ctx context.Context, archiveOpener ArchiveOpener, reference string) error
	PullImageArchive(ctx context.Context, archiveWriter io.Writer, reference string) error
	PushManifestList(ctx context.Context, reference string, opts ManifestListOptions) error

	String() string
	// contains filtered or unexported methods
}

func NewDockerRegistry

func NewDockerRegistry(repositoryAddress, implementation string, options DockerRegistryOptions) (Interface, error)

type ManifestListOptions

type ManifestListOptions struct {
	Manifests []*image.Info
	Platforms []string
}

type Option

type Option func(*Options)

func WithCachedTags

func WithCachedTags() Option

type Options

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

type PushImageOptions

type PushImageOptions struct {
	Labels map[string]string
}

type QuayRepositoryNotFoundErr

type QuayRepositoryNotFoundErr apiError

func NewQuayRepositoryNotFoundErr

func NewQuayRepositoryNotFoundErr(err error) QuayRepositoryNotFoundErr

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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