summaryrefslogtreecommitdiff
path: root/src/Propellor/Property/SiteSpecific/GitAnnexBuilder.hs
diff options
context:
space:
mode:
authorJoey Hess2014-05-24 00:05:47 -0400
committerJoey Hess2014-05-24 00:05:47 -0400
commit60ea130321e23dd7b36337388d6627661c116548 (patch)
treea1a6a05c313c335e8c3c530733c2fab203a2cc5b /src/Propellor/Property/SiteSpecific/GitAnnexBuilder.hs
parentaba5e143f20f0ef8e3b278c11d351be9fe256bcc (diff)
propellor spin
Diffstat (limited to 'src/Propellor/Property/SiteSpecific/GitAnnexBuilder.hs')
-rw-r--r--src/Propellor/Property/SiteSpecific/GitAnnexBuilder.hs18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/Propellor/Property/SiteSpecific/GitAnnexBuilder.hs b/src/Propellor/Property/SiteSpecific/GitAnnexBuilder.hs
index 8055a608..13f1ac12 100644
--- a/src/Propellor/Property/SiteSpecific/GitAnnexBuilder.hs
+++ b/src/Propellor/Property/SiteSpecific/GitAnnexBuilder.hs
@@ -103,6 +103,24 @@ standardContainer dockerImage arch buildminute timeout = Docker.container (arch
& Apt.unattendedUpgrades
& builder arch (show buildminute ++ " * * * *") timeout True
+-- Android is cross-built in a Debian i386 container, using the Android NDK.
+androidContainer :: (System -> Docker.Image) -> Cron.CronTimes -> TimeOut -> Host
+androidContainer dockerImage crontimes timeout = Docker.container "android-git-annex-builder"
+ (dockerImage $ System (Debian Stable) "i386")
+ & Apt.stdSourcesList Stable
+ & Apt.unattendedUpgrades
+ & builder "android" crontimes timeout True
+ -- Use git-annex's android chroot setup script, which will install
+ -- ghc-android and the NDK, etc, in the home directory of the
+ -- builder user.
+ & scriptProperty
+ [ "cd " ++ builddir ++ " && ./standalone/android/buildchroot-inchroot"
+ ]
+ -- TODO: automate installing haskell libs
+ -- (Currently have to run
+ -- git-annex/standalone/android/install-haskell-packages
+ -- which is not fully automated.)
+
-- armel builder has a companion container using amd64 that
-- runs the build first to get TH splices. They need
-- to have the same versions of all haskell libraries installed.