On Tue, May 17, 2022 at 12:10:30PM +0200, Thomas Huth wrote:
On 14/03/2022 15.31, Philippe Mathieu-Daudé wrote:
From: Philippe Mathieu-Daudé <f4bug@amsat.org>
By default, all Cirrus-CI jobs are added as 'on_success' (the
default value). Add a ${MANUAL_JOB} variable (default to 0)
to be able to add manual jobs.
Suggested-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
.gitlab-ci.d/cirrus.yml | 2 ++
.gitlab-ci.d/cirrus/build.yml | 1 +
2 files changed, 3 insertions(+)
diff --git a/.gitlab-ci.d/cirrus.yml b/.gitlab-ci.d/cirrus.yml
index b96b22e269..9e640019dd 100644
--- a/.gitlab-ci.d/cirrus.yml
+++ b/.gitlab-ci.d/cirrus.yml
@@ -44,6 +44,8 @@
# Allow on 'staging' branch and 'stable-X.Y-staging' branches only
- if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH !~
/staging/'
when: never
+ - if: '$CIRRUS_GITHUB_REPO && $CIRRUS_API_TOKEN && $MANUAL_JOB == "1"'
+ when: manual
- if: "$CIRRUS_GITHUB_REPO && $CIRRUS_API_TOKEN"
x64-freebsd-12-build:
diff --git a/.gitlab-ci.d/cirrus/build.yml b/.gitlab-ci.d/cirrus/build.yml
index c555f5d36e..c58dc86855 100644
--- a/.gitlab-ci.d/cirrus/build.yml
+++ b/.gitlab-ci.d/cirrus/build.yml
@@ -14,6 +14,7 @@ env:
MAKE: "@MAKE@"
CONFIGURE_ARGS: "@CONFIGURE_ARGS@"
TEST_TARGETS: "@TEST_TARGETS@"
+ MANUAL_JOB: 0
This addition doesn't make sense. build.yml is config that is run
by Cirrus CI.
The MANUAL_JOB env is interpreted by GitLab CI, so would only ever
be set by jobs in .gitlab-ci.d/cirrus.yml
build_task:
install_script:
Hi Philippe!
Sorry for the late reply ... I think this might collide with Daniel's patch
that turns most jobs to manual mode
(https://lore.kernel.org/all/20210812180403.4129067-3-berrange@redhat.com/)
which he is hopefully going to respin soon ... but anyway, if you add a
variable like this, there should be an update to docs/devel/ci-jobs.rst.inc
to describe the new variable, otherwise you might be the only one who's
using it.
IIUC, this MANUAL_JOB variable isn't for end developer usage, rather it is
for usage when adding jobs to .gitlab-ci.d/cirrus.yml, so I don't think it
needs documenting there. THis simply lets us add a bunch more jobs to
cirrus.yml without causing timeout problems by having them all run at
once, providing we put MANUAL_JOB: 1 in the config for the new job.