summaryrefslogtreecommitdiff
path: root/src/Propellor/Types.hs
diff options
context:
space:
mode:
authorJoey Hess2014-11-21 18:55:33 -0400
committerJoey Hess2014-11-21 18:55:33 -0400
commit6c92f1034f980718cef54cab58a1bcfdbc485f5d (patch)
tree3a2bacdc7d3433b6326c01e9acf3f9d2101e04b3 /src/Propellor/Types.hs
parent04ea987075b869ea70cf55a193af7f5604ff0561 (diff)
split out info types
Diffstat (limited to 'src/Propellor/Types.hs')
-rw-r--r--src/Propellor/Types.hs39
1 files changed, 4 insertions, 35 deletions
diff --git a/src/Propellor/Types.hs b/src/Propellor/Types.hs
index a6c5aafa..e7d63547 100644
--- a/src/Propellor/Types.hs
+++ b/src/Propellor/Types.hs
@@ -23,9 +23,6 @@ module Propellor.Types
, SshKeyType(..)
, Val(..)
, fromVal
- , DockerInfo(..)
- , DockerRunParam(..)
- , ChrootInfo(..)
, module Propellor.Types.OS
, module Propellor.Types.Dns
) where
@@ -37,11 +34,12 @@ import System.Posix.Types
import "mtl" Control.Monad.Reader
import "MonadCatchIO-transformers" Control.Monad.CatchIO
import qualified Data.Set as S
-import qualified Data.Map as M
import qualified Propellor.Types.Dns as Dns
import Propellor.Types.OS
+import Propellor.Types.Chroot
import Propellor.Types.Dns
+import Propellor.Types.Docker
import Propellor.Types.PrivData
-- | Everything Propellor knows about a system: Its hostname,
@@ -167,8 +165,8 @@ data Info = Info
, _aliases :: S.Set HostName
, _dns :: S.Set Dns.Record
, _namedconf :: Dns.NamedConfMap
- , _dockerinfo :: DockerInfo
- , _chrootinfo :: ChrootInfo
+ , _dockerinfo :: DockerInfo Host
+ , _chrootinfo :: ChrootInfo Host
}
deriving (Show)
@@ -197,32 +195,3 @@ instance Monoid (Val a) where
fromVal :: Val a -> Maybe a
fromVal (Val a) = Just a
fromVal NoVal = Nothing
-
-data DockerInfo = DockerInfo
- { _dockerRunParams :: [DockerRunParam]
- , _dockerContainers :: M.Map String Host
- }
- deriving (Show)
-
-instance Monoid DockerInfo where
- mempty = DockerInfo mempty mempty
- mappend old new = DockerInfo
- { _dockerRunParams = _dockerRunParams old <> _dockerRunParams new
- , _dockerContainers = M.union (_dockerContainers old) (_dockerContainers new)
- }
-
-newtype DockerRunParam = DockerRunParam (HostName -> String)
-
-instance Show DockerRunParam where
- show (DockerRunParam a) = a ""
-
-data ChrootInfo = ChrootInfo
- { _chroots :: M.Map FilePath Host
- }
- deriving (Show)
-
-instance Monoid ChrootInfo where
- mempty = ChrootInfo mempty
- mappend old new = ChrootInfo
- { _chroots = M.union (_chroots old) (_chroots new)
- }