summaryrefslogtreecommitdiff
path: root/src/Propellor/Property
diff options
context:
space:
mode:
authorJoey Hess2014-10-23 11:23:25 -0400
committerJoey Hess2014-10-23 11:23:25 -0400
commit7637ea0af9ff4056cbdc16f25016785442d4b97e (patch)
treebcb21688cf59049454f04537a070bc032624f0b4 /src/Propellor/Property
parentf3d3a1ffad2f8aed7428014fbe5b5c3d2bf3a966 (diff)
propellor spin
Diffstat (limited to 'src/Propellor/Property')
-rw-r--r--src/Propellor/Property/Docker.hs22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/Propellor/Property/Docker.hs b/src/Propellor/Property/Docker.hs
index b717fe19..358cc8c3 100644
--- a/src/Propellor/Property/Docker.hs
+++ b/src/Propellor/Property/Docker.hs
@@ -19,6 +19,7 @@ module Propellor.Property.Docker (
-- * Container configuration
dns,
hostname,
+ name,
publish,
expose,
user,
@@ -155,14 +156,10 @@ mkContainer cid@(ContainerId hn _cn) h = Container
where
info = _dockerinfo $ hostInfo h'
h' = h
- -- Restart by default so container comes up on
- -- boot or when docker is upgraded.
- &^ restart RestartAlways
- -- Expose propellor directory inside the container.
+ -- expose propellor directory inside the container
& volume (localdir++":"++localdir)
- -- Name the container in a predictable way so we
- -- and the user can easily find it later. This property
- -- comes last, so it cannot be overridden.
+ -- name the container in a predictable way so we
+ -- and the user can easily find it later
& name (fromContainerId cid)
-- | Causes *any* docker images that are not in use by running containers to
@@ -222,7 +219,7 @@ dns = runProp "dns"
hostname :: String -> Property
hostname = runProp "hostname"
--- | Set name of container.
+-- | Set name for container. (Normally done automatically.)
name :: String -> Property
name = runProp "name"
@@ -385,7 +382,14 @@ runningContainer cid@(ContainerId hn cn) image runps = containerDesc cid $ prope
shim <- liftIO $ Shim.setup (localdir </> "propellor") (localdir </> shimdir cid)
liftIO $ writeFile (identFile cid) (show ident)
ensureProperty $ boolProperty "run" $ runContainer img
- (runps ++ ["-i", "-d", "-t"])
+ -- Restart by default so container comes up on
+ -- boot or when docker is upgraded. This is put
+ -- here, rather than adding a default Property
+ -- in mkContainer, to avoid changing the ident
+ -- of existing containers. Any restart property
+ -- will override it.
+ -- This is a hack. TODO: Move to correct place.
+ ("--restart=always" : runps ++ ["-i", "-d", "-t"])
[shim, "--docker", fromContainerId cid]
-- | Called when propellor is running inside a docker container.