diff options
| author | Joey Hess <joey@kitenet.net> | 2014-05-14 19:41:05 -0400 |
|---|---|---|
| committer | Joey Hess <joey@kitenet.net> | 2014-05-14 19:41:05 -0400 |
| commit | 7115d1ec162b4059b3e8e8f84bd8d5898c1db025 (patch) | |
| tree | 42c1cce54e890e1d56484794ab33129132d8fee2 /Propellor/Property/Cmd.hs | |
| parent | ffe371a9d42cded461236e972a24a142419d7fc4 (diff) | |
moved source code to src
This is to work around OSX's brain-damange regarding filename case
insensitivity.
Avoided moving config.hs, because it's a config file. Put in a symlink to
make build work.
Diffstat (limited to 'Propellor/Property/Cmd.hs')
| -rw-r--r-- | Propellor/Property/Cmd.hs | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/Propellor/Property/Cmd.hs b/Propellor/Property/Cmd.hs deleted file mode 100644 index bcd08246..00000000 --- a/Propellor/Property/Cmd.hs +++ /dev/null @@ -1,49 +0,0 @@ -{-# LANGUAGE PackageImports #-} - -module Propellor.Property.Cmd ( - cmdProperty, - cmdProperty', - scriptProperty, - userScriptProperty, -) where - -import Control.Applicative -import Data.List -import "mtl" Control.Monad.Reader - -import Propellor.Types -import Propellor.Property -import Utility.Monad -import Utility.SafeCommand -import Utility.Env - --- | A property that can be satisfied by running a command. --- --- The command must exit 0 on success. -cmdProperty :: String -> [String] -> Property -cmdProperty cmd params = cmdProperty' cmd params [] - --- | A property that can be satisfied by running a command, --- with added environment. -cmdProperty' :: String -> [String] -> [(String, String)] -> Property -cmdProperty' cmd params env = property desc $ liftIO $ do - env' <- addEntries env <$> getEnvironment - ifM (boolSystemEnv cmd (map Param params) (Just env')) - ( return MadeChange - , return FailedChange - ) - where - desc = unwords $ cmd : params - --- | A property that can be satisfied by running a series of shell commands. -scriptProperty :: [String] -> Property -scriptProperty script = cmdProperty "sh" ["-c", shellcmd] - where - shellcmd = intercalate " ; " ("set -e" : script) - --- | A property that can satisfied by running a series of shell commands, --- as user (cd'd to their home directory). -userScriptProperty :: UserName -> [String] -> Property -userScriptProperty user script = cmdProperty "su" ["-c", shellcmd, user] - where - shellcmd = intercalate " ; " ("set -e" : "cd" : script) |
