From: Thomas Huth <thuth@redhat.com>
To: qemu-devel@nongnu.org, Richard Henderson <richard.henderson@linaro.org>
Cc: "Daniel P. Berrangé" <berrange@redhat.com>,
"Michael Tokarev" <mjt@tls.msk.ru>
Subject: [PULL 4/9] gitlab: stable staging branches publish containers in a separate tag
Date: Mon, 26 Jun 2023 10:14:10 +0200 [thread overview]
Message-ID: <20230626081415.64615-5-thuth@redhat.com> (raw)
In-Reply-To: <20230626081415.64615-1-thuth@redhat.com>
From: Daniel P. Berrangé <berrange@redhat.com>
If the stable staging branches publish containers under the 'latest' tag
they will clash with containers published on the primary staging branch,
as well as with each other. This introduces logic that overrides the
container tag when jobs run against the stable staging branches.
The CI_COMMIT_REF_SLUG variable we use expands to the git branch name,
but with most special characters removed, such that it is valid as a
docker tag name. eg 'staging-8.0' will get a slug of 'staging-8-0'
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20230608164018.2520330-4-berrange@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
.gitlab-ci.d/base.yml | 24 ++++++++++++++++++++++--
1 file changed, 22 insertions(+), 2 deletions(-)
diff --git a/.gitlab-ci.d/base.yml b/.gitlab-ci.d/base.yml
index a1d734267a..f379c182a7 100644
--- a/.gitlab-ci.d/base.yml
+++ b/.gitlab-ci.d/base.yml
@@ -1,7 +1,7 @@
variables:
- # On stable branches this needs changing. Should also be
- # overridden per pipeline if running pipelines concurrently
+ # On stable branches this is changed by later rules. Should also
+ # be overridden per pipeline if running pipelines concurrently
# for different branches in contributor forks.
QEMU_CI_CONTAINER_TAG: latest
@@ -16,6 +16,9 @@ variables:
# Thus we group them into a number of stages, ordered from
# most restrictive to least restrictive
#
+# For pipelines running for stable "staging-X.Y" branches
+# we must override QEMU_CI_CONTAINER_TAG
+#
.base_job_template:
variables:
# Each script line from will be in a collapsible section in the job output
@@ -61,11 +64,23 @@ variables:
#############################################################
# Optional jobs should not be run unless manually triggered
+ - if: '$QEMU_JOB_OPTIONAL && $CI_PROJECT_NAMESPACE == $QEMU_CI_UPSTREAM && $CI_COMMIT_BRANCH =~ /staging-[[:digit:]]+\.[[:digit:]]/'
+ when: manual
+ allow_failure: true
+ variables:
+ QEMU_CI_CONTAINER_TAG: $CI_COMMIT_REF_SLUG
+
- if: '$QEMU_JOB_OPTIONAL'
when: manual
allow_failure: true
# Skipped jobs should not be run unless manually triggered
+ - if: '$QEMU_JOB_SKIPPED && $CI_PROJECT_NAMESPACE == $QEMU_CI_UPSTREAM && $CI_COMMIT_BRANCH =~ /staging-[[:digit:]]+\.[[:digit:]]/'
+ when: manual
+ allow_failure: true
+ variables:
+ QEMU_CI_CONTAINER_TAG: $CI_COMMIT_REF_SLUG
+
- if: '$QEMU_JOB_SKIPPED'
when: manual
allow_failure: true
@@ -87,4 +102,9 @@ variables:
when: manual
# Jobs can run if any jobs they depend on were successful
+ - if: '$QEMU_JOB_SKIPPED && $CI_PROJECT_NAMESPACE == $QEMU_CI_UPSTREAM && $CI_COMMIT_BRANCH =~ /staging-[[:digit:]]+\.[[:digit:]]/'
+ when: on_success
+ variables:
+ QEMU_CI_CONTAINER_TAG: $CI_COMMIT_REF_SLUG
+
- when: on_success
--
2.39.3
next prev parent reply other threads:[~2023-06-26 8:16 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-26 8:14 [PULL 0/9] Testing / CI patches Thomas Huth
2023-06-26 8:14 ` [PULL 1/9] tests/qtest: Fix a comment typo in vhost-user-test.c Thomas Huth
2023-06-26 8:14 ` [PULL 2/9] gitlab: centralize the container tag name Thomas Huth
2023-06-26 8:14 ` [PULL 3/9] gitlab: allow overriding name of the upstream repository Thomas Huth
2023-06-26 8:14 ` Thomas Huth [this message]
2023-06-26 8:14 ` [PULL 5/9] gitlab: avoid extra pipelines for tags and stable branches Thomas Huth
2023-06-26 8:14 ` [PULL 6/9] gitlab: support disabling job auto-run in upstream Thomas Huth
2023-06-26 8:14 ` [PULL 7/9] gitlab-ci: grab msys2 meson-logs as artifacts Thomas Huth
2023-06-26 8:14 ` [PULL 8/9] gitlab-ci: add msys2 meson test to junit report Thomas Huth
2023-06-26 8:14 ` [PULL 9/9] tests/qtest/cxl-test: Clean up temporary directories after testing Thomas Huth
2023-06-26 10:45 ` [PULL 0/9] Testing / CI patches Richard Henderson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230626081415.64615-5-thuth@redhat.com \
--to=thuth@redhat.com \
--cc=berrange@redhat.com \
--cc=mjt@tls.msk.ru \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).