diff options
author | Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> | 2021-04-17 13:49:37 +0000 |
---|---|---|
committer | Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> | 2021-04-17 13:57:47 +0000 |
commit | acf08dc6638e62b4372de04e8c9492d3487f479f (patch) | |
tree | 57544340dd3dd2c7867f54877b6e5ea9d1b3ae85 /tcwg-start-container.sh | |
parent | da37058c016f6ee83ab40b2a2451b98dc487cf0b (diff) |
tcwg-start-container.sh: Handle starting QEMU-based containers
... so that we can run SVE tcwg-llvmbot containers on x86_64 machines.
Change-Id: Iaad0ba8e8012c4144b3672d547bc449bdf6b982b
Diffstat (limited to 'tcwg-start-container.sh')
-rwxr-xr-x | tcwg-start-container.sh | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/tcwg-start-container.sh b/tcwg-start-container.sh index 88e3253e..16981e25 100755 --- a/tcwg-start-container.sh +++ b/tcwg-start-container.sh @@ -46,11 +46,23 @@ if docker stats --no-stream "$container" >/dev/null 2>&1; then fi fi +qemu_mount="" +qemu_bin=$(mktemp -p $HOME) +case "$(uname -m):$image" in + x86_64:*-arm64-tcwg-llvmbot-*) + # See dockerfiles.git/tcwg-base/tcwg-llvmbot/start.sh for details + # on how this works. + cp "$(which qemu-aarch64-static)" "$qemu_bin" + chmod +x "$qemu_bin" + qemu_mount="-v $qemu_bin:/bin/qemu-aarch64-static" + ;; +esac + start_sh=$(mktemp) -docker run --rm $image start.sh > "$start_sh" +docker run --rm $qemu_mount $image start.sh > "$start_sh" bash "$start_sh" "$@" -rm "$start_sh" +rm "$start_sh" "$qemu_bin" if [ x"$rm_cnt" != x"" ]; then # With the new container started delete the old one. |