summaryrefslogtreecommitdiff
path: root/pipelines/systrees.ick
diff options
context:
space:
mode:
Diffstat (limited to 'pipelines/systrees.ick')
-rw-r--r--pipelines/systrees.ick47
1 files changed, 47 insertions, 0 deletions
diff --git a/pipelines/systrees.ick b/pipelines/systrees.ick
new file mode 100644
index 0000000..d675a48
--- /dev/null
+++ b/pipelines/systrees.ick
@@ -0,0 +1,47 @@
+# Lars Wirzenius.
+#
+# Feel free to use this as you wish. It is simple enough that it is
+# probably not even copyrightable.
+
+pipelines:
+
+ # Build a Debian systree. Save it as an artifact named in the
+ # artifact_name parameter. The debian_codename parameter specifies
+ # the Debian release to be used. The packages parameter names
+ # addtional Debian packages to install into the systree. The systree
+ # will get the following packages added unconditionally: python3,
+ # jq, gnupg.
+
+ - pipeline: ick/build_debian_systree
+ parameters:
+ - debian_codename
+ - packages
+ - artifact_name
+ actions:
+ - debootstrap: auto
+ mirror: http://deb.debian.org/debian
+ where: host
+
+ - shell: |
+ apt-get install -y python3 jq gnupg
+ where: chroot
+
+ - python: |
+ import os, subprocess
+ def runcmd(argv, **kwargs):
+ subprocess.check_call(argv, **kwargs)
+ runcmd(['apt-get', 'install', '-y'] + params['packages'])
+ where: chroot
+
+ - archive: workspace
+ where: host
+
+ # Prepare container for building: use the artifact named in the
+ # artifact_name parameter.
+
+ - pipeline: ick/setup_container
+ parameters:
+ - artifact_name
+ actions:
+ - action: populate_systree
+ where: host