summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Levsen <holger@layer-acht.org>2015-01-01 22:05:14 +0100
committerHolger Levsen <holger@layer-acht.org>2015-01-01 22:05:14 +0100
commit54f6333eda581b3847977b168cd062f40fe2fe14 (patch)
tree23dd2976787711a6a119d0a87f4e824d1eedb9b0
parente81201a31fa1912eeaf956272ed7aed54e15a91e (diff)
downloadjenkins.debian.net-54f6333eda581b3847977b168cd062f40fe2fe14.tar.xz
build debian-edu jessie live images
-rwxr-xr-xbin/live-build.sh32
-rw-r--r--job-cfg/live.yaml54
2 files changed, 86 insertions, 0 deletions
diff --git a/bin/live-build.sh b/bin/live-build.sh
new file mode 100755
index 00000000..5a7f62e2
--- /dev/null
+++ b/bin/live-build.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+# Copyright 2014-2015 Holger Levsen <holger@layer-acht.org>
+# released under the GPLv=2
+
+DEBUG=false
+. /srv/jenkins/bin/common-functions.sh
+common_init "$@"
+
+cleanup_all() {
+ rm -r $TMPDIR
+}
+
+TMPDIR=$(mktemp --tmpdir=/srv/workspace -d)
+trap cleanup_all INT TERM EXIT
+
+cd $TMPDIR
+# build an debian-edu .iso for now...
+# $1 is debian-edu
+# $2 is standalone...
+# FIXME: do debian images too
+lb config --distribution jessie --bootappend-live "boot=live config hostname=debian-edu username=debian-edu"
+echo education-standalone > config/package-lists/live.list.chroot
+# FIXME add serial console
+lb build
+ls -la *.iso || true
+cp *.iso /srv/workspace
+# FIXME: use subdir there... (shared with downloaded .isos?)
+
+cleanup_all
+trap - INT TERM EXIT
+
diff --git a/job-cfg/live.yaml b/job-cfg/live.yaml
new file mode 100644
index 00000000..b1a41f4b
--- /dev/null
+++ b/job-cfg/live.yaml
@@ -0,0 +1,54 @@
+- defaults:
+ name: live
+ project-type: freestyle
+ properties:
+ - sidebar:
+ url: https://jenkins.debian.net/userContent/about.html
+ text: About jenkins.debian.net
+ icon: /userContent/images/debian-swirl-24x24.png
+ - sidebar:
+ url: https://jenkins.debian.net/view/qa.debian.org/
+ text: Jobs for Debian QA related packages
+ icon: /userContent/images/debian-jenkins-24x24.png
+ - sidebar:
+ url: http://www.profitbricks.com
+ text: Sponsored by Profitbricks
+ icon: /userContent/images/profitbricks-24x24.png
+ description: '{my_description}<br><br>Job configuration source is <a href="http://anonscm.debian.org/cgit/qa/jenkins.debian.net.git/tree/job-cfg/live.yaml">live.yaml</a>.'
+ logrotate:
+ daysToKeep: 90
+ numToKeep: 20
+ artifactDaysToKeep: -1
+ artifactNumToKeep: -1
+ publishers:
+ - logparser:
+ parse-rules: '/srv/jenkins/logparse/debian.rules'
+ unstable-on-warning: 'true'
+ fail-on-error: 'true'
+ - email:
+ recipients: 'holger@layer-acht.org'
+ builders:
+ - shell: '{my_shell}'
+ triggers:
+ - timed: '{my_time}'
+
+- job-template:
+ defaults: live
+ name: '{name}_build_edu_jessie_standalone'
+
+- job-template:
+ defaults: live
+ name: '{name}_setup_schroot'
+
+- project:
+ name: live
+ jobs:
+ - '{name}_build_edu_jessie_standalone':
+ my_description: 'Build Debian Edu Jessie live-image with "standlone" profile.'
+ my_time: '0 12 1 * *'
+ my_shell: 'schroot --directory /tmp -c source:jenkins-live-jessie /srv/jenkins/bin/live-build debian-edu standalone'
+ - '{name}_setup_schroot':
+ my_description: 'Setup schroot for building live images using live-build in a jessie environment.'
+ my_time: '42 10 1 * *'
+ my_shell: '/srv/jenkins/bin/schroot-create.sh live-jessie jessie live-build'
+