summaryrefslogtreecommitdiff
path: root/src/Propellor
diff options
context:
space:
mode:
authorJoey Hess2014-06-05 17:01:32 -0400
committerJoey Hess2014-06-05 17:01:32 -0400
commit4ac314fb4812ccdb62e930fe53e312ced6171e12 (patch)
tree110f785501a6bc7638edebfc12a7f6d3d7bea472 /src/Propellor
parente1d7441e32818e06269353fa0044851ae09e1bdd (diff)
Apt.stdSourcesList no longer needs a suite to be specified.
Diffstat (limited to 'src/Propellor')
-rw-r--r--src/Propellor/Property/Apt.hs13
-rw-r--r--src/Propellor/Property/SiteSpecific/GitAnnexBuilder.hs8
2 files changed, 14 insertions, 7 deletions
diff --git a/src/Propellor/Property/Apt.hs b/src/Propellor/Property/Apt.hs
index 69144d72..17057af2 100644
--- a/src/Propellor/Property/Apt.hs
+++ b/src/Propellor/Property/Apt.hs
@@ -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.
--
diff --git a/src/Propellor/Property/SiteSpecific/GitAnnexBuilder.hs b/src/Propellor/Property/SiteSpecific/GitAnnexBuilder.hs
index 6e4ca81a..57a6b084 100644
--- a/src/Propellor/Property/SiteSpecific/GitAnnexBuilder.hs
+++ b/src/Propellor/Property/SiteSpecific/GitAnnexBuilder.hs
@@ -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"]