NetworkManager/.gitlab-ci/config.yml
Íñigo Huguet ff101ada3a ci: update distributions that we test in the CI
We had an agreement on what distributions should we test and when. We'll
test in Tier 2 those distros that can potentially use the current
version of NM and in Tier 3 those distros that are still maintained (not
EOL'd).

So, Tier 2 is to catch errors that might be severe because might be
blocking for the distributions planning to use the current NM version,
they must be fixed ASAP, before doing the release if possible. These
"distribution versions" will be different for main branch than for
stable branches:
 - Debian 12 uses NM-1.42, so Debian 12 should be Tier 2 in the branch
   nm-1-42.
 - However, Debian 12 will never use newer stable versions, so it should
   be Tier 3 in main branch.

We want to run the Tier 3 tests even if those distros won't use newer
vesions of NM because they are useful to test NM compilation with older
compilers and tools. Fixing failures here might not be considered
urgent, though.

To save resources from Freedesktop we'll run Tier 1 on every MR and
Tiers 2 and 3 before doing a release, or on demand if we need.
2024-04-08 06:35:20 +00:00

74 lines
1.6 KiB
YAML

# This file contains the configuration for the gitlab ci.
#
# To recreate the .gitlab-ci.yml file, run
# ci-fairy generate-template
#
# The ci-fairy tool is part of
# https://gitlab.freedesktop.org/freedesktop/ci-templates
#
# Some distros are fairly similar, and we reuse similar scripts.
# The base type maps the distro name to their base.
base_types:
fedora: fedora
centos: fedora
debian: debian
ubuntu: debian
alpine: alpine
# The list of all distributions we want to create job for.
distributions:
# TIER 1: CI run for all MRs.
# The first tier:1 in the list is used to build the pages and check-{tree,patch}.
- name: fedora
tier: 1
versions:
- '40'
- rawhide
- name: centos
tier: 1
versions:
- 'stream9'
# TIER 2: distribution versions that will or might use the current NM version.
# Run when doing a release.
- name: debian
tier: 2
versions:
- sid
- testing
- name: ubuntu
tier: 2
versions:
- devel
- name: alpine
tier: 2
versions:
- edge
# TIER 3: distribution versions not in EOL but don't use the current NM version.
# Run when doing a release, but a failure won't be blocking for the release.
- name: fedora
tier: 3
versions:
- '39'
- name: ubuntu
tier: 3
versions:
- '20.04'
- '22.04'
- '24.04'
- 'rolling' # latest non-LTS
- name: debian
tier: 3
versions:
- 'stable'
- 'oldstable'
- name: centos
tier: 3
versions:
- 'stream8'
- name: alpine
tier: 3
versions:
- 'latest'