CI: Adjust test needs[] to ensure binaries/ is non-root

The binaries/ directory is a composition from the artefacts, and also used as
a working directory for most of the tests.  If the very first artefact is from
a root container, then the test must also be a root container to use it as a
working directory.

For arm64, the existing linux-arm64 artefact suffices.  For arm32, pull in the
microcode-x86 artefact as it's the smallest available.  This bodge can be
removed when all build containers have become non-root.

For the qemu-xtf-dom0less-arm64-*-xen-version jobs, use *arm64-test-needs
ahead of alpine-3.18-gcc-* (as it's a root container), and to deduplicate
the *-export dependency.

This will allow us to change containers to being non-root one at a time,
rather than all in one go.

No functional change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
This commit is contained in:
Andrew Cooper committed 2026-05-29 23:13:02 +01:00
1 parent 50a21ee067
commit 2ca218af23
1 file changed
+8 -2
+8 -2
View File
@@ -15,6 +15,12 @@
- qemu-system-aarch64-6.0.0-arm64-export
.arm32-test-needs: &arm32-test-needs
# Bodge to ensure binaries/ is non-root. Can be any artefact which comes
# from a non-root container, and microcode-x86 is the smallest. Remove when
# all build containers have become non-root.
- project: $ARTIFACTS_REPO
job: microcode-x86
ref: $ARTIFACTS_BRANCH
- qemu-system-aarch64-6.0.0-arm32-export
.x86-64-test-needs: &x86-64-test-needs
@@ -569,16 +575,16 @@ qemu-xtf-dom0less-arm64-gcc-hyp-xen-version:
script:
- ./automation/scripts/qemu-xtf.sh arm64 mmu64le hyp-xen-version 2>&1 | tee ${LOGFILE}
needs:
- *arm64-test-needs
- alpine-3.18-gcc-arm64
- qemu-system-aarch64-6.0.0-arm64-export
qemu-xtf-dom0less-arm64-gcc-debug-hyp-xen-version:
extends: .qemu-arm64
script:
- ./automation/scripts/qemu-xtf.sh arm64 mmu64le hyp-xen-version 2>&1 | tee ${LOGFILE}
needs:
- *arm64-test-needs
- alpine-3.18-gcc-debug-arm64
- qemu-system-aarch64-6.0.0-arm64-export
qemu-smoke-dom0-arm32-gcc:
extends: .qemu-arm32
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.