set annex-config-uuid when RemoteConfig contains a sameas-uuid
Initremote sets that, so after both initremote and enableremote, the git config will be set. Any remote that does not use Annex.SpecialRemote won't set annex-config-uuid. But that's only Remote.Git, which doesn't use RemoteConfig anyway.
This commit is contained in:
parent
46071a2435
commit
92ff30df70
5 changed files with 45 additions and 24 deletions
37
Annex/SpecialRemote/Config.hs
Normal file
37
Annex/SpecialRemote/Config.hs
Normal file
|
@ -0,0 +1,37 @@
|
|||
{- git-annex special remote configuration
|
||||
-
|
||||
- Copyright 2019 Joey Hess <id@joeyh.name>
|
||||
-
|
||||
- Licensed under the GNU AGPL version 3 or higher.
|
||||
-}
|
||||
|
||||
module Annex.SpecialRemote.Config where
|
||||
|
||||
import Common
|
||||
import Types.Remote (RemoteConfigKey, RemoteConfig)
|
||||
|
||||
import qualified Data.Map as M
|
||||
|
||||
{- The name of a configured remote is stored in its config using this key. -}
|
||||
nameKey :: RemoteConfigKey
|
||||
nameKey = "name"
|
||||
|
||||
{- The name of a sameas remote is stored using this key instead.
|
||||
- This prevents old versions of git-annex getting confused. -}
|
||||
sameasNameKey :: RemoteConfigKey
|
||||
sameasNameKey = "sameas-name"
|
||||
|
||||
lookupName :: RemoteConfig -> Maybe String
|
||||
lookupName c = M.lookup nameKey c <|> M.lookup sameasNameKey c
|
||||
|
||||
{- The uuid that a sameas remote is the same as is stored in this key. -}
|
||||
sameasUUIDKey :: RemoteConfigKey
|
||||
sameasUUIDKey = "sameas-uuid"
|
||||
|
||||
{- The type of a remote is stored in its config using this key. -}
|
||||
typeKey :: RemoteConfigKey
|
||||
typeKey = "type"
|
||||
|
||||
autoEnableKey :: RemoteConfigKey
|
||||
autoEnableKey = "autoenable"
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue