From 45e704014265276599c32221cad02f3a9fc7eb27 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 24 Feb 2014 15:14:44 -0400 Subject: [PATCH] webapp: Fix creation of box.com, S3, and Glacier repositories, broken in 5.20140221. --- Remote/Glacier.hs | 10 +++++----- Remote/S3.hs | 10 +++++----- Remote/WebDAV.hs | 4 ++-- debian/changelog | 2 ++ 4 files changed, 14 insertions(+), 12 deletions(-) diff --git a/Remote/Glacier.hs b/Remote/Glacier.hs index 84557851b3..33719926c7 100644 --- a/Remote/Glacier.hs +++ b/Remote/Glacier.hs @@ -73,16 +73,16 @@ gen r u c gc = new <$> remoteCost gc veryExpensiveRemoteCost glacierSetup :: Maybe UUID -> Maybe CredPair -> RemoteConfig -> Annex (RemoteConfig, UUID) glacierSetup mu mcreds c = do u <- maybe (liftIO genUUID) return mu - glacierSetup' (isJust mu) u mcreds c -glacierSetup' :: Bool -> UUID -> Maybe CredPair -> RemoteConfig -> Annex (RemoteConfig, UUID) -glacierSetup' enabling u mcreds c = do + c' <- setRemoteCredPair c (AWS.creds u) mcreds + glacierSetup' (isJust mu) u c' +glacierSetup' :: Bool -> UUID -> RemoteConfig -> Annex (RemoteConfig, UUID) +glacierSetup' enabling u c = do c' <- encryptionSetup c let fullconfig = c' `M.union` defaults unless enabling $ genVault fullconfig u gitConfigSpecialRemote u fullconfig "glacier" "true" - c'' <- setRemoteCredPair fullconfig (AWS.creds u) mcreds - return (c'', u) + return (c', u) where remotename = fromJust (M.lookup "name" c) defvault = remotename ++ "-" ++ fromUUID u diff --git a/Remote/S3.hs b/Remote/S3.hs index b217892e79..c1a99abcdb 100644 --- a/Remote/S3.hs +++ b/Remote/S3.hs @@ -76,9 +76,10 @@ gen r u c gc = new <$> remoteCost gc expensiveRemoteCost s3Setup :: Maybe UUID -> Maybe CredPair -> RemoteConfig -> Annex (RemoteConfig, UUID) s3Setup mu mcreds c = do u <- maybe (liftIO genUUID) return mu - s3Setup' u mcreds c -s3Setup' :: UUID -> Maybe CredPair -> RemoteConfig -> Annex (RemoteConfig, UUID) -s3Setup' u mcreds c = if isIA c then archiveorg else defaulthost + c' <- setRemoteCredPair c (AWS.creds u) mcreds + s3Setup' u c' +s3Setup' :: UUID -> RemoteConfig -> Annex (RemoteConfig, UUID) +s3Setup' u c = if isIA c then archiveorg else defaulthost where remotename = fromJust (M.lookup "name" c) defbucket = remotename ++ "-" ++ fromUUID u @@ -92,8 +93,7 @@ s3Setup' u mcreds c = if isIA c then archiveorg else defaulthost use fullconfig = do gitConfigSpecialRemote u fullconfig "s3" "true" - c' <- setRemoteCredPair fullconfig (AWS.creds u) mcreds - return (c', u) + return (fullconfig, u) defaulthost = do c' <- encryptionSetup c diff --git a/Remote/WebDAV.hs b/Remote/WebDAV.hs index 6ce83470b3..4714f10ddd 100644 --- a/Remote/WebDAV.hs +++ b/Remote/WebDAV.hs @@ -82,10 +82,10 @@ webdavSetup mu mcreds c = do let url = fromMaybe (error "Specify url=") $ M.lookup "url" c c' <- encryptionSetup c - creds <- getCreds c' u + creds <- maybe (getCreds c' u) (return . Just) mcreds testDav url creds gitConfigSpecialRemote u c' "webdav" "true" - c'' <- setRemoteCredPair c' (davCreds u) mcreds + c'' <- setRemoteCredPair c' (davCreds u) creds return (c'', u) store :: Remote -> Key -> AssociatedFile -> MeterUpdate -> Annex Bool diff --git a/debian/changelog b/debian/changelog index 8c157aeb27..681747ff95 100644 --- a/debian/changelog +++ b/debian/changelog @@ -15,6 +15,8 @@ git-annex (5.20140222) UNRELEASED; urgency=medium * metadata: Field names limited to alphanumerics and a few whitelisted punctuation characters to avoid issues with views, etc. * metadata: Support --json + * webapp: Fix creation of box.com and Amazon S3 and Glacier + repositories, broken in 5.20140221. -- Joey Hess Fri, 21 Feb 2014 13:03:04 -0400