From 9051b7481a7e51625e624fc7dde39e41ee5536dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thorben=20G=C3=BCnther?= Date: Thu, 28 Jan 2021 12:11:56 +0100 Subject: [PATCH] Add image build scripts for Arch and Alpine --- alpine/build.yml | 48 +++++++++++++++++++++++++++++++++++++++++++++ archlinux/build.yml | 44 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 alpine/build.yml create mode 100644 archlinux/build.yml diff --git a/alpine/build.yml b/alpine/build.yml new file mode 100644 index 0000000..47fc27c --- /dev/null +++ b/alpine/build.yml @@ -0,0 +1,48 @@ +image: alpine/edge +packages: + - e2fsprogs + - qemu-img + - qemu-system-x86_64 + - rsync + - sfdisk +sources: + - https://git.sr.ht/~sircmpwn/builds.sr.ht +environment: + arch: x86_64 + release: edge + slaves: + - deploy@xenrox.net +secrets: + - 6f4391b6-9dd6-44fa-b274-53aa897e41f0 +triggers: + - action: email + condition: failure + to: Thorben Günther +tasks: + - genimg: | + cd builds.sr.ht/images/alpine/$release + sudo ./genimg $arch + - kvm: | + if grep -i amd /proc/cpuinfo + then + sudo modprobe kvm_amd + else + sudo modprobe kvm_intel + fi + sleep 1 + sudo chown build:build /dev/kvm + - sanity-check: | + cd builds.sr.ht + MEMORY=1024 ./images/control alpine/$release sanity-check + - deploy: | + cd builds.sr.ht/images/alpine/$release + echo "StrictHostKeyChecking=no" >> ~/.ssh/config + for server in "${slaves[@]}" + do + ssh $server mkdir -p /var/lib/images/alpine/$release/$arch + rsync -rzzP $arch/root.img.qcow2 \ + ${server}:/var/lib/images/alpine/$release/$arch/new_root.img.qcow2 + ssh $server \ + mv /var/lib/images/alpine/$release/$arch/new_root.img.qcow2 \ + /var/lib/images/alpine/$release/$arch/root.img.qcow2 + done diff --git a/archlinux/build.yml b/archlinux/build.yml new file mode 100644 index 0000000..abfc1d3 --- /dev/null +++ b/archlinux/build.yml @@ -0,0 +1,44 @@ +image: archlinux +packages: + - arch-install-scripts + - qemu-headless + - procps-ng + - rsync + - reflector + - syslinux +sources: + - https://git.sr.ht/~sircmpwn/builds.sr.ht +environment: + arch: x86_64 + slaves: + - deploy@xenrox.net +secrets: + - 6f4391b6-9dd6-44fa-b274-53aa897e41f0 +triggers: + - action: email + condition: failure + to: Thorben Günther +tasks: + - genimg: | + cd builds.sr.ht/images/archlinux + sudo sed -e 's/IgnorePkg.*/#IgnorePkg/' -i /etc/pacman.conf + sudo ./genimg + - sanity-check: | + cd builds.sr.ht + if [ -e /dev/kvm ] + then + MEMORY=1024 ./images/control archlinux sanity-check + else + echo "KVM unavailable, skipping sanity check" + fi + - deploy: | + cd builds.sr.ht/images/archlinux + echo "StrictHostKeyChecking=no" >> ~/.ssh/config + for server in "${slaves[@]}" + do + rsync -rzzP $arch/root.img.qcow2 \ + ${server}:/var/lib/images/archlinux/root.img.qcow2-new + ssh $server \ + mv /var/lib/images/archlinux/root.img.qcow2-new \ + /var/lib/images/archlinux/$arch/root.img.qcow2 + done -- 2.44.0