gitlab-ci: add an ARM32 qemu-based smoke test
authorStefano Stabellini <stefano.stabellini@xilinx.com>
Thu, 21 Apr 2022 23:17:40 +0000 (16:17 -0700)
committerStefano Stabellini <stefano.stabellini@xilinx.com>
Thu, 21 Apr 2022 23:17:40 +0000 (16:17 -0700)
commit43f3d51139178a03823b061482c674e15ce3d49c
tree1a8359edbb4de2085ad0830fcdfe301decfa35a3
parentf1e4efafd69ac5022f2561e45f2eaf89388dc9f6
gitlab-ci: add an ARM32 qemu-based smoke test

Add a minimal ARM32 smoke test based on qemu-system-arm, as provided by
the test-artifacts qemu container. The minimal test simply boots Xen
(built from previous build stages) and Dom0.

The test needs a working kernel and minimal initrd for dom0. Instead of
building our own kernel and initrd, which would mean maintaining one or
two more builting scripts under automation/, we borrow a kernel and
initrd from distros.

For the kernel we pick the Debian Bullseye kernel, which has everything
we need already built-in. However, we cannot use the Debian Bullseye
initrd because it is 22MB and the large size causes QEMU to core dump.

Instead, use the tiny busybox-based rootfs provided by Alpine Linux,
which is really minimal: just 2.5MB. Note that we cannot use the Alpine
Linux kernel because that doesn't boot on Xen.

Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
Reviewed-by: Michal Orzel <michal.orzel@arm.com>
automation/gitlab-ci/test.yaml
automation/scripts/qemu-smoke-arm32.sh [new file with mode: 0755]