Documentation ¶
Index ¶
- Constants
- func SDKLogLevel(levels string, out io.Writer) aws.LogLevelType
- type AWSsse
- type ArenaStat
- type Config
- type Credentials
- type Download
- type DownloadStat
- type Retryer
- type S3
- func (s *S3) Copy(src, dst string) error
- func (s *S3) Delete(name string) error
- func (s *S3) FileStat(name string) (storage.FileInfo, error)
- func (s *S3) List(prefix, suffix string) ([]storage.FileInfo, error)
- func (s *S3) NewDownload(cc, bufSizeMb, spanSizeMb int) *Download
- func (s *S3) Save(name string, data io.Reader, sizeb int64) error
- func (s *S3) SourceReader(name string) (io.ReadCloser, error)
- func (*S3) Type() storage.Type
- type SDKDebugLogLevel
Constants ¶
View Source
const (
// GCSEndpointURL is the endpoint url for Google Clound Strage service
GCSEndpointURL = "storage.googleapis.com"
)
Variables ¶
This section is empty.
Functions ¶
func SDKLogLevel ¶ added in v1.7.0
func SDKLogLevel(levels string, out io.Writer) aws.LogLevelType
SDKLogLevel returns AWS SDK log level value from comma-separated SDKDebugLogLevel values string. If the string does not contain a valid value, returns aws.LogOff.
If the string is incorrect formatted, prints warnings to the io.Writer. Passing nil as the io.Writer will discard any warnings.
Types ¶
type AWSsse ¶ added in v1.3.2
type AWSsse struct { // Used to specify the SSE algorithm used when keys are managed by the server SseAlgorithm string `bson:"sseAlgorithm" json:"sseAlgorithm" yaml:"sseAlgorithm"` KmsKeyID string `bson:"kmsKeyID" json:"kmsKeyID" yaml:"kmsKeyID"` // Used to specify SSE-C style encryption. For Amazon S3 SseCustomerAlgorithm must be 'AES256' // see https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html SseCustomerAlgorithm string `bson:"sseCustomerAlgorithm" json:"sseCustomerAlgorithm" yaml:"sseCustomerAlgorithm"` // If SseCustomerAlgorithm is set, this must be a base64 encoded key compatible with the algorithm // specified in the SseCustomerAlgorithm field. SseCustomerKey string `bson:"sseCustomerKey" json:"sseCustomerKey" yaml:"sseCustomerKey"` }
type Config ¶
type Config struct { Provider string `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"` EndpointURLMap map[string]string `bson:"endpointUrlMap,omitempty" json:"endpointUrlMap,omitempty" yaml:"endpointUrlMap,omitempty"` ForcePathStyle *bool `bson:"forcePathStyle,omitempty" json:"forcePathStyle,omitempty" yaml:"forcePathStyle,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"` MaxUploadParts int `bson:"maxUploadParts,omitempty" json:"maxUploadParts,omitempty" yaml:"maxUploadParts,omitempty"` StorageClass string `bson:"storageClass,omitempty" json:"storageClass,omitempty" yaml:"storageClass,omitempty"` // InsecureSkipTLSVerify disables client verification of the server's // certificate chain and host name InsecureSkipTLSVerify bool `bson:"insecureSkipTLSVerify" json:"insecureSkipTLSVerify" yaml:"insecureSkipTLSVerify"` // DebugLogLevels enables AWS SDK debug logging (sub)levels. Available options: // LogDebug, Signing, HTTPBody, RequestRetries, RequestErrors, EventStreamBody // // Any sub levels will enable LogDebug level accordingly to AWS SDK Go module behavior // https://pkg.go.dev/github.com/aws/aws-sdk-go@v1.40.7/aws#LogLevelType DebugLogLevels string `bson:"debugLogLevels,omitempty" json:"debugLogLevels,omitempty" yaml:"debugLogLevels,omitempty"` // Retryer is configuration for client.DefaultRetryer // https://pkg.go.dev/github.com/aws/aws-sdk-go/aws/client#DefaultRetryer Retryer *Retryer `bson:"retryer,omitempty" json:"retryer,omitempty" yaml:"retryer,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"` SessionToken string `bson:"session-token" json:"session-token,omitempty" yaml:"session-token,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 Download ¶
type Download struct {
// contains filtered or unexported fields
}
Download is used to concurrently download objects from the storage.
func (*Download) SourceReader ¶
func (d *Download) SourceReader(name string) (io.ReadCloser, error)
func (*Download) Stat ¶
func (d *Download) Stat() DownloadStat
type DownloadStat ¶
type DownloadStat struct { Arenas []ArenaStat `bson:"a" json:"a"` Concurrency int `bson:"cc" json:"cc"` ArenaSize int `bson:"arSize" json:"arSize"` SpansNum int `bson:"spanNum" json:"spanNum"` SpanSize int `bson:"spanSize" json:"spanSize"` BufSize int `bson:"bufSize" json:"bufSize"` }
func (DownloadStat) String ¶
func (s DownloadStat) String() string
type Retryer ¶ added in v1.7.0
type Retryer struct { // Num max Retries is the number of max retries that will be performed. // https://pkg.go.dev/github.com/aws/aws-sdk-go/aws/client#DefaultRetryer.NumMaxRetries NumMaxRetries int `bson:"numMaxRetries" json:"numMaxRetries" yaml:"numMaxRetries"` // MinRetryDelay is the minimum retry delay after which retry will be performed. // https://pkg.go.dev/github.com/aws/aws-sdk-go/aws/client#DefaultRetryer.MinRetryDelay MinRetryDelay time.Duration `bson:"minRetryDelay" json:"minRetryDelay" yaml:"minRetryDelay"` // MaxRetryDelay is the maximum retry delay before which retry must be performed. // https://pkg.go.dev/github.com/aws/aws-sdk-go/aws/client#DefaultRetryer.MaxRetryDelay MaxRetryDelay time.Duration `bson:"maxRetryDelay" json:"maxRetryDelay" yaml:"maxRetryDelay"` }
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) NewDownload ¶
func (*S3) SourceReader ¶
func (s *S3) SourceReader(name string) (io.ReadCloser, error)
type SDKDebugLogLevel ¶ added in v1.7.0
type SDKDebugLogLevel string
const ( LogDebug SDKDebugLogLevel = "LogDebug" Signing SDKDebugLogLevel = "Signing" HTTPBody SDKDebugLogLevel = "HTTPBody" RequestRetries SDKDebugLogLevel = "RequestRetries" RequestErrors SDKDebugLogLevel = "RequestErrors" EventStreamBody SDKDebugLogLevel = "EventStreamBody" )
func (SDKDebugLogLevel) SDKLogLevel ¶ added in v1.7.0
func (l SDKDebugLogLevel) SDKLogLevel() aws.LogLevelType
SDKLogLevel returns the appropriate AWS SDK debug logging level. If the level is not recognized, returns aws.LogLevelType(0)
Click to show internal directories.
Click to hide internal directories.