summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2014-02-20 15:56:26 -0400
committerGravatar Joey Hess <joey@kitenet.net>2014-02-20 15:56:26 -0400
commit805340f3304fbc2962ce334f4d887c4cbf28395c (patch)
tree00b874e7156beb86ee1d788ec0968ba7e0111380
parentebd1c5fa37ef2dcd9187e3cd20ac9be4b6c56531 (diff)
glacier: Do not try to run glacier value create when an existing glacier remote is enabled.
-rw-r--r--Remote/Glacier.hs10
-rw-r--r--debian/changelog2
2 files changed, 7 insertions, 5 deletions
diff --git a/Remote/Glacier.hs b/Remote/Glacier.hs
index 77b16cd65..84557851b 100644
--- a/Remote/Glacier.hs
+++ b/Remote/Glacier.hs
@@ -73,12 +73,13 @@ 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' u mcreds c
-glacierSetup' :: UUID -> Maybe CredPair -> RemoteConfig -> Annex (RemoteConfig, UUID)
-glacierSetup' u mcreds c = do
+ glacierSetup' (isJust mu) u mcreds c
+glacierSetup' :: Bool -> UUID -> Maybe CredPair -> RemoteConfig -> Annex (RemoteConfig, UUID)
+glacierSetup' enabling u mcreds c = do
c' <- encryptionSetup c
let fullconfig = c' `M.union` defaults
- genVault fullconfig u
+ unless enabling $
+ genVault fullconfig u
gitConfigSpecialRemote u fullconfig "glacier" "true"
c'' <- setRemoteCredPair fullconfig (AWS.creds u) mcreds
return (c'', u)
@@ -245,7 +246,6 @@ archive r k = fileprefix ++ key2file k
where
fileprefix = M.findWithDefault "" "fileprefix" $ config r
--- glacier vault create will succeed even if the vault already exists.
genVault :: RemoteConfig -> UUID -> Annex ()
genVault c u = unlessM (runGlacier c u params) $
error "Failed creating glacier vault."
diff --git a/debian/changelog b/debian/changelog
index 3d15e9f7a..04414f753 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -18,6 +18,8 @@ git-annex (5.20140211) UNRELEASED; urgency=medium
and the annex.numcopies git config setting.
* trust, untrust, semitrust, dead: Warn when the trust level is
overridden in .git/config.
+ * glacier: Do not try to run glacier value create when an existing glacier
+ remote is enabled.
* Windows webapp: Can set up box.com, Amazon S3, and rsync.net remotes
* Windows webapp: Can create repos on removable drives.
* Windows: Ensure HOME is set, as needed by bundled cygwin utilities.