|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 11/12] CI: Swap to debian for riscv64 build and test
On Thu, 2024-07-11 at 12:15 +0100, Andrew Cooper wrote:
> The containers are both much smaller, with stable toolchains over
> time, and
> this at least means we're not doing all testing with a single
> compiler.
>
> Rename the jobs to follow to sort coherently ($DISTRO-$VERSION-$ARCH-
> *) and
> reposition the jobs to optimise starting the smoke test.
>
> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
LGTM: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx>
~ Oleksii
> ---
> CC: Anthony PERARD <anthony.perard@xxxxxxxxxx>
> CC: Juergen Gross <jgross@xxxxxxxx>
> CC: Roger Pau Monné <roger.pau@xxxxxxxxxx>
> CC: Jan Beulich <JBeulich@xxxxxxxx>
> CC: Stefano Stabellini <sstabellini@xxxxxxxxxx>
> CC: Julien Grall <julien@xxxxxxx>
> CC: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx>
> CC: Shawn Anastasio <sanastasio@xxxxxxxxxxxxxxxxxxxxx>
> ---
> .../archlinux/current-riscv64.dockerfile | 22 -----
> automation/gitlab-ci/build.yaml | 83 +++++++++++------
> --
> automation/gitlab-ci/test.yaml | 4 +-
> automation/scripts/containerize | 3 +-
> 4 files changed, 52 insertions(+), 60 deletions(-)
> delete mode 100644 automation/build/archlinux/current-
> riscv64.dockerfile
>
> diff --git a/automation/build/archlinux/current-riscv64.dockerfile
> b/automation/build/archlinux/current-riscv64.dockerfile
> deleted file mode 100644
> index f7770bf82a78..000000000000
> --- a/automation/build/archlinux/current-riscv64.dockerfile
> +++ /dev/null
> @@ -1,22 +0,0 @@
> -# syntax=docker/dockerfile:1
> -FROM --platform=linux/amd64 archlinux
> -LABEL maintainer.name="The Xen Project" \
> - maintainer.email="xen-devel@xxxxxxxxxxxxxxxxxxxx"
> -
> -# Packages needed for the build
> -RUN pacman --noconfirm --needed -Syu \
> - base-devel \
> - git \
> - inetutils \
> - riscv64-linux-gnu-binutils \
> - riscv64-linux-gnu-gcc \
> - riscv64-linux-gnu-glibc \
> - # For test phase
> - qemu-system-riscv
> -
> -# Add compiler path
> -ENV CROSS_COMPILE=riscv64-linux-gnu-
> -
> -RUN useradd --create-home user
> -USER user
> -WORKDIR /build
> diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-
> ci/build.yaml
> index e081664c4e95..4b9d80cc5632 100644
> --- a/automation/gitlab-ci/build.yaml
> +++ b/automation/gitlab-ci/build.yaml
> @@ -357,6 +357,13 @@ debian-12-ppc64le-gcc-debug:
> KBUILD_DEFCONFIG: ppc64_defconfig
> HYPERVISOR_ONLY: y
>
> +debian-12-riscv64-gcc-debug:
> + extends: .gcc-riscv64-cross-build-debug
> + variables:
> + CONTAINER: debian:12-riscv64
> + KBUILD_DEFCONFIG: tiny64_defconfig
> + HYPERVISOR_ONLY: y
> +
> # Arm32 cross-build
>
> debian-bookworm-gcc-arm32:
> @@ -458,41 +465,6 @@ alpine-3.18-gcc-debug-arm64-earlyprintk:
> CONFIG_EARLY_UART_CHOICE_PL011=y
> CONFIG_EARLY_UART_BASE_ADDRESS=0x9000000
>
> -# RISC-V 64 cross-build
> -.riscv-fixed-randconfig:
> - variables: &riscv-fixed-randconfig
> - EXTRA_FIXED_RANDCONFIG: |
> - CONFIG_BOOT_TIME_CPUPOOLS=n
> - CONFIG_COVERAGE=n
> - CONFIG_EXPERT=y
> - CONFIG_GRANT_TABLE=n
> - CONFIG_MEM_ACCESS=n
> - CONFIG_PERF_COUNTERS=n
> - CONFIG_LIVEPATCH=n
> - CONFIG_XSM=n
> -
> -archlinux-current-gcc-riscv64:
> - extends: .gcc-riscv64-cross-build
> - variables:
> - CONTAINER: archlinux:current-riscv64
> - KBUILD_DEFCONFIG: tiny64_defconfig
> - HYPERVISOR_ONLY: y
> -
> -archlinux-current-gcc-riscv64-debug:
> - extends: .gcc-riscv64-cross-build-debug
> - variables:
> - CONTAINER: archlinux:current-riscv64
> - KBUILD_DEFCONFIG: tiny64_defconfig
> - HYPERVISOR_ONLY: y
> -
> -archlinux-current-gcc-riscv64-randconfig:
> - extends: .gcc-riscv64-cross-build
> - variables:
> - CONTAINER: archlinux:current-riscv64
> - KBUILD_DEFCONFIG: tiny64_defconfig
> - RANDCONFIG: y
> - <<: *riscv-fixed-randconfig
> -
> # Yocto test jobs
> yocto-qemuarm64:
> extends: .yocto-test-arm64
> @@ -739,3 +711,44 @@ debian-12-ppc64le-gcc:
> KBUILD_DEFCONFIG: ppc64_defconfig
> HYPERVISOR_ONLY: y
>
> +# RISC-V 64 cross-build
> +debian-11-riscv64-gcc:
> + extends: .gcc-riscv64-cross-build
> + variables:
> + CONTAINER: debian:11-riscv64
> + KBUILD_DEFCONFIG: tiny64_defconfig
> + HYPERVISOR_ONLY: y
> +
> +debian-11-riscv64-gcc-debug:
> + extends: .gcc-riscv64-cross-build-debug
> + variables:
> + CONTAINER: debian:11-riscv64
> + KBUILD_DEFCONFIG: tiny64_defconfig
> + HYPERVISOR_ONLY: y
> +
> +debian-12-riscv64-gcc:
> + extends: .gcc-riscv64-cross-build
> + variables:
> + CONTAINER: debian:12-riscv64
> + KBUILD_DEFCONFIG: tiny64_defconfig
> + HYPERVISOR_ONLY: y
> +
> +.riscv-fixed-randconfig:
> + variables: &riscv-fixed-randconfig
> + EXTRA_FIXED_RANDCONFIG: |
> + CONFIG_BOOT_TIME_CPUPOOLS=n
> + CONFIG_COVERAGE=n
> + CONFIG_EXPERT=y
> + CONFIG_GRANT_TABLE=n
> + CONFIG_MEM_ACCESS=n
> + CONFIG_PERF_COUNTERS=n
> + CONFIG_LIVEPATCH=n
> + CONFIG_XSM=n
> +
> +debian-12-riscv64-gcc-randconfig:
> + extends: .gcc-riscv64-cross-build
> + variables:
> + CONTAINER: debian:12-riscv64
> + KBUILD_DEFCONFIG: tiny64_defconfig
> + RANDCONFIG: y
> + <<: *riscv-fixed-randconfig
> diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-
> ci/test.yaml
> index 70c946f87799..f7e1753ead34 100644
> --- a/automation/gitlab-ci/test.yaml
> +++ b/automation/gitlab-ci/test.yaml
> @@ -56,7 +56,7 @@
> .qemu-riscv64:
> extends: .test-jobs-common
> variables:
> - CONTAINER: archlinux:current-riscv64
> + CONTAINER: debian:12
> LOGFILE: qemu-smoke-riscv64.log
> artifacts:
> paths:
> @@ -440,7 +440,7 @@ qemu-smoke-riscv64-gcc:
> script:
> - ./automation/scripts/qemu-smoke-riscv64.sh 2>&1 | tee
> ${LOGFILE}
> needs:
> - - archlinux-current-gcc-riscv64-debug
> + - debian-12-riscv64-gcc-debug
>
> qemu-smoke-ppc64le-powernv9-gcc:
> extends: .qemu-ppc64le
> diff --git a/automation/scripts/containerize
> b/automation/scripts/containerize
> index 5c3f6782d9cd..6dbf55c8f89a 100755
> --- a/automation/scripts/containerize
> +++ b/automation/scripts/containerize
> @@ -27,12 +27,13 @@ case "_${CONTAINER}" in
> _alpine) CONTAINER="${BASE}/alpine:3.18" ;;
> _alpine-arm64v8) CONTAINER="${BASE}/alpine:3.18-arm64v8" ;;
> _archlinux|_arch) CONTAINER="${BASE}/archlinux:current" ;;
> - _riscv64) CONTAINER="${BASE}/archlinux:current-riscv64" ;;
> _centos7) CONTAINER="${BASE}/centos:7" ;;
> _fedora) CONTAINER="${BASE}/fedora:29";;
> _focal) CONTAINER="${BASE}/ubuntu:focal" ;;
> _bullseye-ppc64le) CONTAINER="${BASE}/debian:11-ppc64le" ;;
> _bookworm-ppc64le) CONTAINER="${BASE}/debian:12-ppc64le" ;;
> + _bullseye-riscv64) CONTAINER="${BASE}/debian:11-riscv64" ;;
> + _bookworm-riscv64) CONTAINER="${BASE}/debian:12-riscv64" ;;
> _buster-gcc-ibt) CONTAINER="${BASE}/debian:buster-gcc-ibt" ;;
> _bookworm|_) CONTAINER="${BASE}/debian:bookworm" ;;
> _bookworm-i386) CONTAINER="${BASE}/debian:bookworm-i386" ;;
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |