summaryrefslogtreecommitdiff
path: root/Remote/Bup.hs
diff options
context:
space:
mode:
authorGravatar Fraser Tweedale <frase@frase.id.au>2014-05-16 21:34:43 +1000
committerGravatar Joey Hess <joey@kitenet.net>2014-05-16 15:46:43 -0400
commit905eaa8cf73a52d92edcb62c17abb2ca9bed863e (patch)
tree17f00f9ae395502c992dcc4d989328f460057410 /Remote/Bup.hs
parenteefa96844ef813b5ef985ff2db361988047546db (diff)
execute remote.<name>.annex-shell on remote, if set
It is useful to be able to specify an alternative git-annex-shell program to execute on the remote, e.g., to run a version not on the PATH. Use remote.<name>.annex-shell if specified, instead of the default "git-annex-shell" i.e., first so-named executable on the PATH.
Diffstat (limited to 'Remote/Bup.hs')
-rw-r--r--Remote/Bup.hs5
1 files changed, 4 insertions, 1 deletions
diff --git a/Remote/Bup.hs b/Remote/Bup.hs
index 4e79eca42..afb1e78dd 100644
--- a/Remote/Bup.hs
+++ b/Remote/Bup.hs
@@ -13,6 +13,7 @@ import System.Process
import Data.ByteString.Lazy.UTF8 (fromString)
import Common.Annex
+import Types.GitConfig
import Types.Remote
import Types.Key
import Types.Creds
@@ -223,7 +224,9 @@ storeBupUUID u buprepo = do
onBupRemote :: Git.Repo -> (FilePath -> [CommandParam] -> IO a) -> FilePath -> [CommandParam] -> Annex a
onBupRemote r a command params = do
- sshparams <- Ssh.toRepo r [Param $
+ g <- fromRepo id
+ let c = extractRemoteGitConfig g (Git.repoDescribe r)
+ sshparams <- Ssh.toRepo r c [Param $
"cd " ++ dir ++ " && " ++ unwords (command : toCommand params)]
liftIO $ a "ssh" sshparams
where