ported almost all remotes, until my brain melted
external is not started yet, and S3 is part way through and not compiling yet
This commit is contained in:
parent
c498269a88
commit
c4ea3ca40a
13 changed files with 265 additions and 150 deletions
|
@ -18,6 +18,7 @@ import Types.Creds
|
|||
import qualified Git
|
||||
import Config
|
||||
import Config.Cost
|
||||
import Annex.SpecialRemote.Config
|
||||
import Remote.Helper.Special
|
||||
import Remote.Helper.ExportImport
|
||||
import Annex.Ssh
|
||||
|
@ -31,16 +32,21 @@ data DdarRepo = DdarRepo
|
|||
}
|
||||
|
||||
remote :: RemoteType
|
||||
remote = RemoteType
|
||||
remote = specialRemoteType $ RemoteType
|
||||
{ typename = "ddar"
|
||||
, enumerate = const (findSpecialRemotes "ddarrepo")
|
||||
, generate = gen
|
||||
, configParser = mkRemoteConfigParser
|
||||
[optionalStringParser ddarrepoField]
|
||||
, setup = ddarSetup
|
||||
, exportSupported = exportUnsupported
|
||||
, importSupported = importUnsupported
|
||||
}
|
||||
|
||||
gen :: Git.Repo -> UUID -> RemoteConfig -> RemoteGitConfig -> RemoteStateHandle -> Annex (Maybe Remote)
|
||||
ddarrepoField :: RemoteConfigField
|
||||
ddarrepoField = Accepted "ddarrepo"
|
||||
|
||||
gen :: Git.Repo -> UUID -> ParsedRemoteConfig -> RemoteGitConfig -> RemoteStateHandle -> Annex (Maybe Remote)
|
||||
gen r u c gc rs = do
|
||||
cst <- remoteCost gc $
|
||||
if ddarLocal ddarrepo
|
||||
|
@ -100,7 +106,7 @@ ddarSetup _ mu _ c gc = do
|
|||
|
||||
-- verify configuration is sane
|
||||
let ddarrepo = maybe (giveup "Specify ddarrepo=") fromProposedAccepted $
|
||||
M.lookup (Accepted "ddarrepo") c
|
||||
M.lookup ddarrepoField c
|
||||
(c', _encsetup) <- encryptionSetup c gc
|
||||
|
||||
-- The ddarrepo is stored in git config, as well as this repo's
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue