aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchrislu <chris.lu@gmail.com>2022-02-27 03:41:35 -0800
committerchrislu <chris.lu@gmail.com>2022-02-27 03:41:35 -0800
commitf9d9eed0c9458db0ea3bdd707747e06570e3eabf (patch)
tree566e7086b24406de16c5c8663d602e63b6e9bf97
parentd602d68fd1cd50c0780c6b07cf3c782f7faf91ab (diff)
parent6c07af60147c3e27480a72ad258af020c0bebb7f (diff)
downloadseaweedfs-f9d9eed0c9458db0ea3bdd707747e06570e3eabf.tar.xz
seaweedfs-f9d9eed0c9458db0ea3bdd707747e06570e3eabf.zip
Merge branch 'master' of https://github.com/chrislusf/seaweedfs
-rw-r--r--weed/replication/sink/s3sink/s3_sink.go6
-rw-r--r--weed/replication/sink/s3sink/s3_write.go3
2 files changed, 8 insertions, 1 deletions
diff --git a/weed/replication/sink/s3sink/s3_sink.go b/weed/replication/sink/s3sink/s3_sink.go
index c3da1ee3f..a118324c2 100644
--- a/weed/replication/sink/s3sink/s3_sink.go
+++ b/weed/replication/sink/s3sink/s3_sink.go
@@ -26,6 +26,7 @@ type S3Sink struct {
bucket string
dir string
endpoint string
+ acl string
filerSource *source.FilerSource
isIncremental bool
}
@@ -51,6 +52,7 @@ func (s3sink *S3Sink) Initialize(configuration util.Configuration, prefix string
glog.V(0).Infof("sink.s3.bucket: %v", configuration.GetString(prefix+"bucket"))
glog.V(0).Infof("sink.s3.directory: %v", configuration.GetString(prefix+"directory"))
glog.V(0).Infof("sink.s3.endpoint: %v", configuration.GetString(prefix+"endpoint"))
+ glog.V(0).Infof("sink.s3.acl: %v", configuration.GetString(prefix+"acl"))
glog.V(0).Infof("sink.s3.is_incremental: %v", configuration.GetString(prefix+"is_incremental"))
s3sink.isIncremental = configuration.GetBool(prefix + "is_incremental")
return s3sink.initialize(
@@ -60,6 +62,7 @@ func (s3sink *S3Sink) Initialize(configuration util.Configuration, prefix string
configuration.GetString(prefix+"bucket"),
configuration.GetString(prefix+"directory"),
configuration.GetString(prefix+"endpoint"),
+ configuration.GetString(prefix+"acl"),
)
}
@@ -67,11 +70,12 @@ func (s3sink *S3Sink) SetSourceFiler(s *source.FilerSource) {
s3sink.filerSource = s
}
-func (s3sink *S3Sink) initialize(awsAccessKeyId, awsSecretAccessKey, region, bucket, dir, endpoint string) error {
+func (s3sink *S3Sink) initialize(awsAccessKeyId, awsSecretAccessKey, region, bucket, dir, endpoint, acl string) error {
s3sink.region = region
s3sink.bucket = bucket
s3sink.dir = dir
s3sink.endpoint = endpoint
+ s3sink.acl = acl
config := &aws.Config{
Region: aws.String(s3sink.region),
diff --git a/weed/replication/sink/s3sink/s3_write.go b/weed/replication/sink/s3sink/s3_write.go
index 3dde52616..7d8932fb0 100644
--- a/weed/replication/sink/s3sink/s3_write.go
+++ b/weed/replication/sink/s3sink/s3_write.go
@@ -39,6 +39,9 @@ func (s3sink *S3Sink) createMultipartUpload(key string, entry *filer_pb.Entry) (
Key: aws.String(key),
ContentType: aws.String(entry.Attributes.Mime),
}
+ if s3sink.acl != "" {
+ input.ACL = aws.String(s3sink.acl)
+ }
result, err := s3sink.conn.CreateMultipartUpload(input)