mbox series

[0/5] gitlab: restrict running jobs in forks and upstream master

Message ID 20220526110705.59952-1-berrange@redhat.com (mailing list archive)
Headers show
Series gitlab: restrict running jobs in forks and upstream master | expand

Message

Daniel P. Berrangé May 26, 2022, 11:07 a.m. UTC
Currently on upstream most jobs will run in both staging
and master. This is quite wasteful of CI credits. The only
need to run in master is for the jobs related to publishing
the website

In forks we run jobs on every push. With restricted CI
allowance this is quickly going to cause  problems.

With this series jobs will no longer run on forks at all,
without an opt-in with QEMU_CI=1 (pipeline with manual
jobs) or QEMU_CI=2 (pipeline with immediate jobs)

This is a rewrite of a previous proposal:

https://lists.nongnu.org/archive/html/qemu-devel/2021-08/msg02104.html

where I've kept it simpler and also split up the patches
into more understandable chunks

Daniel P. Berrangé (5):
  gitlab: introduce a common base job template
  gitlab: convert Cirrus jobs to .base_job_template
  gitlab: convert static checks to .base_job_template
  gitlab: convert build/container jobs to .base_job_template
  gitlab: don't run CI jobs in forks by default

 .gitlab-ci.d/base.yml                | 72 +++++++++++++++++++++++
 .gitlab-ci.d/buildtest-template.yml  | 16 ++---
 .gitlab-ci.d/buildtest.yml           | 28 ++++-----
 .gitlab-ci.d/cirrus.yml              | 16 ++---
 .gitlab-ci.d/container-cross.yml     |  6 +-
 .gitlab-ci.d/container-template.yml  |  1 +
 .gitlab-ci.d/crossbuild-template.yml |  3 +
 .gitlab-ci.d/qemu-project.yml        |  1 +
 .gitlab-ci.d/static_checks.yml       | 19 +++---
 .gitlab-ci.d/windows.yml             |  1 +
 docs/devel/ci-jobs.rst.inc           | 88 +++++++++++++++++++++++++++-
 11 files changed, 199 insertions(+), 52 deletions(-)
 create mode 100644 .gitlab-ci.d/base.yml

Comments

Alex Bennée May 27, 2022, 1:27 p.m. UTC | #1
Daniel P. Berrangé <berrange@redhat.com> writes:

> Currently on upstream most jobs will run in both staging
> and master. This is quite wasteful of CI credits. The only
> need to run in master is for the jobs related to publishing
> the website
>
> In forks we run jobs on every push. With restricted CI
> allowance this is quickly going to cause  problems.
>
> With this series jobs will no longer run on forks at all,
> without an opt-in with QEMU_CI=1 (pipeline with manual
> jobs) or QEMU_CI=2 (pipeline with immediate jobs)
>
> This is a rewrite of a previous proposal:
>
> https://lists.nongnu.org/archive/html/qemu-devel/2021-08/msg02104.html
>
> where I've kept it simpler and also split up the patches
> into more understandable chunks

Queued to testing/next, thanks.

I'll fix up the comment and move some stuff into the rst.

>
> Daniel P. Berrangé (5):
>   gitlab: introduce a common base job template
>   gitlab: convert Cirrus jobs to .base_job_template
>   gitlab: convert static checks to .base_job_template
>   gitlab: convert build/container jobs to .base_job_template
>   gitlab: don't run CI jobs in forks by default
>
>  .gitlab-ci.d/base.yml                | 72 +++++++++++++++++++++++
>  .gitlab-ci.d/buildtest-template.yml  | 16 ++---
>  .gitlab-ci.d/buildtest.yml           | 28 ++++-----
>  .gitlab-ci.d/cirrus.yml              | 16 ++---
>  .gitlab-ci.d/container-cross.yml     |  6 +-
>  .gitlab-ci.d/container-template.yml  |  1 +
>  .gitlab-ci.d/crossbuild-template.yml |  3 +
>  .gitlab-ci.d/qemu-project.yml        |  1 +
>  .gitlab-ci.d/static_checks.yml       | 19 +++---
>  .gitlab-ci.d/windows.yml             |  1 +
>  docs/devel/ci-jobs.rst.inc           | 88 +++++++++++++++++++++++++++-
>  11 files changed, 199 insertions(+), 52 deletions(-)
>  create mode 100644 .gitlab-ci.d/base.yml