[gnome-shell] ci: Replace only/except with rules
- From: Marge Bot <marge-bot src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] ci: Replace only/except with rules
- Date: Fri, 20 Nov 2020 23:37:10 +0000 (UTC)
commit 07fd0d3f2e5f111cf664da701c65f0bb56947fb5
Author: Jordan Petridis <jpetridis gnome org>
Date: Fri Nov 20 14:54:13 2020 +0100
ci: Replace only/except with rules
only/except keywords where deperecated in favor of rules.
Since we started using GNOME/gnome-shell!1492 it introduced
a second pipeline being run for each commit.
Detached pipelines are the only way to access CI_MERGE_REQUEST_*
variables, and if we disable normal pipelines you will need to
create wip/spam MRs in order to run the tests.
This reworked rules makes it so, the normal pipeline needs manual
interaction to be started, and the detached/MR pipleines is always
run.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1503>
.gitlab-ci.yml | 22 +++++++++++++++-------
1 file changed, 15 insertions(+), 7 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 4320c4f168..26d91d4a0d 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -31,11 +31,19 @@ variables:
image: registry.gitlab.gnome.org/gnome/mutter/fedora/33:2020-11-20.1
-.only_default: &only_default
- only:
- - branches
- - tags
- - merge_requests
+workflow:
+ rules:
+ - if: '$CI_MERGE_REQUEST_IID'
+ - if: '$CI_COMMIT_TAG'
+ - if: '$CI_COMMIT_BRANCH'
+
+.pipeline_guard: &pipeline_guard
+ rules:
+ - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
+ - if: '$CI_COMMIT_TAG'
+ - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
+ - if: '$CI_COMMIT_BRANCH =~ /^gnome-[0-9-]+$/'
+ - when: 'manual'
.gnome-shell.fedora:33:
variables:
@@ -73,7 +81,7 @@ check_commit_log:
GIT_DEPTH: "100"
script:
- ./.gitlab-ci/check-commit-log.sh
- <<: *only_default
+ <<: *pipeline_guard
artifacts:
expire_in: 1 week
paths:
@@ -92,13 +100,13 @@ check-merge-request:
else
echo "Not a merge request" ;
fi
+ <<: *pipeline_guard
artifacts:
expire_in: 1 week
paths:
- check-merge-request-report.xml
reports:
junit: check-merge-request-report.xml
- <<: *only_default
build-fedora-container:
extends:
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]