From 6a759d936ac064422e43d012eb793f0e66dd807e Mon Sep 17 00:00:00 2001 From: Nick Craig-Wood Date: Fri, 15 Apr 2022 17:35:50 +0100 Subject: [PATCH] storj: fix bucket creation on Move picked up by integration tests --- backend/storj/fs.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/backend/storj/fs.go b/backend/storj/fs.go index 97c126620..da37748b5 100644 --- a/backend/storj/fs.go +++ b/backend/storj/fs.go @@ -705,7 +705,16 @@ func (f *Fs) Move(ctx context.Context, src fs.Object, remote string) (fs.Object, // Do the move err := f.project.MoveObject(ctx, srcBucket, srcKey, dstBucket, dstKey, &options) if err != nil { - return nil, fmt.Errorf("rename object failed: %w", err) + // Make sure destination bucket exists + _, err := f.project.EnsureBucket(ctx, dstBucket) + if err != nil { + return nil, fmt.Errorf("rename object failed to create destination bucket: %w", err) + } + // And try again + err = f.project.MoveObject(ctx, srcBucket, srcKey, dstBucket, dstKey, &options) + if err != nil { + return nil, fmt.Errorf("rename object failed: %w", err) + } } // Read the new object