diff options
author | tv <tv@krebsco.de> | 2019-01-27 20:19:16 +0100 |
---|---|---|
committer | tv <tv@krebsco.de> | 2019-01-27 20:20:16 +0100 |
commit | 0e199f7a357a4c5973e5837ec67699cf224ca69c (patch) | |
tree | 178a04410ae34e148b9fb8d0624a76995e0fd187 /src | |
parent | 24d095cad7969a7bdadd1fa05c4742f4d66033e6 (diff) |
Reaktor.Plugins.System: add hEnv
Diffstat (limited to 'src')
-rw-r--r-- | src/Reaktor/Plugins/System.hs | 1 | ||||
-rw-r--r-- | src/Reaktor/Plugins/System/Internal.hs | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/src/Reaktor/Plugins/System.hs b/src/Reaktor/Plugins/System.hs index de96a61..6894797 100644 --- a/src/Reaktor/Plugins/System.hs +++ b/src/Reaktor/Plugins/System.hs @@ -139,6 +139,7 @@ run1 Config{..} Actions{..} Hook{..} prefix msgtarget text = do M.toList $ mconcat [ M.fromList extraEnv , maybe mempty id scEnv + , maybe mempty id hEnv , M.fromList baseEnv ] diff --git a/src/Reaktor/Plugins/System/Internal.hs b/src/Reaktor/Plugins/System/Internal.hs index e4356df..82aad6c 100644 --- a/src/Reaktor/Plugins/System/Internal.hs +++ b/src/Reaktor/Plugins/System/Internal.hs @@ -52,6 +52,7 @@ data Hook = Hook , hPattern :: Maybe Regex , hCommand :: CaptureOr SystemCommand , hArguments :: [CaptureOr Text] + , hEnv :: Maybe (HashMap String String) , hWorkDir :: Maybe FilePath , hCommands :: HashMap Text SystemCommand , hTimeout :: Maybe Int @@ -66,6 +67,7 @@ instance FromJSON Hook where <*> (fmap (flip RE.compile [RE.utf8]) <$> v .:? "pattern") <*> v .: "command" <*> v .:? "arguments" .!= [] + <*> v .:? "env" <*> v .:? "workdir" <*> v .:? "commands" .!= mempty <*> (fmap (*1000000) <$> v .:? "timeoutSec" .!= Just 10) |