Skip to content

Commit 1156e5e

Browse files
author
liukai2012
authored
Merge pull request #1161 from asiocity/PDR-13603
[PDR-13603][bug] 修复 s3 接口无法对接其他平台问题
2 parents b131cbb + 243d4b1 commit 1156e5e

File tree

1 file changed

+16
-9
lines changed

1 file changed

+16
-9
lines changed

reader/cloudtrail/cloudtrail.go

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -248,12 +248,12 @@ func newSyncManager(meta *reader.Meta, opts *syncOptions) (*syncManager, error)
248248

249249
func makeSyncSource(bucket, prefix string) string {
250250
if prefix == "" {
251-
return fmt.Sprintf("s3://%s", bucket)
251+
return fmt.Sprintf("%s", bucket)
252252
}
253253
if strings.HasPrefix(prefix, "/") {
254-
return fmt.Sprintf("s3://%s%s", bucket, prefix)
254+
return fmt.Sprintf("%s%s", bucket, prefix)
255255
}
256-
return fmt.Sprintf("s3://%s/%s", bucket, prefix)
256+
return fmt.Sprintf("%s/%s", bucket, prefix)
257257
}
258258

259259
func (mgr *syncManager) startSync() {
@@ -319,9 +319,6 @@ func newSyncRunner(ctx *syncContext, quitChan chan struct{}) *syncRunner {
319319
}
320320

321321
func (s *syncRunner) Sync() error {
322-
if !validSource(s.source) {
323-
return fmt.Errorf("invalid sync source %q", s.source)
324-
}
325322
if !validTarget(s.target) {
326323
return fmt.Errorf("invalid sync target %q", s.target)
327324
}
@@ -457,10 +454,20 @@ func (r *s3Url) keys() []string {
457454

458455
func lookupBucket(bucketName string, auth aws.Auth, region string, endpoint string) (*s3.Bucket, error) {
459456
log.Infof("looking for bucket %q in region %q", bucketName, region)
460-
rg := aws.Regions[region]
461-
if endpoint != "" {
462-
rg.S3Endpoint = endpoint
457+
458+
rg, ok := aws.Regions[region]
459+
if !ok {
460+
rg = aws.Region{
461+
Name: region,
462+
S3Endpoint: endpoint,
463+
}
464+
} else {
465+
// replace default endpoint
466+
if endpoint != "" {
467+
rg.S3Endpoint = endpoint
468+
}
463469
}
470+
464471
s3 := s3.New(auth, rg)
465472
bucket := s3.Bucket(bucketName)
466473
_, err := bucket.List("", "", "", 0)

0 commit comments

Comments
 (0)