From 7b940097545ea60e5089ae67f593311f136ae271 Mon Sep 17 00:00:00 2001 From: Alan Coopersmith Date: Sat, 23 Jul 2022 18:29:13 -0700 Subject: gitlab CI: enable commit & merge request checks Uses ci-fairy from freedesktop/ci-templates Signed-off-by: Alan Coopersmith --- .gitlab-ci.yml | 55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 54 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f7891323..9e4afb41 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,3 +1,5 @@ +# vim: set expandtab shiftwidth=2 tabstop=8 textwidth=0 filetype=yaml: + # FDO_DISTRIBUTION_TAG is the tag of the docker image used for the build # jobs. If the image doesn't exist yet, the docker-image stage generates it # or copies it from upstream (this is all handled by the templates). @@ -12,21 +14,72 @@ variables: FDO_DISTRIBUTION_TAG: "2021-05-10" FDO_UPSTREAM_REPO: xorg/driver/xf86-video-ati +# +# This CI uses the freedesktop.org ci-templates. +# Please see the ci-templates documentation for details: +# https://freedesktop.pages.freedesktop.org/ci-templates/ + +.templates_sha: &template_sha 34f4ade99434043f88e164933f570301fd18b125 # see https://docs.gitlab.com/ee/ci/yaml/#includefile + include: - project: 'freedesktop/ci-templates' - ref: 290b79e0e78eab67a83766f4e9691be554fc4afd + ref: *template_sha file: '/templates/debian.yml' + - project: 'freedesktop/ci-templates' + ref: *template_sha + file: '/templates/ci-fairy.yml' + stages: - docker-image - build + - test +# +# Verify that commit messages are as expected +# +check-commits: + extends: + - .fdo.ci-fairy + stage: test + script: + - ci-fairy check-commits --junit-xml=results.xml + except: + - master@$FDO_UPSTREAM_REPO + variables: + GIT_DEPTH: 100 + artifacts: + reports: + junit: results.xml + allow_failure: true +# +# Verify that the merge request has the allow-collaboration checkbox ticked +# +check-merge-request: + extends: + - .fdo.ci-fairy + stage: test + script: + - ci-fairy check-merge-request --require-allow-collaboration --junit-xml=results.xml + artifacts: + when: on_failure + reports: + junit: results.xml + allow_failure: true + + +# +# Build a container with the given tag and the packages pre-installed. +# This only happens if/when the tag changes, otherwise the existing image is +# re-used. +# container-build: extends: - .fdo.container-build@debian stage: docker-image variables: + GIT_STRATEGY: none # The default build instructions -- cgit v1.2.3