This is a plain configure build but I only run a subset of the tests until the kinks have been worked out.
Reviewed-by: Daniel P. Berrangé <[email protected]> Message-ID: <[email protected]> Signed-off-by: Alex Bennée <[email protected]> --- v3 - use QEMU_CI_UPSTREAM when checking namespace --- docs/devel/testing/ci-jobs.rst.inc | 6 +++ .gitlab-ci.d/custom-runners.yml | 1 + .../custom-runners/debian-13-ppc64le.yml | 41 +++++++++++++++++++ 3 files changed, 48 insertions(+) create mode 100644 .gitlab-ci.d/custom-runners/debian-13-ppc64le.yml diff --git a/docs/devel/testing/ci-jobs.rst.inc b/docs/devel/testing/ci-jobs.rst.inc index b92d372a0a9..f1c70344ece 100644 --- a/docs/devel/testing/ci-jobs.rst.inc +++ b/docs/devel/testing/ci-jobs.rst.inc @@ -174,6 +174,12 @@ If you've got access to an IBM Z host that can be used as a gitlab-CI runner, you can set this variable to enable the tests that require this kind of host. The runner should be tagged with "s390x". +PPC64LE_RUNNER_AVAILABLE +~~~~~~~~~~~~~~~~~~~~~~~~ +If you've got access to an PPC64LE host that can be used as a gitlab-CI +runner, you can set this variable to enable the tests that require this +kind of host. The runner should be tagged with "ppc64le". + CCACHE_DISABLE ~~~~~~~~~~~~~~ The jobs are configured to use "ccache" by default since this typically diff --git a/.gitlab-ci.d/custom-runners.yml b/.gitlab-ci.d/custom-runners.yml index 142fbf4a242..3e28e48c97c 100644 --- a/.gitlab-ci.d/custom-runners.yml +++ b/.gitlab-ci.d/custom-runners.yml @@ -31,3 +31,4 @@ include: - local: '/.gitlab-ci.d/custom-runners/ubuntu-24.04-s390x.yml' - local: '/.gitlab-ci.d/custom-runners/ubuntu-24.04-aarch64.yml' + - local: '/.gitlab-ci.d/custom-runners/debian-13-ppc64le.yml' diff --git a/.gitlab-ci.d/custom-runners/debian-13-ppc64le.yml b/.gitlab-ci.d/custom-runners/debian-13-ppc64le.yml new file mode 100644 index 00000000000..e088c3b67b7 --- /dev/null +++ b/.gitlab-ci.d/custom-runners/debian-13-ppc64le.yml @@ -0,0 +1,41 @@ +# All jobs should run successfully in an environment setup by the +# scripts/ci/setup/build-environment.yml task: +# "Install basic packages to build QEMU on Ubuntu/Debian" + +.debian_ppc64le_template: + extends: .custom_runner_template + needs: [] + stage: build + tags: + - debian_13 + - ppc64le + rules: + - if: '$CI_PROJECT_NAMESPACE == $QEMU_CI_UPSTREAM && $CI_COMMIT_BRANCH =~ /^staging/' + - if: "$PPC64LE_RUNNER_AVAILABLE" + before_script: + - source scripts/ci/gitlab-ci-section + - section_start setup "Pre-script setup" + - JOBS=$(expr $(nproc) - 2) + - section_end setup + script: + - mkdir build + - cd build + - section_start configure "Running configure" + - ../configure $CONFIGURE_ARGS || + { cat config.log meson-logs/meson-log.txt && exit 1; } + - section_end configure + - section_start build "Building QEMU" + - make --output-sync -j"$JOBS" + - section_end build + - section_start test "Running tests" + - if test -n "$MAKE_CHECK_ARGS"; + then + make -j"$JOBS" $MAKE_CHECK_ARGS ; + fi + - section_end test + +debian-13-ppc64le-default: + extends: .debian_ppc64le_template + variables: + # qtest currently fails: https://gitlab.com/qemu-project/qemu/-/issues/3207 + MAKE_CHECK_ARGS: check-unit check-tcg check-softfloat -- 2.47.3
