From 541b7f99b823b25531a794445694e35faa0b1a53 Mon Sep 17 00:00:00 2001 From: Kevin Yakar Date: Thu, 29 Oct 2026 11:39:45 -0700 Subject: [PATCH] Only require gcc12 on EL9 to unblock BGP GitHub CI Summary: The BGP GitHub Actions workflow has failed on every run since it was added in July. It runs getdeps directly on an Ubuntu 24.04 runner, where `gcc12` cannot be resolved: `bgp` and `fboss` depend on it on every distro, but it only exists as an EL9 package, so getdeps aborts before building anything. Requiring `gcc12` only on EL9 matches `openr` and leaves the EL9 builds (internal BGP OSS CI and the FBOSS Docker image) unchanged. On Ubuntu the build uses the runner's default compiler. The workflow now also installs system packages first, since `openssl` can only come from the system and would otherwise be the next blocker. Differential Revision: D128386555 --- .github/workflows/build.yml | 11 +++++++++++ build/fbcode_builder/manifests/bgp | 2 ++ build/fbcode_builder/manifests/fboss | 4 +++- 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 365ae92..af7d12d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -41,6 +41,17 @@ jobs: run: sudo rm -rf ${{ github.workspace }}/* - name: Check out repository code uses: actions/checkout@v7 + - name: Update system package info + run: sudo apt-get update + - name: Install system deps + run: > + sudo + python3 + build/fbcode_builder/getdeps.py + --allow-system-packages + install-system-deps + --recursive + bgp # Build DC against the FBOSS fsdb_client profile and BB against the # smaller exported_libraries profile. Separate build directories ensure # each variant configures and installs its own dependency closure. diff --git a/build/fbcode_builder/manifests/bgp b/build/fbcode_builder/manifests/bgp index 745c509..f999cea 100644 --- a/build/fbcode_builder/manifests/bgp +++ b/build/fbcode_builder/manifests/bgp @@ -31,6 +31,8 @@ openr = !default, !full, exported_libraries wangle re2 zstd + +[dependencies.all(distro_family=rhel,distro_vers=9)] gcc12 [cmake.defines.test=on] diff --git a/build/fbcode_builder/manifests/fboss b/build/fbcode_builder/manifests/fboss index b9f7d14..d477407 100644 --- a/build/fbcode_builder/manifests/fboss +++ b/build/fbcode_builder/manifests/fboss @@ -61,9 +61,11 @@ libgpiod systemd range-v3 tabulate -gcc12 python-pyyaml +[dependencies.all(distro_family=rhel,distro_vers=9)] +gcc12 + # Shared FBOSS libraries and tests must not each register a static glog copy. [dependencies.os=linux] glog = shared_libs