propellor 4.7.3 → 4.7.4
raw patch · 8 files changed
+47/−6 lines, 8 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- CHANGELOG +10/−0
- debian/changelog +10/−0
- propellor.cabal +1/−1
- src/Propellor/CmdLine.hs +1/−0
- src/Propellor/Gpg.hs +21/−0
- src/Propellor/Message.hs +2/−2
- src/Propellor/Property/Rsync.hs +1/−1
- src/Propellor/Property/SiteSpecific/JoeySites.hs +1/−2
CHANGELOG view
@@ -1,3 +1,13 @@+propellor (4.7.4) unstable; urgency=medium++ * Set GPG_TTY when run at a terminal, so that gpg can do password+ prompting despite being connected by pipes to propellor (or git).+ * Rsync: Make rsync display less verbose.+ * Improve PROPELLOR_TRACE output so serialized trace values always+ come on their own line, not mixed with title setting.++ -- Joey Hess <id@joeyh.name> Tue, 01 Aug 2017 13:30:54 -0400+ propellor (4.7.3) unstable; urgency=medium * Expand the Trace data type.
debian/changelog view
@@ -1,3 +1,13 @@+propellor (4.7.4) unstable; urgency=medium++ * Set GPG_TTY when run at a terminal, so that gpg can do password+ prompting despite being connected by pipes to propellor (or git).+ * Rsync: Make rsync display less verbose.+ * Improve PROPELLOR_TRACE output so serialized trace values always+ come on their own line, not mixed with title setting.++ -- Joey Hess <id@joeyh.name> Tue, 01 Aug 2017 13:30:54 -0400+ propellor (4.7.3) unstable; urgency=medium * Expand the Trace data type.
propellor.cabal view
@@ -1,5 +1,5 @@ Name: propellor-Version: 4.7.3+Version: 4.7.4 Cabal-Version: >= 1.20 License: BSD2 Maintainer: Joey Hess <id@joeyh.name>
src/Propellor/CmdLine.hs view
@@ -111,6 +111,7 @@ defaultMain :: [Host] -> IO () defaultMain hostlist = withConcurrentOutput $ do useFileSystemEncoding+ setupGpgEnv Shim.cleanEnv checkDebugMode cmdline <- processCmdLine
src/Propellor/Gpg.hs view
@@ -1,6 +1,8 @@ module Propellor.Gpg where import System.IO+import System.Posix.IO+import System.Posix.Terminal import Data.Maybe import Control.Monad import Control.Applicative@@ -18,6 +20,25 @@ import Utility.Env import Utility.Directory import Utility.Split++-- | When at a tty, set GPG_TTY to point to the tty device. This is needed+-- so that when gpg is run with stio connected to a pipe, it is still able+-- to display password prompts at the console.+--+-- This should not prevent gpg from using the GUI for prompting when one is+-- available.+setupGpgEnv :: IO ()+setupGpgEnv = checkhandles [stdInput, stdOutput, stdError]+ where+ checkhandles [] = return ()+ checkhandles (h:hs) = do+ isterm <- queryTerminal h+ if isterm+ then do+ ttyname <- getTerminalName h+ -- do not overwrite+ setEnv "GPG_TTY" ttyname False+ else checkhandles hs type KeyId = String
src/Propellor/Message.hs view
@@ -96,12 +96,11 @@ actionMessage' :: (MonadIO m, ActionResult r, ToResult r) => Maybe HostName -> Desc -> m r -> m r actionMessage' mhn desc a = do+ liftIO $ trace $ ActionStart mhn desc liftIO $ outputConcurrent =<< whenConsole (setTitleCode $ "propellor: " ++ desc) - liftIO $ trace $ ActionStart mhn desc r <- a- liftIO $ trace $ ActionEnd mhn desc (toResult r) liftIO $ outputConcurrent . concat =<< sequence [ whenConsole $@@ -111,6 +110,7 @@ , let (msg, intensity, color) = getActionResult r in colorLine intensity color msg ]+ liftIO $ trace $ ActionEnd mhn desc (toResult r) return r where
src/Propellor/Property/Rsync.hs view
@@ -46,7 +46,7 @@ -- is found, the file is processed. syncDirFiltered :: [Filter] -> Src -> Dest -> Property (DebianLike + ArchLinux) syncDirFiltered filters src dest = rsync $- [ "-av"+ [ "-a" -- Add trailing '/' to get rsync to sync the Dest directory, -- rather than a subdir inside it, which it will do without a -- trailing '/'.
src/Propellor/Property/SiteSpecific/JoeySites.hs view
@@ -963,8 +963,7 @@ ] & ipmasq "wlan0" & Apt.serviceInstalledRunning "netplug"- & Network.static' "eth0" (IPv4 "192.168.1.42")- (Just (Network.Gateway (IPv4 "192.168.1.1")))+ & Network.dhcp' "eth0" -- When satellite is down, fall back to dialup [ ("pre-up", "poff -a || true") , ("post-down", "pon")