cachepc-qemu

Fork of AMDESE/qemu with changes for cachepc side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-qemu
Log | Files | Refs | Submodules | LICENSE | sfeed.txt

buildtest.yml (19008B)


      1include:
      2  - local: '/.gitlab-ci.d/buildtest-template.yml'
      3
      4build-system-alpine:
      5  extends: .native_build_job_template
      6  needs:
      7    - job: amd64-alpine-container
      8  variables:
      9    IMAGE: alpine
     10    TARGETS: aarch64-softmmu alpha-softmmu cris-softmmu hppa-softmmu
     11      microblazeel-softmmu mips64el-softmmu
     12    MAKE_CHECK_ARGS: check-build
     13    CONFIGURE_ARGS: --enable-docs --enable-trace-backends=log,simple,syslog
     14  artifacts:
     15    expire_in: 2 days
     16    paths:
     17      - .git-submodule-status
     18      - build
     19
     20check-system-alpine:
     21  extends: .native_test_job_template
     22  needs:
     23    - job: build-system-alpine
     24      artifacts: true
     25  variables:
     26    IMAGE: alpine
     27    MAKE_CHECK_ARGS: check
     28
     29acceptance-system-alpine:
     30  extends: .acceptance_test_job_template
     31  needs:
     32    - job: build-system-alpine
     33      artifacts: true
     34  variables:
     35    IMAGE: alpine
     36    MAKE_CHECK_ARGS: check-acceptance
     37
     38build-system-ubuntu:
     39  extends: .native_build_job_template
     40  needs:
     41    job: amd64-ubuntu2004-container
     42  variables:
     43    IMAGE: ubuntu2004
     44    CONFIGURE_ARGS: --enable-docs --enable-fdt=system --enable-slirp=system
     45    TARGETS: aarch64-softmmu alpha-softmmu cris-softmmu hppa-softmmu
     46      microblazeel-softmmu mips64el-softmmu
     47    MAKE_CHECK_ARGS: check-build
     48  artifacts:
     49    expire_in: 2 days
     50    paths:
     51      - build
     52
     53check-system-ubuntu:
     54  extends: .native_test_job_template
     55  needs:
     56    - job: build-system-ubuntu
     57      artifacts: true
     58  variables:
     59    IMAGE: ubuntu2004
     60    MAKE_CHECK_ARGS: check
     61
     62acceptance-system-ubuntu:
     63  extends: .acceptance_test_job_template
     64  needs:
     65    - job: build-system-ubuntu
     66      artifacts: true
     67  variables:
     68    IMAGE: ubuntu2004
     69    MAKE_CHECK_ARGS: check-acceptance
     70
     71build-system-debian:
     72  extends: .native_build_job_template
     73  needs:
     74    job: amd64-debian-container
     75  variables:
     76    IMAGE: debian-amd64
     77    TARGETS: arm-softmmu avr-softmmu i386-softmmu mipsel-softmmu
     78      riscv64-softmmu sh4eb-softmmu sparc-softmmu xtensaeb-softmmu
     79    MAKE_CHECK_ARGS: check-build
     80  artifacts:
     81    expire_in: 2 days
     82    paths:
     83      - build
     84
     85check-system-debian:
     86  extends: .native_test_job_template
     87  needs:
     88    - job: build-system-debian
     89      artifacts: true
     90  variables:
     91    IMAGE: debian-amd64
     92    MAKE_CHECK_ARGS: check
     93
     94acceptance-system-debian:
     95  extends: .acceptance_test_job_template
     96  needs:
     97    - job: build-system-debian
     98      artifacts: true
     99  variables:
    100    IMAGE: debian-amd64
    101    MAKE_CHECK_ARGS: check-acceptance
    102
    103build-system-fedora:
    104  extends: .native_build_job_template
    105  needs:
    106    job: amd64-fedora-container
    107  variables:
    108    IMAGE: fedora
    109    CONFIGURE_ARGS: --disable-gcrypt --enable-nettle --enable-docs
    110             --enable-fdt=system --enable-slirp=system --enable-capstone=system
    111    TARGETS: tricore-softmmu microblaze-softmmu mips-softmmu
    112      xtensa-softmmu m68k-softmmu riscv32-softmmu ppc-softmmu sparc64-softmmu
    113    MAKE_CHECK_ARGS: check-build
    114  artifacts:
    115    expire_in: 2 days
    116    paths:
    117      - build
    118
    119check-system-fedora:
    120  extends: .native_test_job_template
    121  needs:
    122    - job: build-system-fedora
    123      artifacts: true
    124  variables:
    125    IMAGE: fedora
    126    MAKE_CHECK_ARGS: check
    127
    128acceptance-system-fedora:
    129  extends: .acceptance_test_job_template
    130  needs:
    131    - job: build-system-fedora
    132      artifacts: true
    133  variables:
    134    IMAGE: fedora
    135    MAKE_CHECK_ARGS: check-acceptance
    136
    137build-system-centos:
    138  extends: .native_build_job_template
    139  needs:
    140    job: amd64-centos8-container
    141  variables:
    142    IMAGE: centos8
    143    CONFIGURE_ARGS: --disable-nettle --enable-gcrypt --enable-fdt=system
    144                    --enable-modules --enable-trace-backends=dtrace
    145    TARGETS: ppc64-softmmu or1k-softmmu s390x-softmmu
    146      x86_64-softmmu rx-softmmu sh4-softmmu nios2-softmmu
    147    MAKE_CHECK_ARGS: check-build
    148  artifacts:
    149    expire_in: 2 days
    150    paths:
    151      - build
    152
    153check-system-centos:
    154  extends: .native_test_job_template
    155  needs:
    156    - job: build-system-centos
    157      artifacts: true
    158  variables:
    159    IMAGE: centos8
    160    MAKE_CHECK_ARGS: check
    161
    162acceptance-system-centos:
    163  extends: .acceptance_test_job_template
    164  needs:
    165    - job: build-system-centos
    166      artifacts: true
    167  variables:
    168    IMAGE: centos8
    169    MAKE_CHECK_ARGS: check-acceptance
    170
    171build-system-opensuse:
    172  extends: .native_build_job_template
    173  needs:
    174    job: amd64-opensuse-leap-container
    175  variables:
    176    IMAGE: opensuse-leap
    177    CONFIGURE_ARGS: --enable-fdt=system
    178    TARGETS: s390x-softmmu x86_64-softmmu aarch64-softmmu
    179    MAKE_CHECK_ARGS: check-build
    180  artifacts:
    181    expire_in: 2 days
    182    paths:
    183      - build
    184
    185check-system-opensuse:
    186  extends: .native_test_job_template
    187  needs:
    188    - job: build-system-opensuse
    189      artifacts: true
    190  variables:
    191    IMAGE: opensuse-leap
    192    MAKE_CHECK_ARGS: check
    193
    194acceptance-system-opensuse:
    195  extends: .acceptance_test_job_template
    196  needs:
    197    - job: build-system-opensuse
    198      artifacts: true
    199  variables:
    200    IMAGE: opensuse-leap
    201    MAKE_CHECK_ARGS: check-acceptance
    202
    203
    204# This jobs explicitly disable TCG (--disable-tcg), KVM is detected by
    205# the configure script. The container doesn't contain Xen headers so
    206# Xen accelerator is not detected / selected. As result it build the
    207# i386-softmmu and x86_64-softmmu with KVM being the single accelerator
    208# available.
    209# Also use a different coroutine implementation (which is only really of
    210# interest to KVM users, i.e. with TCG disabled)
    211build-tcg-disabled:
    212  extends: .native_build_job_template
    213  needs:
    214    job: amd64-centos8-container
    215  variables:
    216    IMAGE: centos8
    217  script:
    218    - mkdir build
    219    - cd build
    220    - ../configure --disable-tcg --audio-drv-list="" --with-coroutine=ucontext
    221      || { cat config.log meson-logs/meson-log.txt && exit 1; }
    222    - make -j"$JOBS"
    223    - make check-unit
    224    - make check-qapi-schema
    225    - cd tests/qemu-iotests/
    226    - ./check -raw 001 002 003 004 005 008 009 010 011 012 021 025 032 033 048
    227            052 063 077 086 101 104 106 113 148 150 151 152 157 159 160 163
    228            170 171 183 184 192 194 208 221 226 227 236 253 277 image-fleecing
    229    - ./check -qcow2 028 051 056 057 058 065 068 082 085 091 095 096 102 122
    230            124 132 139 142 144 145 151 152 155 157 165 194 196 200 202
    231            208 209 216 218 227 234 246 247 248 250 254 255 257 258
    232            260 261 262 263 264 270 272 273 277 279 image-fleecing
    233
    234build-user:
    235  extends: .native_build_job_template
    236  needs:
    237    job: amd64-debian-user-cross-container
    238  variables:
    239    IMAGE: debian-all-test-cross
    240    CONFIGURE_ARGS: --disable-tools --disable-system
    241    MAKE_CHECK_ARGS: check-tcg
    242
    243build-user-static:
    244  extends: .native_build_job_template
    245  needs:
    246    job: amd64-debian-user-cross-container
    247  variables:
    248    IMAGE: debian-all-test-cross
    249    CONFIGURE_ARGS: --disable-tools --disable-system --static
    250    MAKE_CHECK_ARGS: check-tcg
    251
    252# Because the hexagon cross-compiler takes so long to build we don't rely
    253# on the CI system to build it and hence this job has an optional dependency
    254# declared. The image is manually uploaded.
    255build-user-hexagon:
    256  extends: .native_build_job_template
    257  needs:
    258    job: hexagon-cross-container
    259    optional: true
    260  variables:
    261    IMAGE: debian-hexagon-cross
    262    TARGETS: hexagon-linux-user
    263    CONFIGURE_ARGS: --disable-tools --disable-docs --enable-debug-tcg
    264    MAKE_CHECK_ARGS: check-tcg
    265
    266# Only build the softmmu targets we have check-tcg tests for
    267build-some-softmmu:
    268  extends: .native_build_job_template
    269  needs:
    270    job: amd64-debian-user-cross-container
    271  variables:
    272    IMAGE: debian-all-test-cross
    273    CONFIGURE_ARGS: --disable-tools --enable-debug
    274    TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
    275    MAKE_CHECK_ARGS: check-tcg
    276
    277# We build tricore in a very minimal tricore only container
    278build-tricore-softmmu:
    279  extends: .native_build_job_template
    280  needs:
    281    job: tricore-debian-cross-container
    282  variables:
    283    IMAGE: debian-tricore-cross
    284    CONFIGURE_ARGS: --disable-tools --disable-fdt --enable-debug
    285    TARGETS: tricore-softmmu
    286    MAKE_CHECK_ARGS: check-tcg
    287
    288clang-system:
    289  extends: .native_build_job_template
    290  needs:
    291    job: amd64-fedora-container
    292  variables:
    293    IMAGE: fedora
    294    CONFIGURE_ARGS: --cc=clang --cxx=clang++
    295      --extra-cflags=-fsanitize=undefined --extra-cflags=-fno-sanitize-recover=undefined
    296    TARGETS: alpha-softmmu arm-softmmu m68k-softmmu mips64-softmmu
    297      ppc-softmmu s390x-softmmu
    298    MAKE_CHECK_ARGS: check-qtest check-tcg
    299
    300clang-user:
    301  extends: .native_build_job_template
    302  needs:
    303    job: amd64-debian-user-cross-container
    304  variables:
    305    IMAGE: debian-all-test-cross
    306    CONFIGURE_ARGS: --cc=clang --cxx=clang++ --disable-system
    307      --target-list-exclude=microblazeel-linux-user,aarch64_be-linux-user,i386-linux-user,m68k-linux-user,mipsn32el-linux-user,xtensaeb-linux-user
    308      --extra-cflags=-fsanitize=undefined --extra-cflags=-fno-sanitize-recover=undefined
    309    MAKE_CHECK_ARGS: check-unit check-tcg
    310
    311# Set LD_JOBS=1 because this requires LTO and ld consumes a large amount of memory.
    312# On gitlab runners, default value sometimes end up calling 2 lds concurrently and
    313# triggers an Out-Of-Memory error
    314#
    315# Since slirp callbacks are used in QEMU Timers, slirp needs to be compiled together
    316# with QEMU and linked as a static library to avoid false positives in CFI checks.
    317# This can be accomplished by using -enable-slirp=git, which avoids the use of
    318# a system-wide version of the library
    319#
    320# Split in three sets of build/check/acceptance to limit the execution time of each
    321# job
    322build-cfi-aarch64:
    323  extends: .native_build_job_template
    324  needs:
    325  - job: amd64-fedora-container
    326  variables:
    327    LD_JOBS: 1
    328    AR: llvm-ar
    329    IMAGE: fedora
    330    CONFIGURE_ARGS: --cc=clang --cxx=clang++ --enable-cfi --enable-cfi-debug
    331      --enable-safe-stack --enable-slirp=git
    332    TARGETS: aarch64-softmmu
    333    MAKE_CHECK_ARGS: check-build
    334  timeout: 70m
    335  artifacts:
    336    expire_in: 2 days
    337    paths:
    338      - build
    339  rules:
    340    # FIXME: This job is often failing, likely due to out-of-memory problems in
    341    # the constrained containers of the shared runners. Thus this is marked as
    342    # manual until the situation has been solved.
    343    - when: manual
    344      allow_failure: true
    345
    346check-cfi-aarch64:
    347  extends: .native_test_job_template
    348  needs:
    349    - job: build-cfi-aarch64
    350      artifacts: true
    351  variables:
    352    IMAGE: fedora
    353    MAKE_CHECK_ARGS: check
    354
    355acceptance-cfi-aarch64:
    356  extends: .acceptance_test_job_template
    357  needs:
    358    - job: build-cfi-aarch64
    359      artifacts: true
    360  variables:
    361    IMAGE: fedora
    362    MAKE_CHECK_ARGS: check-acceptance
    363
    364build-cfi-ppc64-s390x:
    365  extends: .native_build_job_template
    366  needs:
    367  - job: amd64-fedora-container
    368  variables:
    369    LD_JOBS: 1
    370    AR: llvm-ar
    371    IMAGE: fedora
    372    CONFIGURE_ARGS: --cc=clang --cxx=clang++ --enable-cfi --enable-cfi-debug
    373      --enable-safe-stack --enable-slirp=git
    374    TARGETS: ppc64-softmmu s390x-softmmu
    375    MAKE_CHECK_ARGS: check-build
    376  timeout: 70m
    377  artifacts:
    378    expire_in: 2 days
    379    paths:
    380      - build
    381  rules:
    382    # FIXME: This job is often failing, likely due to out-of-memory problems in
    383    # the constrained containers of the shared runners. Thus this is marked as
    384    # manual until the situation has been solved.
    385    - when: manual
    386      allow_failure: true
    387
    388check-cfi-ppc64-s390x:
    389  extends: .native_test_job_template
    390  needs:
    391    - job: build-cfi-ppc64-s390x
    392      artifacts: true
    393  variables:
    394    IMAGE: fedora
    395    MAKE_CHECK_ARGS: check
    396
    397acceptance-cfi-ppc64-s390x:
    398  extends: .acceptance_test_job_template
    399  needs:
    400    - job: build-cfi-ppc64-s390x
    401      artifacts: true
    402  variables:
    403    IMAGE: fedora
    404    MAKE_CHECK_ARGS: check-acceptance
    405
    406build-cfi-x86_64:
    407  extends: .native_build_job_template
    408  needs:
    409  - job: amd64-fedora-container
    410  variables:
    411    LD_JOBS: 1
    412    AR: llvm-ar
    413    IMAGE: fedora
    414    CONFIGURE_ARGS: --cc=clang --cxx=clang++ --enable-cfi --enable-cfi-debug
    415      --enable-safe-stack --enable-slirp=git
    416    TARGETS: x86_64-softmmu
    417    MAKE_CHECK_ARGS: check-build
    418  timeout: 70m
    419  artifacts:
    420    expire_in: 2 days
    421    paths:
    422      - build
    423
    424check-cfi-x86_64:
    425  extends: .native_test_job_template
    426  needs:
    427    - job: build-cfi-x86_64
    428      artifacts: true
    429  variables:
    430    IMAGE: fedora
    431    MAKE_CHECK_ARGS: check
    432
    433acceptance-cfi-x86_64:
    434  extends: .acceptance_test_job_template
    435  needs:
    436    - job: build-cfi-x86_64
    437      artifacts: true
    438  variables:
    439    IMAGE: fedora
    440    MAKE_CHECK_ARGS: check-acceptance
    441
    442tsan-build:
    443  extends: .native_build_job_template
    444  needs:
    445    job: amd64-ubuntu2004-container
    446  variables:
    447    IMAGE: ubuntu2004
    448    CONFIGURE_ARGS: --enable-tsan --cc=clang-10 --cxx=clang++-10
    449          --enable-trace-backends=ust --enable-fdt=system --enable-slirp=system
    450    TARGETS: x86_64-softmmu ppc64-softmmu riscv64-softmmu x86_64-linux-user
    451    MAKE_CHECK_ARGS: bench V=1
    452
    453# These targets are on the way out
    454build-deprecated:
    455  extends: .native_build_job_template
    456  needs:
    457    job: amd64-debian-user-cross-container
    458  variables:
    459    IMAGE: debian-all-test-cross
    460    CONFIGURE_ARGS: --disable-tools
    461    MAKE_CHECK_ARGS: build-tcg
    462    TARGETS: ppc64abi32-linux-user
    463  artifacts:
    464    expire_in: 2 days
    465    paths:
    466      - build
    467
    468# We split the check-tcg step as test failures are expected but we still
    469# want to catch the build breaking.
    470check-deprecated:
    471  extends: .native_test_job_template
    472  needs:
    473    - job: build-deprecated
    474      artifacts: true
    475  variables:
    476    IMAGE: debian-all-test-cross
    477    MAKE_CHECK_ARGS: check-tcg
    478  allow_failure: true
    479
    480# gprof/gcov are GCC features
    481build-gprof-gcov:
    482  extends: .native_build_job_template
    483  needs:
    484    job: amd64-ubuntu2004-container
    485  variables:
    486    IMAGE: ubuntu2004
    487    CONFIGURE_ARGS: --enable-gprof --enable-gcov
    488    TARGETS: aarch64-softmmu ppc64-softmmu s390x-softmmu x86_64-softmmu
    489  artifacts:
    490    expire_in: 1 days
    491    paths:
    492      - build
    493
    494check-gprof-gcov:
    495  extends: .native_test_job_template
    496  needs:
    497    - job: build-gprof-gcov
    498      artifacts: true
    499  variables:
    500    IMAGE: ubuntu2004
    501    MAKE_CHECK_ARGS: check
    502  after_script:
    503    - ${CI_PROJECT_DIR}/scripts/ci/coverage-summary.sh
    504
    505build-oss-fuzz:
    506  extends: .native_build_job_template
    507  needs:
    508    job: amd64-fedora-container
    509  variables:
    510    IMAGE: fedora
    511  script:
    512    - mkdir build-oss-fuzz
    513    - CC="clang" CXX="clang++" CFLAGS="-fsanitize=address"
    514      ./scripts/oss-fuzz/build.sh
    515    - export ASAN_OPTIONS="fast_unwind_on_malloc=0"
    516    - for fuzzer in $(find ./build-oss-fuzz/DEST_DIR/ -executable -type f
    517                      | grep -v slirp); do
    518        grep "LLVMFuzzerTestOneInput" ${fuzzer} > /dev/null 2>&1 || continue ;
    519        echo Testing ${fuzzer} ... ;
    520        "${fuzzer}" -runs=1 -seed=1 || exit 1 ;
    521      done
    522    # Unrelated to fuzzer: run some tests with -fsanitize=address
    523    - cd build-oss-fuzz && make check-qtest-i386 check-unit
    524
    525build-tci:
    526  extends: .native_build_job_template
    527  needs:
    528    job: amd64-debian-user-cross-container
    529  variables:
    530    IMAGE: debian-all-test-cross
    531  script:
    532    - TARGETS="aarch64 alpha arm hppa m68k microblaze ppc64 s390x x86_64"
    533    - mkdir build
    534    - cd build
    535    - ../configure --enable-tcg-interpreter
    536        --target-list="$(for tg in $TARGETS; do echo -n ${tg}'-softmmu '; done)" || { cat config.log meson-logs/meson-log.txt && exit 1; }
    537    - make -j"$JOBS"
    538    - make tests/qtest/boot-serial-test tests/qtest/cdrom-test tests/qtest/pxe-test
    539    - for tg in $TARGETS ; do
    540        export QTEST_QEMU_BINARY="./qemu-system-${tg}" ;
    541        ./tests/qtest/boot-serial-test || exit 1 ;
    542        ./tests/qtest/cdrom-test || exit 1 ;
    543      done
    544    - QTEST_QEMU_BINARY="./qemu-system-x86_64" ./tests/qtest/pxe-test
    545    - QTEST_QEMU_BINARY="./qemu-system-s390x" ./tests/qtest/pxe-test -m slow
    546    - make check-tcg
    547
    548# Alternate coroutines implementations are only really of interest to KVM users
    549# However we can't test against KVM on Gitlab-CI so we can only run unit tests
    550build-coroutine-sigaltstack:
    551  extends: .native_build_job_template
    552  needs:
    553    job: amd64-ubuntu2004-container
    554  variables:
    555    IMAGE: ubuntu2004
    556    CONFIGURE_ARGS: --with-coroutine=sigaltstack --disable-tcg
    557                    --enable-trace-backends=ftrace
    558    MAKE_CHECK_ARGS: check-unit
    559
    560# Check our reduced build configurations
    561build-without-default-devices:
    562  extends: .native_build_job_template
    563  needs:
    564    job: amd64-centos8-container
    565  variables:
    566    IMAGE: centos8
    567    CONFIGURE_ARGS: --without-default-devices --disable-user
    568
    569build-without-default-features:
    570  extends: .native_build_job_template
    571  needs:
    572    job: amd64-fedora-container
    573  variables:
    574    IMAGE: fedora
    575    CONFIGURE_ARGS:
    576      --without-default-features
    577      --disable-capstone
    578      --disable-fdt
    579      --disable-pie
    580      --disable-qom-cast-debug
    581      --disable-slirp
    582      --disable-strip
    583    TARGETS: avr-softmmu i386-softmmu mips64-softmmu s390x-softmmu sh4-softmmu
    584      sparc64-softmmu hexagon-linux-user i386-linux-user s390x-linux-user
    585    MAKE_CHECK_ARGS: check-unit check-qtest SPEED=slow
    586
    587build-libvhost-user:
    588  stage: build
    589  image: $CI_REGISTRY_IMAGE/qemu/fedora:latest
    590  needs:
    591    job: amd64-fedora-container
    592  script:
    593    - mkdir subprojects/libvhost-user/build
    594    - cd subprojects/libvhost-user/build
    595    - meson
    596    - ninja
    597
    598# No targets are built here, just tools, docs, and unit tests. This
    599# also feeds into the eventual documentation deployment steps later
    600build-tools-and-docs-debian:
    601  extends: .native_build_job_template
    602  needs:
    603    job: amd64-debian-container
    604  variables:
    605    IMAGE: debian-amd64
    606    MAKE_CHECK_ARGS: check-unit check-softfloat ctags TAGS cscope
    607    CONFIGURE_ARGS: --disable-system --disable-user --enable-docs --enable-tools
    608  artifacts:
    609    expire_in: 2 days
    610    paths:
    611      - build
    612
    613# Prepare for GitLab pages deployment. Anything copied into the
    614# "public" directory will be deployed to $USER.gitlab.io/$PROJECT
    615#
    616# GitLab publishes from any branch that triggers a CI pipeline
    617#
    618# For the main repo we don't want to publish from 'staging'
    619# since that content may not be pushed, nor do we wish to
    620# publish from 'stable-NNN' branches as that content is outdated.
    621# Thus we restrict to just the default branch
    622#
    623# For contributor forks we want to publish from any repo so
    624# that users can see the results of their commits, regardless
    625# of what topic branch they're currently using
    626pages:
    627  image: $CI_REGISTRY_IMAGE/qemu/debian-amd64:latest
    628  stage: test
    629  needs:
    630    - job: build-tools-and-docs-debian
    631  script:
    632    - mkdir -p public
    633    # HTML-ised source tree
    634    - make gtags
    635    - htags -anT --tree-view=filetree -m qemu_init
    636        -t "Welcome to the QEMU sourcecode"
    637    - mv HTML public/src
    638    # Project documentation
    639    - make -C build install DESTDIR=$(pwd)/temp-install
    640    - mv temp-install/usr/local/share/doc/qemu/* public/
    641  artifacts:
    642    paths:
    643      - public
    644  rules:
    645    - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
    646      when: on_success
    647    - if: '$CI_PROJECT_NAMESPACE == "qemu-project"'
    648      when: never
    649    - if: '$CI_PROJECT_NAMESPACE != "qemu-project"'
    650      when: on_success