aboutsummaryrefslogtreecommitdiff
path: root/.gitlab-ci.d
diff options
context:
space:
mode:
authorThomas Huth <thuth@redhat.com>2021-07-28 19:38:57 +0200
committerThomas Huth <thuth@redhat.com>2021-07-29 08:04:25 +0200
commitc5dd0f03423c8b614147778547a3a58525d9eb94 (patch)
treed4870ee3e8c3065c81787149f1e57ee0ef7ee53e /.gitlab-ci.d
parente37264ebe34fe80f7ef3ac649408fd7845c82c65 (diff)
downloadqemu-c5dd0f03423c8b614147778547a3a58525d9eb94.zip
qemu-c5dd0f03423c8b614147778547a3a58525d9eb94.tar.gz
qemu-c5dd0f03423c8b614147778547a3a58525d9eb94.tar.bz2
gitlab-ci.d/custom-runners: Improve rules for the staging branch
If maintainers are currently pushing to a branch called "staging" in their repository, they are ending up with some stuck jobs - unless they have a s390x CI runner machine available. That's ugly, we should make sure that the related jobs are really only started if such a runner is available. So let's only run these jobs if it's the "staging" branch of the main repository of the QEMU project (where we can be sure that the s390x runner is available), or if the user explicitly set a S390X_RUNNER_AVAILABLE variable in their CI configs to declare that they have such a runner available, too. Fixes: 4799c21023 ("Jobs based on custom runners: add job definitions ...") Message-Id: <20210728173857.497523-1-thuth@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Willian Rampazzo <willianr@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
Diffstat (limited to '.gitlab-ci.d')
-rw-r--r--.gitlab-ci.d/custom-runners.yml40
1 files changed, 28 insertions, 12 deletions
diff --git a/.gitlab-ci.d/custom-runners.yml b/.gitlab-ci.d/custom-runners.yml
index 061d3cd..564b945 100644
--- a/.gitlab-ci.d/custom-runners.yml
+++ b/.gitlab-ci.d/custom-runners.yml
@@ -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