From c32e51a706258a8be90c125475c6741d9b4936ad Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 27 Apr 2015 18:00:58 -0400 Subject: S3: Fix incompatability with bucket names used by hS3; the aws library cannot handle upper-case bucket names. git-annex now converts them to lower case automatically. For example, it failed to get files from a bucket named S3. Also fixes `git annex initremote UPPERCASE type=S3`, which failed with the new aws library, with a signing error message. --- Remote/S3.hs | 4 ++-- debian/changelog | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Remote/S3.hs b/Remote/S3.hs index d290f9596..d8914d822 100644 --- a/Remote/S3.hs +++ b/Remote/S3.hs @@ -129,7 +129,7 @@ s3Setup' new u mcreds c = if configIA c then archiveorg else defaulthost c' <- setRemoteCredPair noEncryptionUsed c (AWS.creds u) mcreds -- Ensure user enters a valid bucket name, since -- this determines the name of the archive.org item. - let validbucket = replace " " "-" $ map toLower $ + let validbucket = replace " " "-" $ fromMaybe (error "specify bucket=") $ getBucketName c' let archiveconfig = @@ -447,7 +447,7 @@ extractS3Info c = do } getBucketName :: RemoteConfig -> Maybe BucketName -getBucketName = M.lookup "bucket" +getBucketName = map toLower <$$> M.lookup "bucket" getStorageClass :: RemoteConfig -> S3.StorageClass getStorageClass c = case M.lookup "storageclass" c of diff --git a/debian/changelog b/debian/changelog index 24acb8144..ffca9cda3 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,6 +8,9 @@ git-annex (5.20150421) UNRELEASED; urgency=medium * S3: git annex enableremote will not create a bucket name, which failed since the bucket already exists. * Fix bogus failure of fsck --fast. + * S3: Fix incompatability with bucket names used by hS3; the aws library + cannot handle upper-case bucket names. git-annex now converts them to + lower case automatically. -- Joey Hess Tue, 21 Apr 2015 15:54:10 -0400 -- cgit v1.2.3