From a0b9fe0812a5b601bef609bae5e2a7e59f20fc37 Mon Sep 17 00:00:00 2001 From: Quentin Deslandes Date: Tue, 12 May 2026 18:33:49 +0200 Subject: [PATCH 1/2] build: add Fedora 44 to the CI matrix Add a Dockerfile for Fedora 44 mirroring the Fedora 43 image: same package list plus libpfm-devel (Fedora 44's google-benchmark-devel now declares a hard dep on libpfm, breaking find_package(benchmark) without it). Wire the new image into .github/workflows/ci.yaml: - create-images and build matrices: add { fedora, 44 } alongside the existing entries (41, 42, 43, ubuntu). - test job container: switch from fedora-43 to fedora-44. This makes the canonical test runner clang-tidy 22.1.4 from Fedora 44, which is the version that surfaces the warnings fixed in commit 1a6449b1. - doc job container: switch from fedora-43 to fedora-44 for the same consistency. Verified locally inside the new image: cmake configure, full build, test_bin, doc, check (lint + checkstyle), and all 23 unit tests pass. --- .github/fedora-44.Dockerfile | 39 ++++++++++++++++++++++++++++++++++++ .github/workflows/ci.yaml | 6 ++++-- 2 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 .github/fedora-44.Dockerfile diff --git a/.github/fedora-44.Dockerfile b/.github/fedora-44.Dockerfile new file mode 100644 index 00000000..eab31618 --- /dev/null +++ b/.github/fedora-44.Dockerfile @@ -0,0 +1,39 @@ +FROM fedora:44 + +RUN dnf --disablerepo=* --enablerepo=fedora,updates --nodocs --setopt=install_weak_deps=False -y install \ + autoconf \ + automake \ + gawk \ + bpftool \ + bison \ + clang \ + clang-tools-extra \ + cmake \ + compiler-rt \ + doxygen \ + flex \ + gcc \ + gcc-c++ \ + git-core \ + google-benchmark-devel \ + include-what-you-use \ + iproute \ + iputils \ + jq \ + lcov \ + libbpf-devel \ + libcmocka-devel \ + libgit2-devel \ + libpfm-devel \ + libtool \ + procps-ng \ + python3-breathe \ + python3-dateutil \ + python3-furo \ + python3-GitPython \ + python3-linuxdoc \ + python3-scapy \ + python3-sphinx \ + sed \ + xxd && \ + dnf clean all -y diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index eb10356e..6906b33c 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -31,6 +31,7 @@ jobs: - { name: 8-core-ubuntu, arch: x64 } - { name: 4-core-ubuntu-arm, arch: arm64 } distribution: + - { name: fedora, version: "44" } - { name: fedora, version: "43" } - { name: fedora, version: "42" } - { name: fedora, version: "41" } @@ -69,6 +70,7 @@ jobs: - { name: 8-core-ubuntu, arch: x64 } - { name: 4-core-ubuntu-arm, arch: arm64 } distribution: + - { name: fedora, version: "44" } - { name: fedora, version: "43" } - { name: fedora, version: "42" } - { name: fedora, version: "41" } @@ -96,7 +98,7 @@ jobs: - { name: 4-core-ubuntu-arm, arch: arm64 } runs-on: [ "${{ matrix.host.name }}" ] container: - image: ghcr.io/facebook/bpfilter:fedora-43-${{ matrix.host.arch }} + image: ghcr.io/facebook/bpfilter:fedora-44-${{ matrix.host.arch }} options: --privileged name: "Test: ${{ matrix.host.arch }}" steps: @@ -201,7 +203,7 @@ jobs: needs: [ test, benchmark ] timeout-minutes: 5 runs-on: [ "8-core-ubuntu" ] - container: ghcr.io/facebook/bpfilter:fedora-43-x64 + container: ghcr.io/facebook/bpfilter:fedora-44-x64 name: "Documentation" steps: - name: Checkout bpfilter From 2a502bc5dff6e9abf40fb123fbfea705f85ce6dc Mon Sep 17 00:00:00 2001 From: Quentin Deslandes Date: Tue, 12 May 2026 18:37:37 +0200 Subject: [PATCH 2/2] build: drop Fedora 41 from CI Fedora 41 reached end-of-life in November 2025. Removing it from the CI matrix keeps the image set focused on supported releases (42, 43, 44). - Delete .github/fedora-41.Dockerfile. - Drop the { fedora, 41 } entries from the create-images and build matrices in .github/workflows/ci.yaml. --- .github/fedora-41.Dockerfile | 38 ------------------------------------ .github/workflows/ci.yaml | 2 -- 2 files changed, 40 deletions(-) delete mode 100644 .github/fedora-41.Dockerfile diff --git a/.github/fedora-41.Dockerfile b/.github/fedora-41.Dockerfile deleted file mode 100644 index 33c71681..00000000 --- a/.github/fedora-41.Dockerfile +++ /dev/null @@ -1,38 +0,0 @@ -FROM fedora:41 - -RUN dnf --disablerepo=* --enablerepo=fedora,updates --nodocs --setopt=install_weak_deps=False -y install \ - autoconf \ - automake \ - gawk \ - bpftool \ - bison \ - clang \ - clang-tools-extra \ - cmake \ - compiler-rt \ - doxygen \ - flex \ - gcc \ - gcc-c++ \ - git-core \ - google-benchmark-devel \ - include-what-you-use \ - iproute \ - iputils \ - jq \ - lcov \ - libbpf-devel \ - libcmocka-devel \ - libgit2-devel \ - libtool \ - procps-ng \ - python3-breathe \ - python3-dateutil \ - python3-furo \ - python3-GitPython \ - python3-linuxdoc \ - python3-scapy \ - python3-sphinx \ - sed \ - xxd && \ - dnf clean all -y diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 6906b33c..b2ef790d 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -34,7 +34,6 @@ jobs: - { name: fedora, version: "44" } - { name: fedora, version: "43" } - { name: fedora, version: "42" } - - { name: fedora, version: "41" } - { name: ubuntu, version: "24.04" } - { name: ubuntu, version: "25.04" } - { name: ubuntu, version: "25.10" } @@ -73,7 +72,6 @@ jobs: - { name: fedora, version: "44" } - { name: fedora, version: "43" } - { name: fedora, version: "42" } - - { name: fedora, version: "41" } - { name: ubuntu, version: "24.04" } - { name: ubuntu, version: "25.04" } - { name: ubuntu, version: "25.10" }