package gcrane

import "github.com/google/go-containerregistry/pkg/gcrane"

Package gcrane holds libraries used to implement the gcrane CLI.

Index

Functions

func Copy

func Copy(src, dst string) error

Copy copies a remote image or index from src to dst.

func CopyRepository

func CopyRepository(ctx context.Context, src, dst string, opts ...Option) error

CopyRepository copies everything from the src GCR repository to the dst GCR repository.

func GCRBackoff

func GCRBackoff() retry.Backoff

GCRBackoff returns a retry.Backoff that is suitable for use with gcr.io.

These numbers are based on GCR's posted quotas: https://cloud.google.com/container-registry/quotas - 30k requests per 10 minutes. - 500k requests per 24 hours.

On error, we will wait for: - 6 seconds (in case of very short term 429s from GCS), then - 1 minute (in case of temporary network issues), then - 10 minutes (to get around GCR 10 minute quotas), then fail.

TODO: In theory, we could keep retrying until the next day to get around the 500k limit.

Types

type Option

type Option func(*options)

Option is a functional option for gcrane operations.

func WithJobs

func WithJobs(jobs int) Option

WithJobs sets the number of concurrent jobs to run.

The default number of jobs is GOMAXPROCS.

Source Files

copy.go doc.go options.go

Version
v0.1.1
Published
Jun 11, 2020
Platform
js/wasm
Imports
15 packages
Last checked
2 minutes ago

Tools for package owners.