oci

package
v0.8.5 Latest Latest
Warning

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

Go to latest
Published: Apr 11, 2024 License: Apache-2.0 Imports: 22 Imported by: 4

Documentation

Index

Constants

View Source
const (
	OciErrorCodeNameUnknown  = "NAME_UNKNOWN"
	OciErrorCodeRepoNotFound = "NOT_FOUND"
)
View Source
const DEFAULT_LIMIT_STORE_SIZE = 64 * 1024 * 1024

The default limit of the store size is 64 MiB.

View Source
const DEFAULT_OCI_ARTIFACT_TYPE = "application/vnd.oci.image.layer.v1.tar"
View Source
const OCI_SCHEME = "oci"

Variables

This section is empty.

Functions

func GenOciManifestFromPkg added in v0.3.7

func GenOciManifestFromPkg(kclPkg *pkg.KclPkg) (map[string]string, error)

GenOciManifestFromPkg will generate the oci manifest from the kcl package.

func Login

func Login(hostname, username, password string, setting *settings.Settings) error

Login will login 'hostname' by 'username' and 'password'.

func Logout

func Logout(hostname string, setting *settings.Settings) error

Logout will logout from registry.

func Pull

func Pull(localPath, hostName, repoName, tag string, settings *settings.Settings) error

Pull will pull the oci artifacts from oci registry to local path.

func Push

func Push(localPath, hostName, repoName, tag string, settings *settings.Settings) error

Push will push the oci artifacts to oci registry from local path

func RepoIsNotExist added in v0.8.0

func RepoIsNotExist(err error) bool

RepoIsNotExist will check if the error is caused by the repo not found.

Types

type OciClient

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

OciClient is mainly responsible for interacting with OCI registry

func NewOciClient

func NewOciClient(regName, repoName string, settings *settings.Settings) (*OciClient, error)

NewOciClient will new an OciClient. regName is the registry. e.g. ghcr.io or docker.io. repoName is the repo name on registry.

func (*OciClient) ContainsTag added in v0.3.4

func (ociClient *OciClient) ContainsTag(tag string) (bool, *reporter.KpmEvent)

ContainsTag will check if the tag exists in the repo.

func (*OciClient) FetchManifestIntoJsonStr added in v0.3.7

func (ociClient *OciClient) FetchManifestIntoJsonStr(opts opt.OciFetchOptions) (string, error)

FetchManifestByRef will fetch the manifest and return it into json string.

func (*OciClient) GetReference added in v0.3.7

func (ociClient *OciClient) GetReference() string

func (*OciClient) Pull

func (ociClient *OciClient) Pull(localPath, tag string) error

Pull will pull the oci artifacts from oci registry to local path.

func (*OciClient) Push

func (ociClient *OciClient) Push(localPath, tag string) *reporter.KpmEvent

Push will push the oci artifacts to oci registry from local path

func (*OciClient) PushWithOciManifest added in v0.3.7

func (ociClient *OciClient) PushWithOciManifest(localPath, tag string, opts *opt.OciManifestOptions) *reporter.KpmEvent

PushWithManifest will push the oci artifacts to oci registry from local path

func (*OciClient) SetLogWriter added in v0.3.7

func (ociClient *OciClient) SetLogWriter(writer io.Writer)

func (*OciClient) TheLatestTag

func (ociClient *OciClient) TheLatestTag() (string, error)

TheLatestTag will return the latest tag of the kcl packages.

Jump to

Keyboard shortcuts

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