mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 10:11:27 +01:00
This tests if QEMU works in PVH dom0. QEMU in dom0 requires enabling TUN in the kernel, so do that too. Add it to both x86 runners, similar to the PVH domU test. Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com> Release-Acked-By: Oleksii Kurochko <oleksii.kurochko@gmail.com> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
452 lines
11 KiB
YAML
452 lines
11 KiB
YAML
.test-jobs-common:
|
|
stage: test
|
|
image: registry.gitlab.com/xen-project/xen/${CONTAINER}
|
|
|
|
.arm64-test-needs: &arm64-test-needs
|
|
- alpine-3.18-arm64-rootfs-export
|
|
- kernel-5.19-arm64-export
|
|
- qemu-system-aarch64-6.0.0-arm64-export
|
|
|
|
.arm32-test-needs: &arm32-test-needs
|
|
- qemu-system-aarch64-6.0.0-arm32-export
|
|
|
|
.x86-64-test-needs: &x86-64-test-needs
|
|
- alpine-3.18-rootfs-export
|
|
- kernel-6.1.19-export
|
|
|
|
.qemu-arm64:
|
|
extends: .test-jobs-common
|
|
variables:
|
|
CONTAINER: debian:bookworm-arm64v8
|
|
LOGFILE: qemu-smoke-arm64.log
|
|
artifacts:
|
|
paths:
|
|
- smoke.serial
|
|
- '*.log'
|
|
when: always
|
|
tags:
|
|
- arm64
|
|
|
|
.qemu-arm32:
|
|
extends: .test-jobs-common
|
|
variables:
|
|
CONTAINER: debian:bookworm-arm64v8
|
|
LOGFILE: qemu-smoke-arm32.log
|
|
artifacts:
|
|
paths:
|
|
- smoke.serial
|
|
- '*.log'
|
|
when: always
|
|
tags:
|
|
- arm64
|
|
|
|
.qemu-x86-64:
|
|
extends: .test-jobs-common
|
|
variables:
|
|
CONTAINER: debian:bookworm
|
|
LOGFILE: qemu-smoke-x86-64.log
|
|
artifacts:
|
|
paths:
|
|
- smoke.serial
|
|
- '*.log'
|
|
when: always
|
|
tags:
|
|
- x86_64
|
|
|
|
.qemu-riscv64:
|
|
extends: .test-jobs-common
|
|
variables:
|
|
CONTAINER: archlinux:current-riscv64
|
|
LOGFILE: qemu-smoke-riscv64.log
|
|
artifacts:
|
|
paths:
|
|
- smoke.serial
|
|
- '*.log'
|
|
when: always
|
|
tags:
|
|
- x86_64
|
|
|
|
.qemu-ppc64le:
|
|
extends: .test-jobs-common
|
|
variables:
|
|
CONTAINER: debian:bullseye-ppc64le
|
|
LOGFILE: qemu-smoke-ppc64le.log
|
|
artifacts:
|
|
paths:
|
|
- smoke.serial
|
|
- '*.log'
|
|
when: always
|
|
tags:
|
|
- x86_64
|
|
|
|
.xilinx-arm64:
|
|
extends: .test-jobs-common
|
|
variables:
|
|
CONTAINER: ubuntu:xenial-xilinx
|
|
LOGFILE: qemu-smoke-xilinx.log
|
|
artifacts:
|
|
paths:
|
|
- smoke.serial
|
|
- '*.log'
|
|
- '*.dtb'
|
|
when: always
|
|
only:
|
|
variables:
|
|
- $XILINX_JOBS == "true" && $CI_COMMIT_REF_PROTECTED == "true"
|
|
tags:
|
|
- xilinx
|
|
|
|
.adl-x86-64:
|
|
extends: .test-jobs-common
|
|
variables:
|
|
# the test controller runs on RPi4
|
|
CONTAINER: alpine:3.18-arm64v8
|
|
LOGFILE: smoke-test.log
|
|
PCIDEV: "03:00.0"
|
|
PCIDEV_INTR: "MSI-X"
|
|
CONSOLE_OPTS: "console=com1 com1=115200,8n1"
|
|
artifacts:
|
|
paths:
|
|
- smoke.serial
|
|
- '*.log'
|
|
when: always
|
|
only:
|
|
variables:
|
|
- $QUBES_JOBS == "true" && $CI_COMMIT_REF_PROTECTED == "true"
|
|
tags:
|
|
- qubes-hw2
|
|
|
|
.zen3p-x86-64:
|
|
# it's really similar to the above
|
|
extends: .adl-x86-64
|
|
variables:
|
|
PCIDEV: "01:00.0"
|
|
PCIDEV_INTR: "MSI-X"
|
|
CONSOLE_OPTS: "console=com1 com1=115200,8n1,pci,msi"
|
|
tags:
|
|
- qubes-hw11
|
|
|
|
# Test jobs
|
|
build-each-commit-gcc:
|
|
extends: .test-jobs-common
|
|
variables:
|
|
CONTAINER: debian:bookworm
|
|
XEN_TARGET_ARCH: x86_64
|
|
CC: gcc
|
|
script:
|
|
- BASE=${BASE_SHA:-${CI_COMMIT_BEFORE_SHA}} TIP=${TIP_SHA:-${CI_COMMIT_SHA}} ./automation/gitlab-ci/build-each-commit.sh 2>&1 | tee build-each-commit-gcc.log
|
|
artifacts:
|
|
paths:
|
|
- '*.log'
|
|
when: always
|
|
needs: []
|
|
tags:
|
|
- x86_64
|
|
|
|
xilinx-smoke-dom0less-arm64-gcc-debug:
|
|
extends: .xilinx-arm64
|
|
script:
|
|
- ./automation/scripts/xilinx-smoke-dom0less-arm64.sh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm64-test-needs
|
|
- alpine-3.18-gcc-debug-arm64
|
|
|
|
xilinx-smoke-dom0less-arm64-gcc-debug-gem-passthrough:
|
|
extends: .xilinx-arm64
|
|
script:
|
|
- ./automation/scripts/xilinx-smoke-dom0less-arm64.sh gem-passthrough 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm64-test-needs
|
|
- alpine-3.18-gcc-debug-arm64
|
|
|
|
adl-smoke-x86-64-gcc-debug:
|
|
extends: .adl-x86-64
|
|
script:
|
|
- ./automation/scripts/qubes-x86-64.sh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *x86-64-test-needs
|
|
- alpine-3.18-gcc-debug
|
|
|
|
adl-smoke-x86-64-dom0pvh-gcc-debug:
|
|
extends: .adl-x86-64
|
|
script:
|
|
- ./automation/scripts/qubes-x86-64.sh dom0pvh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *x86-64-test-needs
|
|
- alpine-3.18-gcc-debug
|
|
|
|
adl-smoke-x86-64-dom0pvh-hvm-gcc-debug:
|
|
extends: .adl-x86-64
|
|
script:
|
|
- ./automation/scripts/qubes-x86-64.sh dom0pvh-hvm 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *x86-64-test-needs
|
|
- alpine-3.18-gcc-debug
|
|
|
|
adl-suspend-x86-64-gcc-debug:
|
|
extends: .adl-x86-64
|
|
script:
|
|
- ./automation/scripts/qubes-x86-64.sh s3 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *x86-64-test-needs
|
|
- alpine-3.18-gcc-debug
|
|
|
|
adl-pci-pv-x86-64-gcc-debug:
|
|
extends: .adl-x86-64
|
|
script:
|
|
- ./automation/scripts/qubes-x86-64.sh pci-pv 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *x86-64-test-needs
|
|
- alpine-3.18-gcc-debug
|
|
|
|
adl-pci-hvm-x86-64-gcc-debug:
|
|
extends: .adl-x86-64
|
|
script:
|
|
- ./automation/scripts/qubes-x86-64.sh pci-hvm 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *x86-64-test-needs
|
|
- alpine-3.18-gcc-debug
|
|
|
|
zen3p-smoke-x86-64-gcc-debug:
|
|
extends: .zen3p-x86-64
|
|
script:
|
|
- ./automation/scripts/qubes-x86-64.sh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *x86-64-test-needs
|
|
- alpine-3.18-gcc-debug
|
|
|
|
zen3p-smoke-x86-64-dom0pvh-gcc-debug:
|
|
extends: .zen3p-x86-64
|
|
script:
|
|
- ./automation/scripts/qubes-x86-64.sh dom0pvh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *x86-64-test-needs
|
|
- alpine-3.18-gcc-debug
|
|
|
|
zen3p-smoke-x86-64-dom0pvh-hvm-gcc-debug:
|
|
extends: .zen3p-x86-64
|
|
script:
|
|
- ./automation/scripts/qubes-x86-64.sh dom0pvh-hvm 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *x86-64-test-needs
|
|
- alpine-3.18-gcc-debug
|
|
|
|
zen3p-pci-hvm-x86-64-gcc-debug:
|
|
extends: .zen3p-x86-64
|
|
script:
|
|
- ./automation/scripts/qubes-x86-64.sh pci-hvm 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *x86-64-test-needs
|
|
- alpine-3.18-gcc-debug
|
|
|
|
qemu-smoke-dom0-arm64-gcc:
|
|
extends: .qemu-arm64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0-arm64.sh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm64-test-needs
|
|
- alpine-3.18-gcc-arm64
|
|
|
|
qemu-smoke-dom0-arm64-gcc-debug:
|
|
extends: .qemu-arm64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0-arm64.sh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm64-test-needs
|
|
- alpine-3.18-gcc-debug-arm64
|
|
|
|
qemu-smoke-dom0less-arm64-gcc:
|
|
extends: .qemu-arm64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm64.sh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm64-test-needs
|
|
- alpine-3.18-gcc-arm64
|
|
|
|
qemu-smoke-dom0less-arm64-gcc-debug:
|
|
extends: .qemu-arm64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm64.sh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm64-test-needs
|
|
- alpine-3.18-gcc-debug-arm64
|
|
|
|
qemu-smoke-dom0less-arm64-gcc-debug-gicv3:
|
|
extends: .qemu-arm64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm64.sh gicv3 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm64-test-needs
|
|
- alpine-3.18-gcc-debug-arm64
|
|
|
|
qemu-smoke-dom0less-arm64-gcc-debug-staticmem:
|
|
extends: .qemu-arm64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-mem 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm64-test-needs
|
|
- alpine-3.18-gcc-debug-arm64-staticmem
|
|
|
|
qemu-smoke-dom0less-arm64-gcc-debug-staticheap:
|
|
extends: .qemu-arm64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-heap 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm64-test-needs
|
|
- alpine-3.18-gcc-debug-arm64
|
|
|
|
qemu-smoke-dom0less-arm64-gcc-debug-static-shared-mem:
|
|
extends: .qemu-arm64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-shared-mem 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm64-test-needs
|
|
- alpine-3.18-gcc-debug-arm64-static-shared-mem
|
|
|
|
qemu-smoke-dom0less-arm64-gcc-debug-boot-cpupools:
|
|
extends: .qemu-arm64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm64.sh boot-cpupools 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm64-test-needs
|
|
- alpine-3.18-gcc-debug-arm64-boot-cpupools
|
|
|
|
qemu-smoke-dom0less-arm64-gcc-debug-earlyprintk:
|
|
extends: .qemu-arm64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm64.sh earlyprintk 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm64-test-needs
|
|
- alpine-3.18-gcc-debug-arm64-earlyprintk
|
|
|
|
qemu-xtf-dom0less-arm64-gcc-hyp-xen-version:
|
|
extends: .qemu-arm64
|
|
script:
|
|
- ./automation/scripts/qemu-xtf-dom0less-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE}
|
|
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-dom0less-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- alpine-3.18-gcc-debug-arm64
|
|
- qemu-system-aarch64-6.0.0-arm64-export
|
|
|
|
qemu-smoke-dom0-arm32-gcc:
|
|
extends: .qemu-arm32
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0-arm32.sh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm32-test-needs
|
|
- yocto-qemuarm
|
|
|
|
qemu-smoke-dom0less-arm32-gcc:
|
|
extends: .qemu-arm32
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm32.sh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm32-test-needs
|
|
- debian-bookworm-gcc-arm32
|
|
|
|
qemu-smoke-dom0less-arm32-gcc-debug:
|
|
extends: .qemu-arm32
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm32.sh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm32-test-needs
|
|
- debian-bookworm-gcc-arm32-debug
|
|
|
|
qemu-smoke-dom0less-arm32-gcc-debug-staticmem:
|
|
extends: .qemu-arm32
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm32.sh static-mem 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm32-test-needs
|
|
- debian-bookworm-gcc-arm32-debug-staticmem
|
|
|
|
qemu-smoke-dom0less-arm32-gcc-debug-gzip:
|
|
extends: .qemu-arm32
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm32.sh gzip 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm32-test-needs
|
|
- debian-bookworm-gcc-arm32-debug
|
|
|
|
qemu-smoke-dom0less-arm32-gcc-without-dom0:
|
|
extends: .qemu-arm32
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm32.sh without-dom0 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm32-test-needs
|
|
- debian-bookworm-gcc-arm32
|
|
|
|
qemu-smoke-dom0less-arm32-gcc-debug-without-dom0:
|
|
extends: .qemu-arm32
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm32.sh without-dom0 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm32-test-needs
|
|
- debian-bookworm-gcc-arm32-debug
|
|
|
|
qemu-smoke-dom0less-arm32-gcc-debug-earlyprintk:
|
|
extends: .qemu-arm32
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-dom0less-arm32.sh earlyprintk 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *arm32-test-needs
|
|
- debian-bookworm-gcc-arm32-debug-earlyprintk
|
|
|
|
qemu-alpine-x86_64-gcc:
|
|
extends: .qemu-x86-64
|
|
script:
|
|
- ./automation/scripts/qemu-alpine-x86_64.sh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- *x86-64-test-needs
|
|
- alpine-3.18-gcc
|
|
|
|
qemu-smoke-x86-64-gcc:
|
|
extends: .qemu-x86-64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-x86-64.sh pv 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- debian-stretch-gcc-debug
|
|
|
|
qemu-smoke-x86-64-clang:
|
|
extends: .qemu-x86-64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-x86-64.sh pv 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- debian-bookworm-clang-debug
|
|
|
|
qemu-smoke-x86-64-gcc-pvh:
|
|
extends: .qemu-x86-64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-x86-64.sh pvh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- debian-stretch-gcc-debug
|
|
|
|
qemu-smoke-x86-64-clang-pvh:
|
|
extends: .qemu-x86-64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-x86-64.sh pvh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- debian-bookworm-clang-debug
|
|
|
|
qemu-smoke-riscv64-gcc:
|
|
extends: .qemu-riscv64
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-riscv64.sh 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- archlinux-current-gcc-riscv64-debug
|
|
|
|
qemu-smoke-ppc64le-powernv9-gcc:
|
|
extends: .qemu-ppc64le
|
|
script:
|
|
- ./automation/scripts/qemu-smoke-ppc64le.sh powernv9 2>&1 | tee ${LOGFILE}
|
|
needs:
|
|
- qemu-system-ppc64-8.1.0-ppc64-export
|
|
- debian-bullseye-gcc-ppc64le-debug
|