diff options
author | Karel Kočí <cynerd@email.cz> | 2020-11-24 12:38:49 +0100 |
---|---|---|
committer | Karel Kočí <cynerd@email.cz> | 2020-11-24 12:38:49 +0100 |
commit | a52edff7ea8a8b831e88211063280b69153f42fe (patch) | |
tree | 10b5251313edffbfd3a4e21f77c3ee86167219aa /generate.sh | |
parent | 6ddc7ac584b1ba8aa790f998cf4ef40dfb80fc01 (diff) | |
download | laminar-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-x | generate.sh | 44 |
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 |