Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewExponentialBackOffConfig ¶ added in v1.1.0
func NewExponentialBackOffConfig() *backoff.ExponentialBackOff
NewExponentialBackOffConfig creates an exponential back-off config with longer wait times than the default.
Types ¶
type BackoffReadCloser ¶
type BackoffReadCloser struct {
// contains filtered or unexported fields
}
BackoffReadCloser retries with exponential backoff in the case of failures
func (*BackoffReadCloser) Close ¶
func (b *BackoffReadCloser) Close() error
Close closes the ReaderCloser contained in b.
type BackoffWriteCloser ¶
type BackoffWriteCloser struct {
// contains filtered or unexported fields
}
BackoffWriteCloser retries with exponential backoff in the case of failures
func (*BackoffWriteCloser) Close ¶
func (b *BackoffWriteCloser) Close() error
Close closes the WriteCloser contained in b.
type Client ¶
type Client interface { // Writer returns a writer which writes to an object. // It should error if the object already exists or we don't have sufficient // permissions to write it. Writer(name string) (io.WriteCloser, error) // Reader returns a reader which reads from an object. // If `size == 0`, the reader should read from the offset till the end of the object. // It should error if the object doesn't exist or we don't have sufficient // permission to read it. Reader(name string, offset uint64, size uint64) (io.ReadCloser, error) // Delete deletes an object. // It should error if the object doesn't exist or we don't have sufficient // permission to delete it. Delete(name string) error // Walk calls `fn` with the names of objects which can be found under `prefix`. Walk(prefix string, fn func(name string) error) error // Exsits checks if a given object already exists Exists(name string) bool // IsRetryable determines if an operation should be retried given an error IsRetryable(err error) bool // IsNotExist returns true if err is a non existence error IsNotExist(err error) bool // IsIgnorable returns true if the error can be ignored IsIgnorable(err error) bool }
Client is an interface to object storage.
func NewAmazonClient ¶
func NewAmazonClient(bucket string, id string, secret string, token string, region string) (Client, error)
NewAmazonClient creates an amazon client with the following credentials:
bucket - S3 bucket name id - AWS access key id secret - AWS secret access key token - AWS access token region - AWS region
func NewGoogleClient ¶
NewGoogleClient creates a google client with the given bucket name.
func NewMicrosoftClient ¶ added in v1.2.3
NewMicrosoftClient creates a microsoft client:
container - Azure Blob Container name accountName - Azure Storage Account name accountKey - Azure Storage Account key
type RetryError ¶
RetryError is used to log retry attempts.
Click to show internal directories.
Click to hide internal directories.