export CreateProcess fields from Utility.Process
update code to avoid cwd and env redefinition warnings
This commit is contained in:
parent
6eb5e6c135
commit
a44fd2c019
31 changed files with 458 additions and 480 deletions
|
@ -28,7 +28,6 @@ import Annex.Exception
|
|||
import Creds
|
||||
|
||||
import Control.Concurrent.STM
|
||||
import System.Process (std_in, std_out, std_err)
|
||||
import System.Log.Logger (debugM)
|
||||
import qualified Data.Map as M
|
||||
import qualified Data.ByteString.Lazy as L
|
||||
|
|
|
@ -55,7 +55,6 @@ import Creds
|
|||
|
||||
import Control.Concurrent
|
||||
import Control.Concurrent.MSampleVar
|
||||
import System.Process (std_in, std_err)
|
||||
import qualified Data.Map as M
|
||||
import Control.Exception.Extensible
|
||||
|
||||
|
@ -467,12 +466,12 @@ fsckOnRemote r params
|
|||
| otherwise = return $ do
|
||||
program <- readProgramFile
|
||||
r' <- Git.Config.read r
|
||||
env <- getEnvironment
|
||||
let env' = addEntries
|
||||
environ <- getEnvironment
|
||||
let environ' = addEntries
|
||||
[ ("GIT_WORK_TREE", Git.repoPath r')
|
||||
, ("GIT_DIR", Git.localGitDir r')
|
||||
] env
|
||||
batchCommandEnv program (Param "fsck" : params) $ Just env'
|
||||
] environ
|
||||
batchCommandEnv program (Param "fsck" : params) $ Just environ'
|
||||
|
||||
{- The passed repair action is run in the Annex monad of the remote. -}
|
||||
repairRemote :: Git.Repo -> Annex Bool -> Annex (IO Bool)
|
||||
|
|
|
@ -27,8 +27,6 @@ import Annex.Content
|
|||
import Annex.UUID
|
||||
import Utility.Env
|
||||
|
||||
import System.Process
|
||||
|
||||
type Vault = String
|
||||
type Archive = FilePath
|
||||
|
||||
|
|
|
@ -79,15 +79,15 @@ hookEnv :: Action -> Key -> Maybe FilePath -> IO (Maybe [(String, String)])
|
|||
hookEnv action k f = Just <$> mergeenv (fileenv f ++ keyenv)
|
||||
where
|
||||
mergeenv l = addEntries l <$> getEnvironment
|
||||
env s v = ("ANNEX_" ++ s, v)
|
||||
envvar s v = ("ANNEX_" ++ s, v)
|
||||
keyenv = catMaybes
|
||||
[ Just $ env "KEY" (key2file k)
|
||||
, Just $ env "ACTION" action
|
||||
, env "HASH_1" <$> headMaybe hashbits
|
||||
, env "HASH_2" <$> headMaybe (drop 1 hashbits)
|
||||
[ Just $ envvar "KEY" (key2file k)
|
||||
, Just $ envvar "ACTION" action
|
||||
, envvar "HASH_1" <$> headMaybe hashbits
|
||||
, envvar "HASH_2" <$> headMaybe (drop 1 hashbits)
|
||||
]
|
||||
fileenv Nothing = []
|
||||
fileenv (Just file) = [env "FILE" file]
|
||||
fileenv (Just file) = [envvar "FILE" file]
|
||||
hashbits = map takeDirectory $ splitPath $ hashDirMixed k
|
||||
|
||||
lookupHook :: HookName -> Action -> Annex (Maybe String)
|
||||
|
@ -155,5 +155,5 @@ checkPresent r h k = do
|
|||
findkey s = key2file k `elem` lines s
|
||||
check Nothing = error $ action ++ " hook misconfigured"
|
||||
check (Just hook) = do
|
||||
env <- hookEnv action k Nothing
|
||||
findkey <$> readProcessEnv "sh" ["-c", hook] env
|
||||
environ <- hookEnv action k Nothing
|
||||
findkey <$> readProcessEnv "sh" ["-c", hook] environ
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue