From 9a49e371e3f437c28fb3c2fb91fb0959df6c3e10 Mon Sep 17 00:00:00 2001 From: Ingo Oppermann Date: Sat, 20 Aug 2022 10:51:17 +0300 Subject: [PATCH] Fix check for existing bucket --- io/fs/s3.go | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/io/fs/s3.go b/io/fs/s3.go index 4cce6380..95d6c839 100644 --- a/io/fs/s3.go +++ b/io/fs/s3.go @@ -76,18 +76,20 @@ func NewS3Filesystem(config S3Config) (Filesystem, error) { ctx, cancel := context.WithDeadline(context.Background(), time.Now().Add(30*time.Second)) defer cancel() - err = client.MakeBucket(ctx, fs.bucket, minio.MakeBucketOptions{Region: fs.region}) - if err != nil { - exists, errBucketExists := client.BucketExists(ctx, fs.bucket) - if errBucketExists != nil { - return nil, err - } + exists, errBucketExists := client.BucketExists(ctx, fs.bucket) + if errBucketExists != nil { + return nil, err + } - if exists { - fs.logger.Debug().Log("Bucket already exists") - } + if exists { + fs.logger.Debug().Log("Bucket already exists") } else { - fs.logger.Debug().Log("Bucket created") + err = client.MakeBucket(ctx, fs.bucket, minio.MakeBucketOptions{Region: fs.region}) + if err != nil { + return nil, err + } else { + fs.logger.Debug().Log("Bucket created") + } } fs.client = client