[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFC PATCH 10/16] gitlab-ci: Introduce the CI "job maintainer" concept
From: |
Philippe Mathieu-Daudé |
Subject: |
[RFC PATCH 10/16] gitlab-ci: Introduce the CI "job maintainer" concept |
Date: |
Tue, 10 Nov 2020 17:01:34 +0100 |
When a job fails, someone has to take care of it. As we can
not wait indefinitively of volunteers good will, introduce the
concept of "job maintainers". A job maintainer is reponsible
of keeping it working, or contact the developers having broken
it to fix it.
When a job is added, it must have a maintainer. A job without
maintainer is not run automatically. It can however be run
manually from the WebUI.
To declare a maintainer, it is as easy as defining the
JOB_MAINTAINER_NAME / JOB_MAINTAINER_EMAIL environment variables.
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
Ideally the runner will notify the maintainer by mail that
a job fails. But we are not quite there yet.
It would be nice if someone document this properly.
---
.gitlab-ci.d/containers.yml | 4 ++++
.gitlab-ci.d/crossbuilds.yml | 6 ++++++
.gitlab-ci.yml | 6 ++++++
3 files changed, 16 insertions(+)
diff --git a/.gitlab-ci.d/containers.yml b/.gitlab-ci.d/containers.yml
index 7e664878cab..bd2a05008d1 100644
--- a/.gitlab-ci.d/containers.yml
+++ b/.gitlab-ci.d/containers.yml
@@ -21,6 +21,10 @@
after_script:
- docker logout
rules:
+ # Skip unmaintained jobs
+ - if: $JOB_MAINTAINER_NAME == null || $JOB_MAINTAINER_EMAIL == null
+ when: manual
+ allow_failure: true
- changes:
- .gitlab-ci.d/containers.yml
- tests/docker/*
diff --git a/.gitlab-ci.d/crossbuilds.yml b/.gitlab-ci.d/crossbuilds.yml
index 701550f028c..aecdb2a38f1 100644
--- a/.gitlab-ci.d/crossbuilds.yml
+++ b/.gitlab-ci.d/crossbuilds.yml
@@ -1,6 +1,12 @@
.cross_common_job:
stage: build
image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
+ rules:
+ # Skip unmaintained jobs
+ - if: $JOB_MAINTAINER_NAME == null || $JOB_MAINTAINER_EMAIL == null
+ when: manual
+ allow_failure: true
+ - when: always
.cross_system_build_job:
extends: .cross_common_job
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 2e631d4f160..ded4f0bdd18 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -19,6 +19,12 @@ include:
.native_common_job:
image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
+ rules:
+ # Skip unmaintained jobs
+ - if: $JOB_MAINTAINER_NAME == null || $JOB_MAINTAINER_EMAIL == null
+ when: manual
+ allow_failure: true
+ - when: always
.native_build_job:
extends: .native_common_job
--
2.26.2
- [RFC PATCH 00/16] gitlab-ci: Introduce "CI job maintainer" concept, mark jobs maintained, Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 01/16] gitlab-ci: Replace YAML anchors by extends (cross_system_build_job), Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 02/16] gitlab-ci: Replace YAML anchors by extends (native_build_job), Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 03/16] gitlab-ci: Replace YAML anchors by extends (native_test_job), Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 04/16] gitlab-ci: Replace YAML anchors by extends (acceptance_test_job), Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 05/16] gitlab-ci: Replace YAML anchors by extends (container_job), Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 06/16] gitlab-ci: Rename acceptance_test_job -> integration_test_job, Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 07/16] gitlab-ci: Extract common job definition as 'cross_common_job', Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 08/16] gitlab-ci: Extract common job definition as 'native_common_job', Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 09/16] gitlab-ci: Set default workflow rule, Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 10/16] gitlab-ci: Introduce the CI "job maintainer" concept,
Philippe Mathieu-Daudé <=
- [RFC PATCH 11/16] gitlab-ci: Mark some jobs maintained by Red Hat Virt CI team, Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 12/16] gitlab-ci: Mark Bin Meng maintainer of the OpenSBI job, Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 13/16] gitlab-ci: Mark Alex Bennée maintainer of Debian / Ubuntu jobs, Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 14/16] gitlab-ci: Mark Stefan Weil maintainer of the TCI job, Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 15/16] gitlab-ci: Volunteer to maintain Debian based and hobbyist jobs, Philippe Mathieu-Daudé, 2020/11/10
- [RFC PATCH 16/16] gitlab-ci: Do not automatically run integration tests for push events, Philippe Mathieu-Daudé, 2020/11/10