Browse Source

Add Ubuntu 24.10 and Fedora 41 to CI. (#18753)

* Add Ubuntu 24.10 and Fedora 41 to CI.

* Fix broken DNF package install checking in dependency handling script.

* Force usage of DNF on Fedora for dependency handling.
Austin S. Hemmelgarn 5 months ago
parent
commit
0a16c36fe8
2 changed files with 28 additions and 6 deletions
  1. 14 2
      .github/data/distros.yml
  2. 14 4
      packaging/installer/install-required-packages.sh

+ 14 - 2
.github/data/distros.yml

@@ -174,7 +174,7 @@ include:
 
   - &fedora
     distro: fedora
-    version: "40"
+    version: "41"
     support_type: Core
     notes: ''
     eol_check: true
@@ -183,13 +183,20 @@ include:
       dnf remove -y json-c-devel
     packages: &fedora_packages
       type: rpm
-      repo_distro: fedora/40
+      repo_distro: fedora/41
       builder_rev: *def_builder_rev
       arches:
         - x86_64
         - aarch64
     test:
       ebpf-core: true
+  - <<: *fedora
+    version: "40"
+    packages:
+      <<: *fedora_packages
+      repo_distro: fedora/40
+    test:
+      ebpf-core: true
   - <<: *fedora
     version: "39"
     packages:
@@ -303,6 +310,11 @@ include:
         - arm64
     test:
       ebpf-core: true
+  - <<: *ubuntu
+    version: "24.10"
+    packages:
+      <<: *ubuntu_packages
+      repo_distro: ubuntu/oracular
   - <<: *ubuntu
     version: "22.04"
     packages:

+ 14 - 4
packaging/installer/install-required-packages.sh

@@ -411,25 +411,35 @@ detect_package_manager_from_distribution() {
     centos* | clearos* | rocky* | almalinux*)
       package_installer=""
       tree="centos"
-      [[ -n "${yum}" ]] && package_installer="install_yum"
       [[ -n "${dnf}" ]] && package_installer="install_dnf"
+      [[ -n "${yum}" ]] && package_installer="install_yum"
       if [[ "${IGNORE_INSTALLED}" -eq 0 ]] && [[ -z "${package_installer}" ]]; then
         echo >&2 "command 'yum' or 'dnf' is required to install packages on a '${distribution} ${version}' system."
         exit 1
       fi
       ;;
 
-    fedora* | redhat* | red\ hat* | rhel*)
+    redhat* | red\ hat* | rhel*)
       package_installer=
       tree="rhel"
-      [[ -n "${yum}" ]] && package_installer="install_yum"
       [[ -n "${dnf}" ]] && package_installer="install_dnf"
+      [[ -n "${yum}" ]] && package_installer="install_yum"
       if [[ "${IGNORE_INSTALLED}" -eq 0 ]] && [[ -z "${package_installer}" ]]; then
         echo >&2 "command 'yum' or 'dnf' is required to install packages on a '${distribution} ${version}' system."
         exit 1
       fi
       ;;
 
+    fedora*)
+      package_installer="install_dnf"
+      tree="rhel"
+      if [[ "${IGNORE_INSTALLED}" -eq 0 ]] && [[ -z "${package_installer}" ]]; then
+        echo >&2 "command 'yum' or 'dnf' is required to install packages on a '${distribution} ${version}' system."
+        exit 1
+      fi
+      ;;
+
+
     ol*)
       package_installer=
       tree="ol"
@@ -1543,7 +1553,7 @@ install_yum() {
 
 validate_install_dnf() {
   echo >&2 " > Checking if package '${*}' is installed..."
-  dnf list installed "${*}" > /dev/null 2>&1 || echo "${*}"
+  dnf list --installed "${*}" > /dev/null 2>&1 || echo "${*}"
 }
 
 install_dnf() {