From 2d2ac66a26f9a53dfb699429302d900876377926 Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Wed, 3 Feb 2016 22:00:48 +0100 Subject: [PATCH] script to run ./makebuildserver on Jenkins instances This is being used to run it on both Guardian Project's and Debian's Jenkins instances. --- jenkins-build-makebuildserver | 50 +++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100755 jenkins-build-makebuildserver diff --git a/jenkins-build-makebuildserver b/jenkins-build-makebuildserver new file mode 100755 index 00000000..5b9c4228 --- /dev/null +++ b/jenkins-build-makebuildserver @@ -0,0 +1,50 @@ +#!/bin/bash + +if [ `dirname $0` != "." ]; then + echo "only run this script like ./`basename $0`" + exit +fi + +if [ -z $WORKSPACE ]; then + WORKSPACE=`pwd` +fi + +# make sure that no VirtualBox processes are left running +cleanup_all() { + echo "$(date -u) - cleanup in progress..." + ps auxww|grep VBox + cd $WORKSPACE/buildserver + vagrant halt || true + sleep 5 + killall VBoxHeadless || true + sleep 5 + killall -9 VBoxHeadless || true + echo "$(date -u) - cleanup done." +} +trap cleanup_all INT TERM EXIT + +set -e +set -x + +# make sure we have the vagrant box image cached +test -e ~/.cache/fdroidserver || mkdir -p ~/.cache/fdroidserver +cd ~/.cache/fdroidserver +wget --tries=1 --timeout=5 --continue https://f-droid.org/jessie32.box || true +echo "ff6b0c0bebcb742783becbc51a9dfff5a2a0a839bfcbfd0288dcd3113f33e533 jessie32.box" > jessie32.box.sha256 +sha256sum -c jessie32.box.sha256 + +# redirect homes to be in the git repo, so they'll get cleaned and reset +export XDG_CONFIG_HOME=$WORKSPACE +export VBOX_USER_HOME=$WORKSPACE/VirtualBox +mkdir $VBOX_USER_HOME +VBoxManage setproperty machinefolder $WORKSPACE/virtualbox.d +VBoxManage setproperty logginglevel debug +export VAGRANT_HOME=$WORKSPACE/vagrant.d +mkdir $VAGRANT_HOME + +cd $WORKSPACE +echo "debian_mirror = 'http://ftp.uk.debian.org/debian/'" > $WORKSPACE/makebuildserver.config.py +echo "boot_timeout = 1200" >> $WORKSPACE/makebuildserver.config.py +echo "apt_package_cache = True" >> $WORKSPACE/makebuildserver.config.py +./makebuildserver + -- 2.30.2