Merge branch 'joeyconfig'
This commit is contained in:
commit
4fdd1b9ea4
|
@ -246,8 +246,7 @@ hosts = -- (o) `
|
|||
standardSystem :: HostName -> DebianSuite -> Architecture -> Host
|
||||
standardSystem hn suite arch = host hn
|
||||
& os (System (Debian suite) arch)
|
||||
& Apt.stdSourcesList suite
|
||||
`onChange` Apt.upgrade
|
||||
& Apt.stdSourcesList `onChange` Apt.upgrade
|
||||
& Apt.cacheCleaned
|
||||
& Apt.installed ["etckeeper"]
|
||||
& Apt.installed ["ssh"]
|
||||
|
@ -270,8 +269,8 @@ standardSystem hn suite arch = host hn
|
|||
-- This is my standard container setup, featuring automatic upgrades.
|
||||
standardContainer :: Docker.ContainerName -> DebianSuite -> Architecture -> Host
|
||||
standardContainer name suite arch = Docker.container name (dockerImage system)
|
||||
& os (System (Debian suite) arch)
|
||||
& Apt.stdSourcesList suite
|
||||
& os system
|
||||
& Apt.stdSourcesList `onChange` Apt.upgrade
|
||||
& Apt.installed ["systemd"]
|
||||
& Apt.unattendedUpgrades
|
||||
& Apt.cacheCleaned
|
||||
|
|
|
@ -3,11 +3,12 @@ propellor (0.6.0) UNRELEASED; urgency=medium
|
|||
* Docker containers now propigate DNS attributes out to the host they're
|
||||
docked in. So if a docker container sets a DNS alias, every container
|
||||
it's docked in will automatically be added to a DNS round-robin,
|
||||
if propellor is used to manage DNS for the domain.
|
||||
* Propellor's output now includes the hostname being provisioned, or
|
||||
when provisioning a docker container, the container name.
|
||||
when propellor is used to manage DNS for the domain.
|
||||
* Apt.stdSourcesList no longer needs a suite to be specified.
|
||||
* Added --dump to dump out a field of a host's privdata. Useful for editing
|
||||
it.
|
||||
* Propellor's output now includes the hostname being provisioned, or
|
||||
when provisioning a docker container, the container name.
|
||||
|
||||
-- Joey Hess <joeyh@debian.org> Sat, 31 May 2014 16:41:56 -0400
|
||||
|
||||
|
|
|
@ -64,12 +64,19 @@ securityUpdates suite
|
|||
| otherwise = []
|
||||
|
||||
-- | Makes sources.list have a standard content using the mirror CDN,
|
||||
-- with a particular DebianSuite.
|
||||
-- with the Debian suite configured by the os.
|
||||
--
|
||||
-- Since the CDN is sometimes unreliable, also adds backup lines using
|
||||
-- kernel.org.
|
||||
stdSourcesList :: DebianSuite -> Property
|
||||
stdSourcesList suite = stdSourcesList' suite []
|
||||
stdSourcesList :: Property
|
||||
stdSourcesList = withOS ("standard sources.list") $ \o ->
|
||||
case o of
|
||||
(Just (System (Debian suite) _)) ->
|
||||
ensureProperty $ stdSourcesListFor suite
|
||||
_ -> error "os is not declared to be Debian"
|
||||
|
||||
stdSourcesListFor :: DebianSuite -> Property
|
||||
stdSourcesListFor suite = stdSourcesList' suite []
|
||||
|
||||
-- | Adds additional sources.list generators.
|
||||
--
|
||||
|
|
|
@ -100,7 +100,7 @@ standardAutoBuilderContainer :: (System -> Docker.Image) -> Architecture -> Int
|
|||
standardAutoBuilderContainer dockerImage arch buildminute timeout = Docker.container (arch ++ "-git-annex-builder")
|
||||
(dockerImage $ System (Debian Unstable) arch)
|
||||
& os (System (Debian Unstable) arch)
|
||||
& Apt.stdSourcesList Unstable
|
||||
& Apt.stdSourcesList
|
||||
& Apt.installed ["systemd"]
|
||||
& Apt.unattendedUpgrades
|
||||
& buildDepsApt
|
||||
|
@ -118,7 +118,7 @@ androidContainer :: (System -> Docker.Image) -> Docker.ContainerName -> Property
|
|||
androidContainer dockerImage name setupgitannexdir gitannexdir = Docker.container name
|
||||
(dockerImage $ System (Debian Stable) "i386")
|
||||
& os (System (Debian Stable) "i386")
|
||||
& Apt.stdSourcesList Stable
|
||||
& Apt.stdSourcesList
|
||||
& Apt.installed ["systemd"]
|
||||
& User.accountFor builduser
|
||||
& File.dirExists gitbuilderdir
|
||||
|
@ -145,7 +145,7 @@ armelCompanionContainer :: (System -> Docker.Image) -> Host
|
|||
armelCompanionContainer dockerImage = Docker.container "armel-git-annex-builder-companion"
|
||||
(dockerImage $ System (Debian Unstable) "amd64")
|
||||
& os (System (Debian Unstable) "amd64")
|
||||
& Apt.stdSourcesList Unstable
|
||||
& Apt.stdSourcesList
|
||||
& Apt.installed ["systemd"]
|
||||
& Apt.unattendedUpgrades
|
||||
-- This volume is shared with the armel builder.
|
||||
|
@ -163,7 +163,7 @@ armelAutoBuilderContainer :: (System -> Docker.Image) -> Cron.CronTimes -> TimeO
|
|||
armelAutoBuilderContainer dockerImage crontimes timeout = Docker.container "armel-git-annex-builder"
|
||||
(dockerImage $ System (Debian Unstable) "armel")
|
||||
& os (System (Debian Unstable) "armel")
|
||||
& Apt.stdSourcesList Unstable
|
||||
& Apt.stdSourcesList
|
||||
& Apt.unattendedUpgrades
|
||||
& Apt.installed ["systemd"]
|
||||
& Apt.installed ["openssh-client"]
|
||||
|
|
|
@ -66,7 +66,7 @@ data Property = Property
|
|||
}
|
||||
|
||||
instance Show Property where
|
||||
show = propertyDesc
|
||||
show p = "property " ++ show (propertyDesc p)
|
||||
|
||||
-- | A property that can be reverted.
|
||||
data RevertableProperty = RevertableProperty Property Property
|
||||
|
|
|
@ -14,7 +14,7 @@ data Attr = Attr
|
|||
, _namedconf :: Dns.NamedConfMap
|
||||
, _dockerattr :: DockerAttr
|
||||
}
|
||||
deriving (Eq)
|
||||
deriving (Eq, Show)
|
||||
|
||||
instance Monoid Attr where
|
||||
mempty = Attr mempty mempty mempty mempty mempty
|
||||
|
@ -26,15 +26,6 @@ instance Monoid Attr where
|
|||
, _dockerattr = _dockerattr old <> _dockerattr new
|
||||
}
|
||||
|
||||
instance Show Attr where
|
||||
show a = unlines
|
||||
[ "OS " ++ show (_os a)
|
||||
, "sshPubKey " ++ show (_sshPubKey a)
|
||||
, "dns " ++ show (_dns a)
|
||||
, "namedconf " ++ show (_namedconf a)
|
||||
, show (_dockerattr a)
|
||||
]
|
||||
|
||||
data Val a = Val a | NoVal
|
||||
deriving (Eq, Show)
|
||||
|
||||
|
|
Loading…
Reference in New Issue