summaryrefslogtreecommitdiff
path: root/generate.sh
diff options
context:
space:
mode:
authorKarel Kočí <cynerd@email.cz>2020-11-24 12:38:49 +0100
committerKarel Kočí <cynerd@email.cz>2020-11-24 12:38:49 +0100
commita52edff7ea8a8b831e88211063280b69153f42fe (patch)
tree10b5251313edffbfd3a4e21f77c3ee86167219aa /generate.sh
parent6ddc7ac584b1ba8aa790f998cf4ef40dfb80fc01 (diff)
downloadlaminar-cnf-a52edff7ea8a8b831e88211063280b69153f42fe.tar.gz
laminar-cnf-a52edff7ea8a8b831e88211063280b69153f42fe.tar.bz2
laminar-cnf-a52edff7ea8a8b831e88211063280b69153f42fe.zip
Rework how we trigger and define jobs
This simplifies jobs management and reduces duplicate input.
Diffstat (limited to 'generate.sh')
-rwxr-xr-xgenerate.sh44
1 files changed, 44 insertions, 0 deletions
diff --git a/generate.sh b/generate.sh
new file mode 100755
index 0000000..70e80d4
--- /dev/null
+++ b/generate.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+set -eu
+cd "$(dirname "$(readlink -f "$0")")"
+
+# Turris #########################################################################
+declare -A boards animals
+boards=(["mox"]="aarch64_cortex-a53" ["omnia"]="arm_cortex-a9_vfpv3-d16" ["turris1x"]="powerpc_8540")
+animals=(["turtles"]="hbt" ["kittens"]="hbk" ["lions"]="hbl" ["dragons"]="hbd")
+
+for animal in "${!animals[@]}"; do
+ for board in "${!boards[@]}"; do
+ job="turris-$animal-$board"
+ echo "Generating: $job"
+ ln -sf ../templates/turris.run "jobs/$job.run"
+ ln -sf ../templates/turris.conf "jobs/$job.conf"
+ cat >"jobs/$job.env" <<-EOF
+ BOARD=$board
+ ANIMAL=${animals[$animal]}
+ ARCH=${boards[$board]}
+ EOF
+ done
+done
+
+
+# Alpine #########################################################################
+declare -A archmap qemu
+archs=("aarch64" "amd64" "armhf" "armv7")
+archmap=(["amd64"]="x86_64")
+qemu=(["armhf"]="arm" ["armv7"]="arm")
+
+for arch in "${archs[@]}"; do
+ job="alpine-$arch"
+ echo "Generating: $job"
+ ln -sf ../templates/alpine.run "jobs/$job.run"
+ ln -sf ../templates/alpine.conf "jobs/$job.conf"
+ if [ -n "${archmap[$arch]+x}" ]; then
+ arch="${archmap[$arch]}"
+ fi
+ {
+ echo "ARCH=$arch"
+ [ -z "${qemu[$arch]+x}" ] || \
+ echo "QEMU_ARCH=${qemu[$arch]}"
+ } >"jobs/$job.env"
+done