Skip to content

ci: update distributions that we test in the CI

Íñigo Huguet requested to merge ih/ci-distros into main

Summary

Update the distros that we test in Gitlab-CI.

Purpose

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.

There are a few differences from the list that we agreed in the meeting, feel free to comment about them:

  • I haven't added Arch Linux yet: it requires to create a .gitlab-ci/archlinux-install.sh script so it is more work.
  • Added debian sid as Tier 2 because it is a version that can potentially use main too.
  • Added centos stream8 as Tier 3. Probably we forgot about it.
  • Added ubuntu 24.04 as Tier 3. It is about to be released, and despite right now it is the same as devel, adding it now will avoid that we forget to add it later.

Checklist

Please read https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/blob/main/CONTRIBUTING.md before opening the merge request. In particular, check that:

  • the subject for all commits is concise and explicative
  • the message for all commits explains the reason for the change
  • the source is properly formatted
  • any relevant documentation is up to date
  • you have added unit tests if applicable
  • the NEWS file is updated when the change deserves to be mentioned, for example for new features, behavior changes, API deprecations, etc.

Merge request reports