|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH 5/5] CI: Switch qemu-arm* jobs to using the distro provided QEMU
This removes qemu-system-aarch64-6.0.0-*-export and fixes the outstanding
TODOs about efi-virtio.rom, now that the QEMU in use has it's /usr/share/
properly packaged.
Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
CC: Anthony PERARD <anthony.perard@xxxxxxxxxx>
CC: Stefano Stabellini <sstabellini@xxxxxxxxxx>
CC: Michal Orzel <michal.orzel@xxxxxxx>
CC: Doug Goldstein <cardoe@xxxxxxxxxx>
---
automation/gitlab-ci/build.yaml | 33 --------
automation/gitlab-ci/test.yaml | 2 -
automation/scripts/include/xtf-arm64 | 7 +-
automation/scripts/qemu-smoke-dom0-arm32.sh | 6 +-
automation/scripts/qemu-smoke-dom0-arm64.sh | 6 +-
.../scripts/qemu-smoke-dom0less-arm32.sh | 6 +-
.../scripts/qemu-smoke-dom0less-arm64.sh | 6 +-
.../6.0.0-arm64v8.dockerfile | 77 -------------------
8 files changed, 10 insertions(+), 133 deletions(-)
delete mode 100644
automation/tests-artifacts/qemu-system-aarch64/6.0.0-arm64v8.dockerfile
diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
index e50ff6936c5c..be4a038363ac 100644
--- a/automation/gitlab-ci/build.yaml
+++ b/automation/gitlab-ci/build.yaml
@@ -265,39 +265,6 @@
variables:
<<: *gcc
-## Test artifacts common
-
-.test-jobs-artifact-common:
- stage: build
- needs: []
- rules:
- - if: $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
- when: on_success
-
-# Arm test artifacts
-
-qemu-system-aarch64-6.0.0-arm64-export:
- extends: .test-jobs-artifact-common
- image:
registry.gitlab.com/xen-project/xen/tests-artifacts/qemu-system-aarch64:6.0.0-arm64v8
- script:
- - mkdir binaries && cp /qemu-system-aarch64 binaries/qemu-system-aarch64
- artifacts:
- paths:
- - binaries/qemu-system-aarch64
- tags:
- - arm64
-
-qemu-system-aarch64-6.0.0-arm32-export:
- extends: .test-jobs-artifact-common
- image:
registry.gitlab.com/xen-project/xen/tests-artifacts/qemu-system-aarch64:6.0.0-arm64v8
- script:
- - mkdir binaries && cp /qemu-system-arm binaries/qemu-system-arm
- artifacts:
- paths:
- - binaries/qemu-system-arm
- tags:
- - arm64
-
# Jobs below this line
# Build jobs needed for tests
diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
index 008deef98d1e..1722800c1541 100644
--- a/automation/gitlab-ci/test.yaml
+++ b/automation/gitlab-ci/test.yaml
@@ -12,7 +12,6 @@
- project: $ARTIFACTS_REPO
job: alpine-3.18-arm64-rootfs
ref: $ARTIFACTS_BRANCH
- - 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
@@ -21,7 +20,6 @@
- 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
- project: $ARTIFACTS_REPO
diff --git a/automation/scripts/include/xtf-arm64
b/automation/scripts/include/xtf-arm64
index 1a318b7aa0ba..5d851af788a1 100644
--- a/automation/scripts/include/xtf-arm64
+++ b/automation/scripts/include/xtf-arm64
@@ -7,7 +7,7 @@
function xtf_arch_prepare()
{
export FW_PREFIX="${FW_PREFIX:-/usr/lib/u-boot/qemu_arm64/}"
- export QEMU_PREFIX="${QEMU_PREFIX:-${WORKDIR}/}"
+ export QEMU_PREFIX="${QEMU_PREFIX:-}"
export XEN_BINARY="${XEN_BINARY:-${WORKDIR}/xen}"
export XEN_CMDLINE="${XEN_CMDLINE:-loglvl=all noreboot
console_timestamps=boot console=dtuart}"
export XTF_SRC_BRANCH="${XTF_SRC_BRANCH:-xtf-arm}"
@@ -18,9 +18,6 @@ function xtf_arch_prepare()
# Perform arch-specific XTF environment setup.
function xtf_arch_setup()
{
- # QEMU looks for "efi-virtio.rom" even if it is unneeded
- curl -fsSLO https://github.com/qemu/qemu/raw/v5.2.0/pc-bios/efi-virtio.rom
-
# Crude check for local testing
if [ ! -d imagebuilder ]; then
git clone --depth 1 https://gitlab.com/xen-project/imagebuilder.git
@@ -47,7 +44,7 @@ EOF
cp ${XTF_BINARY} ${WORKDIR}/xtf-test
# Generate virt-gicv2.dtb
- ${WORKDIR}/qemu-system-aarch64 \
+ ${QEMU_PREFIX}qemu-system-aarch64 \
-machine virtualization=true \
-cpu cortex-a57 \
-machine type=virt \
diff --git a/automation/scripts/qemu-smoke-dom0-arm32.sh
b/automation/scripts/qemu-smoke-dom0-arm32.sh
index 58797f7d30d3..5dc348c71aa9 100755
--- a/automation/scripts/qemu-smoke-dom0-arm32.sh
+++ b/automation/scripts/qemu-smoke-dom0-arm32.sh
@@ -39,9 +39,7 @@ cp ../zImage ./root
find . | cpio -R 0:0 -H newc -o | gzip > ../initrd.gz
cd ..
-# XXX QEMU looks for "efi-virtio.rom" even if it is unneeded
-curl -fsSLO https://github.com/qemu/qemu/raw/v5.2.0/pc-bios/efi-virtio.rom
-./qemu-system-arm \
+qemu-system-arm \
-machine virt \
-machine virtualization=true \
-smp 4 \
@@ -77,7 +75,7 @@ git clone --depth 1
https://gitlab.com/xen-project/imagebuilder.git
bash imagebuilder/scripts/uboot-script-gen -t tftp -d . -c config
rm -f ${serial_log}
-export TEST_CMD="./qemu-system-arm \
+export TEST_CMD="qemu-system-arm \
-machine virt \
-machine virtualization=true \
-smp 4 \
diff --git a/automation/scripts/qemu-smoke-dom0-arm64.sh
b/automation/scripts/qemu-smoke-dom0-arm64.sh
index 05962bdc0203..1d673f184251 100755
--- a/automation/scripts/qemu-smoke-dom0-arm64.sh
+++ b/automation/scripts/qemu-smoke-dom0-arm64.sh
@@ -57,9 +57,7 @@ chmod +x etc/local.d/xen.start
find . | cpio -R 0:0 -H newc -o | gzip >> ../dom0-rootfs.cpio.gz
cd ../..
-# XXX QEMU looks for "efi-virtio.rom" even if it is unneeded
-curl -fsSLO https://github.com/qemu/qemu/raw/v5.2.0/pc-bios/efi-virtio.rom
-./binaries/qemu-system-aarch64 \
+qemu-system-aarch64 \
-machine virtualization=true \
-cpu cortex-a57 -machine type=virt \
-m 2048 -smp 2 -display none \
@@ -90,7 +88,7 @@ bash imagebuilder/scripts/uboot-script-gen -t tftp -d
binaries/ -c binaries/conf
# Run the test
rm -f smoke.serial
-export TEST_CMD="./binaries/qemu-system-aarch64 \
+export TEST_CMD="qemu-system-aarch64 \
-machine virtualization=true \
-cpu cortex-a57 -machine type=virt \
-m 2048 -monitor none -serial stdio \
diff --git a/automation/scripts/qemu-smoke-dom0less-arm32.sh
b/automation/scripts/qemu-smoke-dom0less-arm32.sh
index 627d890a3926..20e43b4f049d 100755
--- a/automation/scripts/qemu-smoke-dom0less-arm32.sh
+++ b/automation/scripts/qemu-smoke-dom0less-arm32.sh
@@ -78,9 +78,7 @@ chmod +x init
find . | cpio -R 0:0 -H newc -o | gzip > ../initrd.gz
cd ..
-# XXX QEMU looks for "efi-virtio.rom" even if it is unneeded
-curl -fsSLO https://github.com/qemu/qemu/raw/v5.2.0/pc-bios/efi-virtio.rom
-./qemu-system-arm \
+qemu-system-arm \
-machine virt \
-machine virtualization=true \
-smp 4 \
@@ -130,7 +128,7 @@ bash imagebuilder/scripts/uboot-script-gen -t tftp -d . -c
config
# Run the test
rm -f ${serial_log}
-export TEST_CMD="./qemu-system-arm \
+export TEST_CMD="qemu-system-arm \
-machine virt \
-machine virtualization=true \
-smp 4 \
diff --git a/automation/scripts/qemu-smoke-dom0less-arm64.sh
b/automation/scripts/qemu-smoke-dom0less-arm64.sh
index 05c4a6acbb59..a9e99f1ae392 100755
--- a/automation/scripts/qemu-smoke-dom0less-arm64.sh
+++ b/automation/scripts/qemu-smoke-dom0less-arm64.sh
@@ -78,9 +78,7 @@ if [[ "${test_variant}" == "gicv3" ]]; then
domU_check="echo \"${passed}\""
fi
-# XXX QEMU looks for "efi-virtio.rom" even if it is unneeded
-curl -fsSLO https://github.com/qemu/qemu/raw/v5.2.0/pc-bios/efi-virtio.rom
-./binaries/qemu-system-aarch64 \
+qemu-system-aarch64 \
-machine virtualization=true \
-cpu cortex-a57 -machine type=virt,gic-version=$gic_version \
-m 2048 -smp 2 -display none \
@@ -203,7 +201,7 @@ bash imagebuilder/scripts/uboot-script-gen -t tftp -d
binaries/ -c binaries/conf
# Run the test
rm -f smoke.serial
-export TEST_CMD="./binaries/qemu-system-aarch64 \
+export TEST_CMD="qemu-system-aarch64 \
-machine virtualization=true \
-cpu cortex-a57 -machine type=virt,gic-version=$gic_version \
-m 2048 -monitor none -serial stdio \
diff --git
a/automation/tests-artifacts/qemu-system-aarch64/6.0.0-arm64v8.dockerfile
b/automation/tests-artifacts/qemu-system-aarch64/6.0.0-arm64v8.dockerfile
deleted file mode 100644
index e9f5576be7a6..000000000000
--- a/automation/tests-artifacts/qemu-system-aarch64/6.0.0-arm64v8.dockerfile
+++ /dev/null
@@ -1,77 +0,0 @@
-# syntax=docker/dockerfile:1
-FROM --platform=linux/arm64/v8 debian:bookworm
-LABEL maintainer.name="The Xen Project" \
- maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
-
-ENV DEBIAN_FRONTEND=noninteractive
-ENV QEMU_VERSION=6.0.0
-ENV USER root
-
-RUN mkdir /build
-WORKDIR /build
-
-# build depends
-RUN apt-get update && \
- apt-get --quiet --yes install \
- build-essential \
- curl \
- python3 \
- ninja-build \
- pkg-config \
- libglib2.0-dev \
- libpixman-1-dev \
- && \
- \
- curl -fsSLO https://download.qemu.org/qemu-"$QEMU_VERSION".tar.xz && \
- tar xvJf qemu-"$QEMU_VERSION".tar.xz && \
- cd qemu-"$QEMU_VERSION" && \
- ./configure \
- --target-list=arm-softmmu,aarch64-softmmu \
- --enable-system \
- --disable-blobs \
- --disable-bsd-user \
- --disable-debug-info \
- --disable-glusterfs \
- --disable-gtk \
- --disable-guest-agent \
- --disable-linux-user \
- --disable-sdl \
- --disable-spice \
- --disable-tpm \
- --disable-vhost-net \
- --disable-vhost-scsi \
- --disable-vhost-user \
- --disable-vhost-vsock \
- --disable-virtfs \
- --disable-vnc \
- --disable-werror \
- --disable-xen \
- --disable-safe-stack \
- --disable-libssh \
- --disable-opengl \
- --disable-tools \
- --disable-virglrenderer \
- --disable-stack-protector \
- --disable-containers \
- --disable-replication \
- --disable-cloop \
- --disable-dmg \
- --disable-vvfat \
- --disable-vdi \
- --disable-parallels \
- --disable-qed \
- --disable-bochs \
- --disable-qom-cast-debug \
- --disable-vhost-vdpa \
- --disable-vhost-kernel \
- --disable-qcow1 \
- --disable-live-block-migration \
- && \
- make -j$(nproc) && \
- cp ./build/qemu-system-aarch64 / && \
- cp ./build/qemu-system-arm / && \
- cd /build && \
- rm -rf qemu-"$QEMU_VERSION"* && \
- apt-get autoremove -y && \
- apt-get clean && \
- rm -rf /var/lib/apt/lists* /tmp/* /var/tmp/*
--
2.39.5
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |