* Document GitLab custom CI/CD variables
* Fix 'when:' condition in gitlab-CI jobs * Disable tests in the gitlab-CI that fail due to out-of-memory conditions * Allow pushing to "staging" again for maintainers without s390x access * Fix migration-test build failure on SPARC * Compile without "pie" on Haiku -----BEGIN PGP SIGNATURE----- iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmECR+0RHHRodXRoQHJl ZGhhdC5jb20ACgkQLtnXdP5wLbVwpg//ToLZTe+Op6ZTUkFwVjBEqksEcXJV1Dgb XFdA9rQ8c8CxLBFiWF8gnGgHZcnoqPEh7t29xLbSEivp25Al1QuaoM8J38igz0Tu 4DX6LGl4zTbRVMIiEC8+l87pYC9n3RsojFV47qc9dnL4oMYEPTDw50egbSXnls1u bTbLyUETcRn/6QTMgZcK5PWOxAAci+PyHuYXXt/TKVGUtc78ZqOd400OcgmlrKcJ IL6H9o66mjtLBsmaVcdl22RGipfvdkBBPUWNGS4aBfBvQFSTz+ROCG50O0hcurYt D1rZuLF4flX0QaSzTCbXch5fulDGRagPiV8cQyn28QA9wpjaI8mHs5K43VG+qvp3 4zqbvZIzEGbraHIxPXmv7qV8kDvPxIhjVkv2/aZAiap/pEOT14lG3Zswi2F1vs9I bY03UXa+k09uUM6W0h9TiBuwaoROrsGWgj3cfIvzlIqCDvOv/GWhcjvyU8kjf5sd UfV8qu/YnNWARPH0KWQK0T5bvsNa/Sjkza7nCbk47GbagPvg1oOPPy+sbgdOWOiJ h2NeBfgHC35wa6p0H1cUbMBtx714WElV+xp1uKh/ehXZY8Vhv0y0jhfJIMt5c2v9 WgJjdwLDKaHqfHiLNBGMujLywL+5LDBvc0+6AnAf3pN7Js6/PzUJShc5aTkJpMw1 NOe+ds8HpLk= =EHu9 -----END PGP SIGNATURE----- Merge remote-tracking branch 'remotes/thuth-gitlab/tags/pull-request-2021-07-29' into staging * Document GitLab custom CI/CD variables * Fix 'when:' condition in gitlab-CI jobs * Disable tests in the gitlab-CI that fail due to out-of-memory conditions * Allow pushing to "staging" again for maintainers without s390x access * Fix migration-test build failure on SPARC * Compile without "pie" on Haiku # gpg: Signature made Thu 29 Jul 2021 07:17:17 BST # gpg: using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5 # gpg: issuer "thuth@redhat.com" # gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [full] # gpg: aka "Thomas Huth <thuth@redhat.com>" [full] # gpg: aka "Thomas Huth <huth@tuxfamily.org>" [full] # gpg: aka "Thomas Huth <th.huth@posteo.de>" [unknown] # Primary key fingerprint: 27B8 8847 EEE0 2501 18F3 EAB9 2ED9 D774 FE70 2DB5 * remotes/thuth-gitlab/tags/pull-request-2021-07-29: configure script fix for Haiku tests: Fix migration-test build failure for sparc gitlab-ci.d/custom-runners: Improve rules for the staging branch gitlab-ci.d/buildtest: Mark the aarch64 and ppc64-s390x CFI jobs as manual gitlab-ci.d/buildtest: Disable iotests 197 and 215 gitlab-ci: Fix 'when:' condition in OpenSBI jobs gitlab-ci: Fix 'when:' condition in EDK2 jobs gitlab-ci: Fix 'when:' condition in acceptance_test_job_template docs: Document GitLab custom CI/CD variables Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
commit
3521ade351
@ -73,9 +73,9 @@
|
||||
# in its namespace setting or via git-push option, see documentation
|
||||
# in /.gitlab-ci.yml of this repository).
|
||||
- if: '$CI_PROJECT_NAMESPACE == "qemu-project"'
|
||||
when: always
|
||||
when: on_success
|
||||
- if: '$QEMU_CI_AVOCADO_TESTING'
|
||||
when: always
|
||||
when: on_success
|
||||
# Otherwise, set to manual (the jobs are created but not run).
|
||||
- when: manual
|
||||
allow_failure: true
|
||||
|
@ -305,10 +305,10 @@ build-tcg-disabled:
|
||||
- cd tests/qemu-iotests/
|
||||
- ./check -raw 001 002 003 004 005 008 009 010 011 012 021 025 032 033 048
|
||||
052 063 077 086 101 104 106 113 148 150 151 152 157 159 160 163
|
||||
170 171 183 184 192 194 197 208 215 221 222 226 227 236 253 277
|
||||
170 171 183 184 192 194 208 221 222 226 227 236 253 277
|
||||
- ./check -qcow2 028 051 056 057 058 065 068 082 085 091 095 096 102 122
|
||||
124 132 139 142 144 145 151 152 155 157 165 194 196 197 200 202
|
||||
208 209 215 216 218 222 227 234 246 247 248 250 254 255 257 258
|
||||
124 132 139 142 144 145 151 152 155 157 165 194 196 200 202
|
||||
208 209 216 218 222 227 234 246 247 248 250 254 255 257 258
|
||||
260 261 262 263 264 270 272 273 277 279
|
||||
|
||||
build-user:
|
||||
@ -416,6 +416,12 @@ build-cfi-aarch64:
|
||||
expire_in: 2 days
|
||||
paths:
|
||||
- build
|
||||
rules:
|
||||
# FIXME: This job is often failing, likely due to out-of-memory problems in
|
||||
# the constrained containers of the shared runners. Thus this is marked as
|
||||
# manual until the situation has been solved.
|
||||
- when: manual
|
||||
allow_failure: true
|
||||
|
||||
check-cfi-aarch64:
|
||||
extends: .native_test_job_template
|
||||
@ -452,6 +458,12 @@ build-cfi-ppc64-s390x:
|
||||
expire_in: 2 days
|
||||
paths:
|
||||
- build
|
||||
rules:
|
||||
# FIXME: This job is often failing, likely due to out-of-memory problems in
|
||||
# the constrained containers of the shared runners. Thus this is marked as
|
||||
# manual until the situation has been solved.
|
||||
- when: manual
|
||||
allow_failure: true
|
||||
|
||||
check-cfi-ppc64-s390x:
|
||||
extends: .native_test_job_template
|
||||
|
@ -24,7 +24,8 @@ ubuntu-18.04-s390x-all-linux-static:
|
||||
- ubuntu_18.04
|
||||
- s390x
|
||||
rules:
|
||||
- if: '$CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- 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
|
||||
@ -43,7 +44,8 @@ ubuntu-18.04-s390x-all:
|
||||
- ubuntu_18.04
|
||||
- s390x
|
||||
rules:
|
||||
- if: '$CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: "$S390X_RUNNER_AVAILABLE"
|
||||
script:
|
||||
- mkdir build
|
||||
- cd build
|
||||
@ -59,7 +61,8 @@ ubuntu-18.04-s390x-alldbg:
|
||||
- ubuntu_18.04
|
||||
- s390x
|
||||
rules:
|
||||
- if: '$CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: "$S390X_RUNNER_AVAILABLE"
|
||||
script:
|
||||
- mkdir build
|
||||
- cd build
|
||||
@ -76,7 +79,9 @@ ubuntu-18.04-s390x-clang:
|
||||
- ubuntu_18.04
|
||||
- s390x
|
||||
rules:
|
||||
- if: '$CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
||||
when: manual
|
||||
- if: "$S390X_RUNNER_AVAILABLE"
|
||||
when: manual
|
||||
script:
|
||||
- mkdir build
|
||||
@ -93,7 +98,8 @@ ubuntu-18.04-s390x-tci:
|
||||
- ubuntu_18.04
|
||||
- s390x
|
||||
rules:
|
||||
- if: '$CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: "$S390X_RUNNER_AVAILABLE"
|
||||
script:
|
||||
- mkdir build
|
||||
- cd build
|
||||
@ -108,7 +114,9 @@ ubuntu-18.04-s390x-notcg:
|
||||
- ubuntu_18.04
|
||||
- s390x
|
||||
rules:
|
||||
- if: '$CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
||||
when: manual
|
||||
- if: "$S390X_RUNNER_AVAILABLE"
|
||||
when: manual
|
||||
script:
|
||||
- mkdir build
|
||||
@ -128,7 +136,8 @@ ubuntu-20.04-aarch64-all-linux-static:
|
||||
- ubuntu_20.04
|
||||
- aarch64
|
||||
rules:
|
||||
- if: '$CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- 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
|
||||
@ -147,7 +156,8 @@ ubuntu-20.04-aarch64-all:
|
||||
- ubuntu_20.04
|
||||
- aarch64
|
||||
rules:
|
||||
- if: '$CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: "$S390X_RUNNER_AVAILABLE"
|
||||
script:
|
||||
- mkdir build
|
||||
- cd build
|
||||
@ -163,7 +173,8 @@ ubuntu-20.04-aarch64-alldbg:
|
||||
- ubuntu_20.04
|
||||
- aarch64
|
||||
rules:
|
||||
- if: '$CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: "$S390X_RUNNER_AVAILABLE"
|
||||
script:
|
||||
- mkdir build
|
||||
- cd build
|
||||
@ -180,7 +191,9 @@ ubuntu-20.04-aarch64-clang:
|
||||
- ubuntu_20.04
|
||||
- aarch64
|
||||
rules:
|
||||
- if: '$CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
||||
when: manual
|
||||
- if: "$S390X_RUNNER_AVAILABLE"
|
||||
when: manual
|
||||
script:
|
||||
- mkdir build
|
||||
@ -197,7 +210,8 @@ ubuntu-20.04-aarch64-tci:
|
||||
- ubuntu_20.04
|
||||
- aarch64
|
||||
rules:
|
||||
- if: '$CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: "$S390X_RUNNER_AVAILABLE"
|
||||
script:
|
||||
- mkdir build
|
||||
- cd build
|
||||
@ -212,7 +226,9 @@ ubuntu-20.04-aarch64-notcg:
|
||||
- ubuntu_20.04
|
||||
- aarch64
|
||||
rules:
|
||||
- if: '$CI_COMMIT_BRANCH =~ /^staging/'
|
||||
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
|
||||
when: manual
|
||||
- if: "$S390X_RUNNER_AVAILABLE"
|
||||
when: manual
|
||||
script:
|
||||
- mkdir build
|
||||
|
@ -8,11 +8,11 @@
|
||||
- .gitlab-ci.d/edk2/Dockerfile
|
||||
# or roms/edk2/ is modified (submodule updated)
|
||||
- roms/edk2/*
|
||||
when: always
|
||||
when: on_success
|
||||
- if: '$CI_COMMIT_REF_NAME =~ /^edk2/' # or the branch/tag starts with 'edk2'
|
||||
when: always
|
||||
when: on_success
|
||||
- if: '$CI_COMMIT_MESSAGE =~ /edk2/i' # or last commit description contains 'EDK2'
|
||||
when: always
|
||||
when: on_success
|
||||
|
||||
docker-edk2:
|
||||
extends: .edk2_job_rules
|
||||
|
@ -6,14 +6,14 @@
|
||||
- .gitlab-ci.d/opensbi.yml
|
||||
# or the Dockerfile is modified
|
||||
- .gitlab-ci.d/opensbi/Dockerfile
|
||||
when: always
|
||||
when: on_success
|
||||
- changes: # or roms/opensbi/ is modified (submodule updated)
|
||||
- roms/opensbi/*
|
||||
when: always
|
||||
when: on_success
|
||||
- if: '$CI_COMMIT_REF_NAME =~ /^opensbi/' # or the branch/tag starts with 'opensbi'
|
||||
when: always
|
||||
when: on_success
|
||||
- if: '$CI_COMMIT_MESSAGE =~ /opensbi/i' # or last commit description contains 'OpenSBI'
|
||||
when: always
|
||||
when: on_success
|
||||
|
||||
docker-opensbi:
|
||||
extends: .opensbi_job_rules
|
||||
|
@ -16,24 +16,9 @@
|
||||
# QEMU CI jobs are based on templates. Some templates provide
|
||||
# user-configurable options, modifiable via configuration variables.
|
||||
#
|
||||
# These variables can be set globally in the user's CI namespace
|
||||
# setting:
|
||||
# https://docs.gitlab.com/ee/ci/variables/#create-a-custom-variable-in-the-ui
|
||||
# or set manually each time a branch/tag is pushed, as a git-push
|
||||
# command line argument:
|
||||
# https://docs.gitlab.com/ee/user/project/push_options.html#push-options-for-gitlab-cicd
|
||||
# See https://qemu-project.gitlab.io/qemu/devel/ci.html#custom-ci-cd-variables
|
||||
# for more information.
|
||||
#
|
||||
# Example setting the QEMU_CI_EXAMPLE_VAR variable:
|
||||
#
|
||||
# git push -o ci.variable="QEMU_CI_EXAMPLE_VAR=value" myrepo mybranch
|
||||
#
|
||||
# ----------------------------------------------------------------------
|
||||
#
|
||||
# List of environment variables that can be use to modify the set
|
||||
# of jobs selected:
|
||||
#
|
||||
# - QEMU_CI_AVOCADO_TESTING
|
||||
# If set, tests using the Avocado framework will be run
|
||||
|
||||
include:
|
||||
- local: '/.gitlab-ci.d/qemu-project.yml'
|
||||
|
3
configure
vendored
3
configure
vendored
@ -770,7 +770,8 @@ SunOS)
|
||||
;;
|
||||
Haiku)
|
||||
haiku="yes"
|
||||
QEMU_CFLAGS="-DB_USE_POSITIVE_POSIX_ERRORS -D_BSD_SOURCE $QEMU_CFLAGS"
|
||||
pie="no"
|
||||
QEMU_CFLAGS="-DB_USE_POSITIVE_POSIX_ERRORS -D_BSD_SOURCE -fPIC $QEMU_CFLAGS"
|
||||
;;
|
||||
Linux)
|
||||
audio_drv_list="try-pa oss"
|
||||
|
@ -8,6 +8,46 @@ found at::
|
||||
|
||||
https://wiki.qemu.org/Testing/CI
|
||||
|
||||
Custom CI/CD variables
|
||||
======================
|
||||
|
||||
QEMU CI pipelines can be tuned by setting some CI environment variables.
|
||||
|
||||
Set variable globally in the user's CI namespace
|
||||
------------------------------------------------
|
||||
|
||||
Variables can be set globally in the user's CI namespace setting.
|
||||
|
||||
For further information about how to set these variables, please refer to::
|
||||
|
||||
https://docs.gitlab.com/ee/ci/variables/#add-a-cicd-variable-to-a-project
|
||||
|
||||
Set variable manually when pushing a branch or tag to the user's repository
|
||||
---------------------------------------------------------------------------
|
||||
|
||||
Variables can be set manually when pushing a branch or tag, using
|
||||
git-push command line arguments.
|
||||
|
||||
Example setting the QEMU_CI_EXAMPLE_VAR variable:
|
||||
|
||||
.. code::
|
||||
|
||||
git push -o ci.variable="QEMU_CI_EXAMPLE_VAR=value" myrepo mybranch
|
||||
|
||||
For further information about how to set these variables, please refer to::
|
||||
|
||||
https://docs.gitlab.com/ee/user/project/push_options.html#push-options-for-gitlab-cicd
|
||||
|
||||
Here is a list of the most used variables:
|
||||
|
||||
QEMU_CI_AVOCADO_TESTING
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
By default, tests using the Avocado framework are not run automatically in
|
||||
the pipelines (because multiple artifacts have to be downloaded, and if
|
||||
these artifacts are not already cached, downloading them make the jobs
|
||||
reach the timeout limit). Set this variable to have the tests using the
|
||||
Avocado framework run automatically.
|
||||
|
||||
Jobs on Custom Runners
|
||||
======================
|
||||
|
||||
|
@ -27,7 +27,8 @@
|
||||
#include "migration-helpers.h"
|
||||
#include "tests/migration/migration-test.h"
|
||||
|
||||
#if defined(__linux__)
|
||||
/* For dirty ring test; so far only x86_64 is supported */
|
||||
#if defined(__linux__) && defined(HOST_X86_64)
|
||||
#include "linux/kvm.h"
|
||||
#endif
|
||||
|
||||
@ -1395,7 +1396,7 @@ static void test_multifd_tcp_cancel(void)
|
||||
|
||||
static bool kvm_dirty_ring_supported(void)
|
||||
{
|
||||
#if defined(__linux__)
|
||||
#if defined(__linux__) && defined(HOST_X86_64)
|
||||
int ret, kvm_fd = open("/dev/kvm", O_RDONLY);
|
||||
|
||||
if (kvm_fd < 0) {
|
||||
|
Loading…
Reference in New Issue
Block a user