qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/5] gitlab: improvements to handling of stable staging branches
@ 2023-05-26 10:19 Daniel P. Berrangé
  2023-05-26 10:19 ` [PATCH v2 1/5] gitlab: centralize the container tag name Daniel P. Berrangé
                   ` (5 more replies)
  0 siblings, 6 replies; 13+ messages in thread
From: Daniel P. Berrangé @ 2023-05-26 10:19 UTC (permalink / raw)
  To: qemu-devel
  Cc: Beraldo Leal, Wainer dos Santos Moschetta,
	Philippe Mathieu-Daudé, Thomas Huth, Michael Tokarev,
	Alex Bennée, Daniel P. Berrangé

We just (re)discovered that our gitlab rules don't work nicely with
pipelines running from stable staging branches. Every pipeline gets
published with the 'latest' tag, whether its the main staging branch
or one of the stable staging branches. If pipelines for multiple
staging branches run concurrently they'll get very confused and end
up using the wrong container content. eg a 8.0 stable job will get
run with a container from the development branch, or vica-verca.

With this series we dynamically change the tag so that the 'staging'
branch still uses 'latest', but the stable 'staging-X.Y' branaches
use a 'staging-X-Y' container tag.

We also let the container tag be set explicitly via the new variable

  QEMU_CI_CONTAINER_TAG

to facilitate CI testing, the new variable

  QEMU_CI_UPSTREAM

can be set to the fork namespace, to allow contributors to run a
pipeline as if their fork were upstream.

Finally 'QEMU_CI=1' is also made to work in upstream, so that it is
possible to re-run selective jobs on staging branches.

Changed in v2:

 - Allow QEMU_CI=1 to work on all staging branches, not just stable
 - Rebased

Daniel P. Berrangé (5):
  gitlab: centralize the container tag name
  gitlab: allow overriding name of the upstream repository
  gitlab: stable staging branches publish containers in a separate tag
  gitlab: avoid extra pipelines for tags and stable branches
  gitlab: support disabling job auto-run in upstream

 .gitlab-ci.d/base.yml                | 63 ++++++++++++++++++++++++----
 .gitlab-ci.d/buildtest-template.yml  |  4 +-
 .gitlab-ci.d/buildtest.yml           |  4 +-
 .gitlab-ci.d/container-template.yml  |  3 +-
 .gitlab-ci.d/crossbuild-template.yml |  6 +--
 .gitlab-ci.d/static_checks.yml       |  4 +-
 docs/devel/ci-jobs.rst.inc           | 11 +++++
 7 files changed, 78 insertions(+), 17 deletions(-)

-- 
2.40.1



^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2023-06-08 11:43 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-26 10:19 [PATCH v2 0/5] gitlab: improvements to handling of stable staging branches Daniel P. Berrangé
2023-05-26 10:19 ` [PATCH v2 1/5] gitlab: centralize the container tag name Daniel P. Berrangé
2023-05-26 10:19 ` [PATCH v2 2/5] gitlab: allow overriding name of the upstream repository Daniel P. Berrangé
2023-05-26 15:58   ` Richard Henderson
2023-05-26 10:19 ` [PATCH v2 3/5] gitlab: stable staging branches publish containers in a separate tag Daniel P. Berrangé
2023-05-26 15:59   ` Richard Henderson
2023-05-26 10:19 ` [PATCH v2 4/5] gitlab: avoid extra pipelines for tags and stable branches Daniel P. Berrangé
2023-05-26 16:00   ` Richard Henderson
2023-05-26 10:19 ` [PATCH v2 5/5] gitlab: support disabling job auto-run in upstream Daniel P. Berrangé
2023-05-26 16:04   ` Richard Henderson
2023-06-08 11:42     ` Daniel P. Berrangé
2023-05-30  7:36 ` [PATCH v2 0/5] gitlab: improvements to handling of stable staging branches Michael Tokarev
2023-05-30 10:56   ` Daniel P. Berrangé

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).