Documentation ¶
Overview ¶
Package s3 implements common object storage abstractions against s3-compatible APIs.
Index ¶
- Constants
- func NewTestBucket(t testing.TB, location string) (objstore.Bucket, func(), error)
- type Bucket
- func (b *Bucket) Delete(ctx context.Context, name string) error
- func (b *Bucket) Exists(ctx context.Context, name string) (bool, error)
- func (b *Bucket) Get(ctx context.Context, name string) (io.ReadCloser, error)
- func (b *Bucket) GetRange(ctx context.Context, name string, off, length int64) (io.ReadCloser, error)
- func (b *Bucket) IsObjNotFoundErr(err error) bool
- func (b *Bucket) Iter(ctx context.Context, dir string, f func(string) error) error
- func (b *Bucket) Upload(ctx context.Context, name string, r io.Reader) error
- type Config
Constants ¶
const DirDelim = "/"
DirDelim is the delimiter used to model a directory structure in an object store bucket.
Variables ¶
This section is empty.
Functions ¶
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) 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) IsObjNotFoundErr ¶
IsObjNotFoundErr returns true if error means that object is not found. Relevant to Get operations.
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) ValidateForTests ¶
ValidateForTests checks to see if mandatory s3 config options for tests are set.