s3

package
v0.1.0-rc.0 Latest Latest
Warning

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

Go to latest
Published: May 18, 2018 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

Package s3 implements common object storage abstractions against s3-compatible APIs.

Index

Constants

View Source
const DirDelim = "/"

DirDelim is the delimiter used to model a directory structure in an object store bucket.

Variables

This section is empty.

Functions

This section is empty.

Types

type Bucket

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

Bucket implements the store.Bucket interface against s3-compatible APIs.

func NewBucket

func NewBucket(conf *Config, reg prometheus.Registerer, component string) (*Bucket, error)

NewBucket returns a new Bucket using the provided s3 config values.

func (*Bucket) Delete

func (b *Bucket) Delete(ctx context.Context, name string) error

Delete removes the object with the given name.

func (*Bucket) Exists

func (b *Bucket) Exists(ctx context.Context, name string) (bool, error)

Exists checks if the given object exists.

func (*Bucket) Get

func (b *Bucket) Get(ctx context.Context, name string) (io.ReadCloser, error)

Get returns a reader for the given object name.

func (*Bucket) GetRange

func (b *Bucket) GetRange(ctx context.Context, name string, off, length int64) (io.ReadCloser, error)

GetRange returns a new range reader for the given object name and range.

func (*Bucket) Iter

func (b *Bucket) Iter(ctx context.Context, dir string, f func(string) error) error

Iter calls f for each entry in the given directory. The argument to f is the full object name including the prefix of the inspected directory.

func (*Bucket) Upload

func (b *Bucket) Upload(ctx context.Context, name string, r io.Reader) error

Upload the contents of the reader as an object into the bucket.

type Config

type Config struct {
	Bucket       string
	Endpoint     string
	AccessKey    string
	SecretKey    string
	Insecure     bool
	SignatureV2  bool
	SSEEnprytion bool
}

Config encapsulates the necessary config values to instantiate an s3 client.

func RegisterS3Params

func RegisterS3Params(cmd *kingpin.CmdClause) *Config

RegisterS3Params registers the s3 flags and returns an initialized Config struct.

func (*Config) Validate

func (conf *Config) Validate() error

Validate checks to see if any of the s3 config options are set.

Jump to

Keyboard shortcuts

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