aboutsummaryrefslogtreecommitdiff
path: root/weed/storage/backend/s3_backend/s3_backend.go
diff options
context:
space:
mode:
authorKonstantin Lebedev <9497591+kmlebedev@users.noreply.github.com>2022-05-03 00:13:57 +0500
committerKonstantin Lebedev <9497591+kmlebedev@users.noreply.github.com>2022-05-03 00:13:57 +0500
commitd8925b4e832b9ed12deae0b9b94cd5f050f2f258 (patch)
treea197c8619048285e87c89932666ec0c7b2434f40 /weed/storage/backend/s3_backend/s3_backend.go
parent7640e650e5e647e6d6f3c8043c1e0a7442f154c7 (diff)
parent998c1973eae6cbf5f91a80d3d6a864db91a3d38f (diff)
downloadseaweedfs-d8925b4e832b9ed12deae0b9b94cd5f050f2f258.tar.xz
seaweedfs-d8925b4e832b9ed12deae0b9b94cd5f050f2f258.zip
Merge branch 'new_master' into ydb
# Conflicts: # go.mod # go.sum
Diffstat (limited to 'weed/storage/backend/s3_backend/s3_backend.go')
-rw-r--r--weed/storage/backend/s3_backend/s3_backend.go8
1 files changed, 7 insertions, 1 deletions
diff --git a/weed/storage/backend/s3_backend/s3_backend.go b/weed/storage/backend/s3_backend/s3_backend.go
index 58867b421..b516062a8 100644
--- a/weed/storage/backend/s3_backend/s3_backend.go
+++ b/weed/storage/backend/s3_backend/s3_backend.go
@@ -37,6 +37,7 @@ type S3BackendStorage struct {
region string
bucket string
endpoint string
+ storageClass string
conn s3iface.S3API
}
@@ -48,6 +49,10 @@ func newS3BackendStorage(configuration backend.StringProperties, configPrefix st
s.region = configuration.GetString(configPrefix + "region")
s.bucket = configuration.GetString(configPrefix + "bucket")
s.endpoint = configuration.GetString(configPrefix + "endpoint")
+ s.storageClass = configuration.GetString(configPrefix + "storageClass")
+ if s.storageClass == "" {
+ s.storageClass = "STANDARD_IA"
+ }
s.conn, err = createSession(s.aws_access_key_id, s.aws_secret_access_key, s.region, s.endpoint)
@@ -62,6 +67,7 @@ func (s *S3BackendStorage) ToProperties() map[string]string {
m["region"] = s.region
m["bucket"] = s.bucket
m["endpoint"] = s.endpoint
+ m["storage_class"] = s.storageClass
return m
}
@@ -85,7 +91,7 @@ func (s *S3BackendStorage) CopyFile(f *os.File, fn func(progressed int64, percen
glog.V(1).Infof("copying dat file of %s to remote s3.%s as %s", f.Name(), s.id, key)
- size, err = uploadToS3(s.conn, f.Name(), s.bucket, key, fn)
+ size, err = uploadToS3(s.conn, f.Name(), s.bucket, key, s.storageClass, fn)
return
}