Mesa (master): ci: Add jobs running ci-fairy checks
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Oct 21 16:32:45 UTC 2020
Module: Mesa
Branch: master
Commit: 4c41d1900e58cb09501cbf113568645e70634aff
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4c41d1900e58cb09501cbf113568645e70634aff
Author: Michel Dänzer <mdaenzer at redhat.com>
Date: Thu Aug 6 17:37:33 2020 +0200
ci: Add jobs running ci-fairy checks
These can catch various common issues in MR settings and Git commit
logs.
The "check mr" job only exists in pre-merge pipelines for MRs, and runs
automatically.
The "check commits" job only exists in pre-merge pipelines for MRs and
in pipelines for forked branches. It runs automatically in the former
case and can be manually triggered in the latter.
v2:
* Use git_archive docker image (Daniel Stone)
* Use a single sanity stage for both jobs (Tomeu Vizoso)
Reviewed-by: Peter Hutterer <peter.hutterer at who-t.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6209>
---
.gitlab-ci.yml | 54 +++++++++++++++++++++++++++++++++++++++++++++++-------
1 file changed, 47 insertions(+), 7 deletions(-)
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 4ad29d71117..45204d1f4cb 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -18,6 +18,7 @@ include:
stages:
- container
- container-2
+ - sanity
- git-archive
- deploy
- meson-x86_64
@@ -462,6 +463,11 @@ git_archive:
rules:
- if: *is-scheduled-pipeline
when: always
+ - if: *is-pre-merge
+ when: on_success
+ - if: *is-forked-branch
+ when: manual
+ # Other cases default to never
variables:
FDO_REPO_SUFFIX: &git-archive-suffix "alpine/git_archive"
FDO_DISTRIBUTION_EXEC: 'pip3 install git+http://gitlab.freedesktop.org/freedesktop/ci-templates@6f5af7e5574509726c79109e3c147cee95e81366'
@@ -470,24 +476,26 @@ git_archive:
FDO_DISTRIBUTION_TAG: &git-archive-tag "2020-07-07"
FDO_DISTRIBUTION_PACKAGES: git py3-pip
+.use-git_archive:
+ extends: .fdo.suffixed-image at alpine
+ variables:
+ FDO_DISTRIBUTION_TAG: *git-archive-tag
+ FDO_REPO_SUFFIX: *git-archive-suffix
+ needs:
+ - git_archive
+
# Git archive
make git archive:
+ extends: .use-git_archive
stage: git-archive
- extends: .fdo.suffixed-image at alpine
rules:
- if: *is-scheduled-pipeline
when: on_success
# ensure we are running on packet
tags:
- packet.net
- variables:
- FDO_DISTRIBUTION_TAG: *git-archive-tag
- FDO_REPO_SUFFIX: *git-archive-suffix
- needs:
- - git_archive
-
script:
# compress the current folder
- tar -cvzf ../$CI_PROJECT_NAME.tar.gz .
@@ -497,6 +505,38 @@ make git archive:
- ci-fairy minio cp ../$CI_PROJECT_NAME.tar.gz minio://minio-packet.freedesktop.org/git-cache/$CI_PROJECT_NAMESPACE/$CI_PROJECT_NAME/$CI_PROJECT_NAME.tar.gz
+# Sanity checks of MR settings and commit logs
+.sanity-check:
+ extends: .use-git_archive
+ stage: sanity
+ artifacts:
+ when: on_failure
+ reports:
+ junit: check-*.xml
+
+check mr:
+ extends: .sanity-check
+ rules:
+ - if: *is-pre-merge
+ when: on_success
+ # Other cases default to never
+ variables:
+ GIT_STRATEGY: none
+ script:
+ - ci-fairy check-merge-request --require-allow-collaboration --junit-xml=check-merge-request.xml
+
+check commits:
+ extends: .sanity-check
+ rules:
+ - if: *is-pre-merge
+ when: on_success
+ - if: *is-forked-branch
+ when: manual
+ # Other cases default to never
+ script:
+ - ci-fairy check-commits --junit-xml=check-commits.xml
+
+
# BUILD
# Shared between windows and Linux
More information about the mesa-commit
mailing list