diff options
Diffstat (limited to 'Types')
-rw-r--r-- | Types/Remote.hs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/Types/Remote.hs b/Types/Remote.hs index dd4c7d2e5..bd75840b3 100644 --- a/Types/Remote.hs +++ b/Types/Remote.hs @@ -14,6 +14,7 @@ module Types.Remote , RemoteConfig , RemoteTypeA(..) , RemoteA(..) + , SetupStage(..) , Availability(..) , Verification(..) , unVerified @@ -38,8 +39,12 @@ import Utility.SafeCommand import Utility.Url type RemoteConfigKey = String + type RemoteConfig = M.Map RemoteConfigKey String +data SetupStage = Init | Enable + deriving (Eq) + {- There are different types of remotes. -} data RemoteTypeA a = RemoteType { -- human visible type name @@ -49,8 +54,8 @@ data RemoteTypeA a = RemoteType { enumerate :: Bool -> a [Git.Repo], -- generates a remote of this type generate :: Git.Repo -> UUID -> RemoteConfig -> RemoteGitConfig -> a (Maybe (RemoteA a)), - -- initializes or changes a remote - setup :: Maybe UUID -> Maybe CredPair -> RemoteConfig -> RemoteGitConfig -> a (RemoteConfig, UUID) + -- initializes or enables a remote + setup :: SetupStage -> Maybe UUID -> Maybe CredPair -> RemoteConfig -> RemoteGitConfig -> a (RemoteConfig, UUID) } instance Eq (RemoteTypeA a) where |