From 339f99c08e2ee558e70debd4b8c9a05ba12bda0e Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Tue, 14 Nov 2023 17:50:53 +0100 Subject: [PATCH] gitlab-ci: drop builds for CentOS 8 (8.1.1911, 8.2.2004, 8.3.2011) CentOS Linux 8 is long gone. We were only running tests on this old build environment, to see how we fare in such environment. The test was broken for 4+ months. Instead of fixing it, disable it. It's partly caused by RHEL8, as it is somewhat cumbersome to even build on CentOS 8. That's because some devel packages (like libteam-devel) are not installable. As workaround for that, we re-build such packages in a copr ([1]). The problem is, that we only have one copr build for e.g. CentOS 8. If we rebuild against latest CentOS 8 Stream, then libteam is build against newer dependencies, which are not installable on CentOS Linux 8.1.1911 (etc). We would have to build libteam in a way, that does not drag newer dependencies that are missing on CentOS Linux 8. For example, trying to use copr [1] on CentOS Linux 8 and installing "teamd" gives: Error: Problem: package teamd-devel-1.31-4.el8.x86_64 requires teamd = 1.31-4.el8, but none of the providers can be installed - conflicting requests - nothing provides libjansson.so.4(libjansson.so.4)(64bit) needed by teamd-1.31-4.el8.x86_64 This could be hacked around, for example by having libteamd-devel not depend on any teamd package. Instead, just drop it. It's gone. Arguable, CentOS 8 Stream should be reasonably close (in terms of versions of gcc, glibc, glib) so we don't miss too much. [1] https://copr.fedorainfracloud.org/coprs/nmstate/nm-build-deps/ https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1793 --- .gitlab-ci.yml | 79 +++--------------------------------- .gitlab-ci/config.yml | 6 --- .gitlab-ci/fedora-install.sh | 18 +------- 3 files changed, 7 insertions(+), 96 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e2014dd54..83dd91bb6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -57,11 +57,11 @@ variables: # # This is done by running `ci-fairy generate-template` and possibly bumping # ".default_tag". - ALPINE_TAG: 'tag-15ad9771f66e' - CENTOS_TAG: 'tag-01eb3016c31d' - DEBIAN_TAG: 'tag-5b69abc7e7b7' - FEDORA_TAG: 'tag-01eb3016c31d' - UBUNTU_TAG: 'tag-5b69abc7e7b7' + ALPINE_TAG: 'tag-6cb82bbb4f5a' + CENTOS_TAG: 'tag-a17a9044f6af' + DEBIAN_TAG: 'tag-b6bc6acbb696' + FEDORA_TAG: 'tag-a17a9044f6af' + UBUNTU_TAG: 'tag-b6bc6acbb696' ALPINE_EXEC: 'bash .gitlab-ci/alpine-install.sh' CENTOS_EXEC: 'bash .gitlab-ci/fedora-install.sh' @@ -327,28 +327,6 @@ tier3:debian:testing@prep: FDO_DISTRIBUTION_EXEC: $DEBIAN_EXEC when: manual -tier2:centos:8.1.1911@prep: - extends: - - .fdo.container-build@centos - stage: prep - variables: - GIT_STRATEGY: none - FDO_DISTRIBUTION_VERSION: '8.1.1911' - FDO_DISTRIBUTION_TAG: $CENTOS_TAG - FDO_DISTRIBUTION_EXEC: $CENTOS_EXEC - when: manual - -tier2:centos:8.3.2011@prep: - extends: - - .fdo.container-build@centos - stage: prep - variables: - GIT_STRATEGY: none - FDO_DISTRIBUTION_VERSION: '8.3.2011' - FDO_DISTRIBUTION_TAG: $CENTOS_TAG - FDO_DISTRIBUTION_EXEC: $CENTOS_EXEC - when: manual - tier2:centos:stream8@prep: extends: - .fdo.container-build@centos @@ -371,17 +349,6 @@ tier2:centos:stream9@prep: FDO_DISTRIBUTION_EXEC: $CENTOS_EXEC when: manual -tier3:centos:8.2.2004@prep: - extends: - - .fdo.container-build@centos - stage: prep - variables: - GIT_STRATEGY: none - FDO_DISTRIBUTION_VERSION: '8.2.2004' - FDO_DISTRIBUTION_TAG: $CENTOS_TAG - FDO_DISTRIBUTION_EXEC: $CENTOS_EXEC - when: manual - tier2:alpine:latest@prep: extends: - .fdo.container-build@alpine @@ -672,30 +639,6 @@ t_debian:testing: needs: - "tier3:debian:testing@prep" -t_centos:8.1.1911: - extends: - - .build@template - - .fdo.distribution-image@centos - - .nm_artifacts_debug - stage: tier2 - variables: - FDO_DISTRIBUTION_VERSION: '8.1.1911' - FDO_DISTRIBUTION_TAG: $CENTOS_TAG - needs: - - "tier2:centos:8.1.1911@prep" - -t_centos:8.3.2011: - extends: - - .build@template - - .fdo.distribution-image@centos - - .nm_artifacts_debug - stage: tier2 - variables: - FDO_DISTRIBUTION_VERSION: '8.3.2011' - FDO_DISTRIBUTION_TAG: $CENTOS_TAG - needs: - - "tier2:centos:8.3.2011@prep" - t_centos:stream8: extends: - .build@template @@ -720,18 +663,6 @@ t_centos:stream9: needs: - "tier2:centos:stream9@prep" -t_centos:8.2.2004: - extends: - - .build@template - - .fdo.distribution-image@centos - - .nm_artifacts_debug - stage: tier3 - variables: - FDO_DISTRIBUTION_VERSION: '8.2.2004' - FDO_DISTRIBUTION_TAG: $CENTOS_TAG - needs: - - "tier3:centos:8.2.2004@prep" - t_alpine:latest: extends: - .build@template diff --git a/.gitlab-ci/config.yml b/.gitlab-ci/config.yml index 4012ad98a..2377c31be 100644 --- a/.gitlab-ci/config.yml +++ b/.gitlab-ci/config.yml @@ -61,14 +61,8 @@ distributions: - name: centos tier: 2 versions: - - '8.1.1911' - - '8.3.2011' - 'stream8' - 'stream9' - - name: centos - tier: 3 - versions: - - '8.2.2004' - name: alpine tier: 2 versions: diff --git a/.gitlab-ci/fedora-install.sh b/.gitlab-ci/fedora-install.sh index 734ef5a6a..5ffb461c5 100755 --- a/.gitlab-ci/fedora-install.sh +++ b/.gitlab-ci/fedora-install.sh @@ -8,9 +8,7 @@ CENTOS_VERSION=0 grep -q '^NAME=.*\(CentOS\)' /etc/os-release && IS_CENTOS=1 grep -q '^NAME=.*\(Fedora\)' /etc/os-release && IS_FEDORA=1 if [ $IS_CENTOS = 1 ]; then - if grep -q '^VERSION_ID=.*\<7\>' /etc/os-release ; then - CENTOS_VERSION=7 - elif grep -q '^VERSION_ID=.*\<8\>' /etc/os-release ; then + if grep -q '^VERSION_ID=.*\<8\>' /etc/os-release ; then CENTOS_VERSION=8 elif grep -q '^VERSION_ID=.*\<9\>' /etc/os-release ; then CENTOS_VERSION=9 @@ -23,19 +21,7 @@ if [ $IS_CENTOS = 1 ]; then fi if [ "$IS_CENTOS" = 1 ]; then - if [ "$CENTOS_VERSION" = 7 ]; then - yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm - yum install -y glibc-common - localedef -c -i pl_PL -f UTF-8 pl_PL.UTF-8 - locale -a - yum install -y python36-dbus python36-gobject-base - elif [ "$CENTOS_VERSION" = 8 -o "$CENTOS_VERSION" = stream8 ]; then - if [ "$CENTOS_VERSION" = 8 ]; then - # CentOS Linux 8 is now EOF and plain `dnf upgrade` does not work. We need - # to patch the mirror list. - sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* - sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-* - fi + if [ "$CENTOS_VERSION" = stream8 ]; then dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm dnf install -y 'dnf-command(config-manager)' dnf config-manager --set-enabled powertools || \