Documentation ¶
Index ¶
- Constants
- type AWSsse
- type Conf
- type Credentials
- type S3
- func (s *S3) Copy(src, dst string) error
- func (s *S3) Delete(name string) error
- func (s *S3) FileStat(name string) (inf storage.FileInfo, err error)
- func (s *S3) List(prefix, suffix string) ([]storage.FileInfo, error)
- func (s *S3) Save(name string, data io.Reader, sizeb int) error
- func (s *S3) SourceReader(name string) (io.ReadCloser, error)
- type S3Provider
Constants ¶
View Source
const (
// GCSEndpointURL is the endpoint url for Google Clound Strage service
GCSEndpointURL = "storage.googleapis.com"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Conf ¶
type Conf struct { Provider S3Provider `bson:"provider,omitempty" json:"provider,omitempty" yaml:"provider,omitempty"` Region string `bson:"region" json:"region" yaml:"region"` EndpointURL string `bson:"endpointUrl,omitempty" json:"endpointUrl" yaml:"endpointUrl,omitempty"` Bucket string `bson:"bucket" json:"bucket" yaml:"bucket"` Prefix string `bson:"prefix,omitempty" json:"prefix,omitempty" yaml:"prefix,omitempty"` Credentials Credentials `bson:"credentials" json:"-" yaml:"credentials"` ServerSideEncryption *AWSsse `bson:"serverSideEncryption,omitempty" json:"serverSideEncryption,omitempty" yaml:"serverSideEncryption,omitempty"` UploadPartSize int `bson:"uploadPartSize,omitempty" json:"uploadPartSize,omitempty" yaml:"uploadPartSize,omitempty"` }
type Credentials ¶
type Credentials struct { AccessKeyID string `bson:"access-key-id" json:"access-key-id,omitempty" yaml:"access-key-id,omitempty"` SecretAccessKey string `bson:"secret-access-key" json:"secret-access-key,omitempty" yaml:"secret-access-key,omitempty"` Vault struct { Server string `bson:"server" json:"server,omitempty" yaml:"server"` Secret string `bson:"secret" json:"secret,omitempty" yaml:"secret"` Token string `bson:"token" json:"token,omitempty" yaml:"token"` } `bson:"vault" json:"vault" yaml:"vault,omitempty"` }
type S3 ¶
type S3 struct {
// contains filtered or unexported fields
}
func (*S3) Delete ¶
Delete deletes given file. It returns storage.ErrNotExist if a file isn't exists
func (*S3) SourceReader ¶
func (s *S3) SourceReader(name string) (io.ReadCloser, error)
SourceReader reads object with the given name from S3 and pipes its data to the returned io.ReadCloser.
It uses partReader to download the object by chunks (`downloadChuckSize`). In case of error, it would retry get the next bytes up to `downloadRetries` times. If it fails to do so or connection error happened, it recreates the session and tries again up to `downloadRetries` times.
type S3Provider ¶
type S3Provider string
const ( S3ProviderUndef S3Provider = "" S3ProviderAWS S3Provider = "aws" S3ProviderGCS S3Provider = "gcs" )
Click to show internal directories.
Click to hide internal directories.