40e916b4bc
The patch that recently introduced the S390X_RUNNER_AVAILABLE variable
in custom-runners.yml missed that the bottom half of the file is rather
about aarch64 than s390x. Thus rename the S390X_RUNNER_AVAILABLE to
AARCH64_RUNNER_AVAILABLE in those jobs.
Finally mention both variables in our CI documentation, too.
Fixes: c5dd0f0342
("Improve rules for the staging branch")
Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Willian Rampazzo <willianr@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210730143809.717079-4-thuth@redhat.com>
[AJB: moved due to docu changes]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20210806141015.2487502-5-alex.bennee@linaro.org>
239 lines
6.4 KiB
YAML
239 lines
6.4 KiB
YAML
# The CI jobs defined here require GitLab runners installed and
|
|
# registered on machines that match their operating system names,
|
|
# versions and architectures. This is in contrast to the other CI
|
|
# jobs that are intended to run on GitLab's "shared" runners.
|
|
|
|
# Different than the default approach on "shared" runners, based on
|
|
# containers, the custom runners have no such *requirement*, as those
|
|
# jobs should be capable of running on operating systems with no
|
|
# compatible container implementation, or no support from
|
|
# gitlab-runner. To avoid problems that gitlab-runner can cause while
|
|
# reusing the GIT repository, let's enable the clone strategy, which
|
|
# guarantees a fresh repository on each job run.
|
|
variables:
|
|
GIT_STRATEGY: clone
|
|
|
|
# All ubuntu-18.04 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 18.04/20.04"
|
|
ubuntu-18.04-s390x-all-linux-static:
|
|
allow_failure: true
|
|
needs: []
|
|
stage: build
|
|
tags:
|
|
- ubuntu_18.04
|
|
- s390x
|
|
rules:
|
|
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
|
- if: "$S390X_RUNNER_AVAILABLE"
|
|
script:
|
|
# --disable-libssh is needed because of https://bugs.launchpad.net/qemu/+bug/1838763
|
|
# --disable-glusterfs is needed because there's no static version of those libs in distro supplied packages
|
|
- mkdir build
|
|
- cd build
|
|
- ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh
|
|
- make --output-sync -j`nproc`
|
|
- make --output-sync -j`nproc` check V=1
|
|
- make --output-sync -j`nproc` check-tcg V=1
|
|
|
|
ubuntu-18.04-s390x-all:
|
|
allow_failure: true
|
|
needs: []
|
|
stage: build
|
|
tags:
|
|
- ubuntu_18.04
|
|
- s390x
|
|
rules:
|
|
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
|
- if: "$S390X_RUNNER_AVAILABLE"
|
|
script:
|
|
- mkdir build
|
|
- cd build
|
|
- ../configure --disable-libssh
|
|
- make --output-sync -j`nproc`
|
|
- make --output-sync -j`nproc` check V=1
|
|
|
|
ubuntu-18.04-s390x-alldbg:
|
|
allow_failure: true
|
|
needs: []
|
|
stage: build
|
|
tags:
|
|
- ubuntu_18.04
|
|
- s390x
|
|
rules:
|
|
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
|
- if: "$S390X_RUNNER_AVAILABLE"
|
|
script:
|
|
- mkdir build
|
|
- cd build
|
|
- ../configure --enable-debug --disable-libssh
|
|
- make clean
|
|
- make --output-sync -j`nproc`
|
|
- make --output-sync -j`nproc` check V=1
|
|
|
|
ubuntu-18.04-s390x-clang:
|
|
allow_failure: true
|
|
needs: []
|
|
stage: build
|
|
tags:
|
|
- ubuntu_18.04
|
|
- s390x
|
|
rules:
|
|
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
|
when: manual
|
|
- if: "$S390X_RUNNER_AVAILABLE"
|
|
when: manual
|
|
script:
|
|
- mkdir build
|
|
- cd build
|
|
- ../configure --disable-libssh --cc=clang --cxx=clang++ --enable-sanitizers
|
|
- make --output-sync -j`nproc`
|
|
- make --output-sync -j`nproc` check V=1
|
|
|
|
ubuntu-18.04-s390x-tci:
|
|
allow_failure: true
|
|
needs: []
|
|
stage: build
|
|
tags:
|
|
- ubuntu_18.04
|
|
- s390x
|
|
rules:
|
|
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
|
- if: "$S390X_RUNNER_AVAILABLE"
|
|
script:
|
|
- mkdir build
|
|
- cd build
|
|
- ../configure --disable-libssh --enable-tcg-interpreter
|
|
- make --output-sync -j`nproc`
|
|
|
|
ubuntu-18.04-s390x-notcg:
|
|
allow_failure: true
|
|
needs: []
|
|
stage: build
|
|
tags:
|
|
- ubuntu_18.04
|
|
- s390x
|
|
rules:
|
|
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
|
when: manual
|
|
- if: "$S390X_RUNNER_AVAILABLE"
|
|
when: manual
|
|
script:
|
|
- mkdir build
|
|
- cd build
|
|
- ../configure --disable-libssh --disable-tcg
|
|
- make --output-sync -j`nproc`
|
|
- make --output-sync -j`nproc` check V=1
|
|
|
|
# All ubuntu-20.04 jobs should run successfully in an environment
|
|
# setup by the scripts/ci/setup/qemu/build-environment.yml task
|
|
# "Install basic packages to build QEMU on Ubuntu 18.04/20.04"
|
|
ubuntu-20.04-aarch64-all-linux-static:
|
|
allow_failure: true
|
|
needs: []
|
|
stage: build
|
|
tags:
|
|
- ubuntu_20.04
|
|
- aarch64
|
|
rules:
|
|
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
|
- if: "$AARCH64_RUNNER_AVAILABLE"
|
|
script:
|
|
# --disable-libssh is needed because of https://bugs.launchpad.net/qemu/+bug/1838763
|
|
# --disable-glusterfs is needed because there's no static version of those libs in distro supplied packages
|
|
- mkdir build
|
|
- cd build
|
|
- ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh
|
|
- make --output-sync -j`nproc`
|
|
- make --output-sync -j`nproc` check V=1
|
|
- make --output-sync -j`nproc` check-tcg V=1
|
|
|
|
ubuntu-20.04-aarch64-all:
|
|
allow_failure: true
|
|
needs: []
|
|
stage: build
|
|
tags:
|
|
- ubuntu_20.04
|
|
- aarch64
|
|
rules:
|
|
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
|
- if: "$AARCH64_RUNNER_AVAILABLE"
|
|
script:
|
|
- mkdir build
|
|
- cd build
|
|
- ../configure --disable-libssh
|
|
- make --output-sync -j`nproc`
|
|
- make --output-sync -j`nproc` check V=1
|
|
|
|
ubuntu-20.04-aarch64-alldbg:
|
|
allow_failure: true
|
|
needs: []
|
|
stage: build
|
|
tags:
|
|
- ubuntu_20.04
|
|
- aarch64
|
|
rules:
|
|
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
|
- if: "$AARCH64_RUNNER_AVAILABLE"
|
|
script:
|
|
- mkdir build
|
|
- cd build
|
|
- ../configure --enable-debug --disable-libssh
|
|
- make clean
|
|
- make --output-sync -j`nproc`
|
|
- make --output-sync -j`nproc` check V=1
|
|
|
|
ubuntu-20.04-aarch64-clang:
|
|
allow_failure: true
|
|
needs: []
|
|
stage: build
|
|
tags:
|
|
- ubuntu_20.04
|
|
- aarch64
|
|
rules:
|
|
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
|
when: manual
|
|
- if: "$AARCH64_RUNNER_AVAILABLE"
|
|
when: manual
|
|
script:
|
|
- mkdir build
|
|
- cd build
|
|
- ../configure --disable-libssh --cc=clang-10 --cxx=clang++-10 --enable-sanitizers
|
|
- make --output-sync -j`nproc`
|
|
- make --output-sync -j`nproc` check V=1
|
|
|
|
ubuntu-20.04-aarch64-tci:
|
|
allow_failure: true
|
|
needs: []
|
|
stage: build
|
|
tags:
|
|
- ubuntu_20.04
|
|
- aarch64
|
|
rules:
|
|
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
|
- if: "$AARCH64_RUNNER_AVAILABLE"
|
|
script:
|
|
- mkdir build
|
|
- cd build
|
|
- ../configure --disable-libssh --enable-tcg-interpreter
|
|
- make --output-sync -j`nproc`
|
|
|
|
ubuntu-20.04-aarch64-notcg:
|
|
allow_failure: true
|
|
needs: []
|
|
stage: build
|
|
tags:
|
|
- ubuntu_20.04
|
|
- aarch64
|
|
rules:
|
|
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
|
when: manual
|
|
- if: "$AARCH64_RUNNER_AVAILABLE"
|
|
when: manual
|
|
script:
|
|
- mkdir build
|
|
- cd build
|
|
- ../configure --disable-libssh --disable-tcg
|
|
- make --output-sync -j`nproc`
|
|
- make --output-sync -j`nproc` check V=1
|