summaryrefslogtreecommitdiff
path: root/src/Propellor/Gpg.hs
diff options
context:
space:
mode:
authorJoey Hess2016-03-06 20:39:44 -0400
committerJoey Hess2016-03-06 20:50:52 -0400
commit979fc0e4c03bf6ccd88873f561040bfa1133111d (patch)
tree2fd505aef8cf863af079f8a31830a6cc721b304b /src/Propellor/Gpg.hs
parentd09a67ea25be77300a4eeb06b7c922b0c28c5d25 (diff)
Force ssh, scp, and git commands to be run in the foreground.
Before, they could run in the background if another process was running, and so their output wouldn't immediately be visible. With this change, the concurrent-output layer is not used for these interactive commands.
Diffstat (limited to 'src/Propellor/Gpg.hs')
-rw-r--r--src/Propellor/Gpg.hs10
1 files changed, 2 insertions, 8 deletions
diff --git a/src/Propellor/Gpg.hs b/src/Propellor/Gpg.hs
index d3550e88..a13734b4 100644
--- a/src/Propellor/Gpg.hs
+++ b/src/Propellor/Gpg.hs
@@ -6,8 +6,6 @@ import System.Directory
import Data.Maybe
import Data.List.Utils
import Control.Monad
-import System.Console.Concurrent
-import System.Console.Concurrent.Internal (ConcurrentProcessHandle(..))
import Control.Applicative
import Prelude
@@ -16,6 +14,7 @@ import Propellor.Message
import Propellor.Git.Config
import Utility.SafeCommand
import Utility.Process
+import Utility.Process.NonConcurrent
import Utility.Monad
import Utility.Misc
import Utility.Tmp
@@ -144,12 +143,7 @@ gitCommit msg ps = do
let ps' = Param "commit" : ps ++
maybe [] (\m -> [Param "-m", Param m]) msg
ps'' <- gpgSignParams ps'
- if isNothing msg
- then do
- (_, _, _, ConcurrentProcessHandle p) <- createProcessForeground $
- proc "git" (toCommand ps'')
- checkSuccessProcess p
- else boolSystem "git" ps''
+ boolSystemNonConcurrent "git" ps''
gpgDecrypt :: FilePath -> IO String
gpgDecrypt f = do