summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Propellor/PrivData.hs6
1 files changed, 5 insertions, 1 deletions
diff --git a/Propellor/PrivData.hs b/Propellor/PrivData.hs
index d97a7725..e768ae9e 100644
--- a/Propellor/PrivData.hs
+++ b/Propellor/PrivData.hs
@@ -33,7 +33,7 @@ getPrivData field = do
setPrivData :: HostName -> PrivDataField -> IO ()
setPrivData host field = do
putStrLn "Enter private data on stdin; ctrl-D when done:"
- value <- hGetContentsStrict stdin
+ value <- chomp <$> hGetContentsStrict stdin
makePrivDataDir
let f = privDataFile host
m <- fromMaybe M.empty . readish <$> gpgDecrypt f
@@ -41,6 +41,10 @@ setPrivData host field = do
gpgEncrypt f (show m')
putStrLn "Private data set."
void $ boolSystem "git" [Param "add", File f]
+ where
+ chomp s
+ | end s == "\n" = chomp (beginning s)
+ | otherwise = s
makePrivDataDir :: IO ()
makePrivDataDir = createDirectoryIfMissing False privDataDir