NetworkManager/.gitlab-ci
Íñigo Huguet 9e47c9bc6a ci: make check-tree optional for branches other than main
Old branches tend to be formatted with a different versions of
clang-format, so when patches are backported, they introduce some
differences in formatting, making the check-tree job to fail.

These changes in formatting are normally small, and we don't pay much
attention to them, causing that the pipelines are always red, increasing
the work required to check if there are important failures or not.

Make check-tree optional for branches other than main. This way,
failures will be shown as a "warning", and if a pipeline only shows a
warning we don't need to inspect it.
2025-01-17 12:16:43 +01:00
..
alpine-install.sh gitlab-ci: enable test build on alpine linux 2020-12-11 18:14:10 +01:00
ci.template ci: make check-tree optional for branches other than main 2025-01-17 12:16:43 +01:00
config.yml ci: update distros 2024-12-24 14:04:54 +01:00
coverity.sh gitlab-ci: add coverity submissions to weekly scheduled CI 2024-06-26 12:58:03 +02:00
debian-install.sh gitlab-ci: fix detection and handling of Ubuntu 18.04 2023-06-30 18:51:13 +02:00
distros-info.yml ci: update distros 2024-12-24 14:04:54 +01:00
distros_support.py distros_support.py: always put CentOS Stream at least as Tier 3 2024-12-24 14:42:45 +01:00
fedora-install.sh gitlab: fix helper scripts to support DNF5 2024-05-30 15:23:32 +02:00
README.md all: remove misc mentions of autotools in docs 2024-09-11 12:18:15 +00:00
run-test.sh ci: fix test failures on non Fedora distros 2024-11-12 15:38:17 +01:00

.gitlab-ci

We run tests in the gitlab-ci pipeline at https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/pipelines

This directory contains a template for generating .gitlab-ci.yml.

It uses ci-templates project.

To get the right version of ci-templates, see the "Regenerate with" comment in .gitlab-ci.yml. It shows how to install ci-fairy via python pip. The exact version to be used is hard-coded as .templates_sha variable in ci.template file.

Whenever changing relevant files, .gitlab-ci.yml must be regenerated. Regenerate the yml by running ci-fairy generate-template.

There are also tests for checking that the yml is correct:

  1. run tools/check-gitlab-ci.sh
  2. run meson test check-local-gitlab-ci, which runs 1). This also runs as part of meson test.

In both cases, the test is skipped if ci-fairy is not in the path. Install the correct ci-fairy version.

In gitlab-ci pipeline, the "check-tree" test also checks that .gitlab-ci.yml is up to date.