From 313b8c6277b468980fee44c51c563b8c3575b361 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 24 Apr 2026 20:09:33 +0000 Subject: [PATCH] fix(workflows): support legacy game servers on older Ubuntu/Debian runners Multiple game servers have glibc compatibility requirements that prevent them from running on Ubuntu 24.04: - bfv, bf1942: Require Ubuntu <= 22.04 or Debian <= 12 (glibc 2.31) - btl, onset: Require Ubuntu <= 20.04 or Debian <= 11 (glibc 2.31) Changes: - Add runner field to details-check matrix generation - Map legacy servers to appropriate ubuntu-XX.04 LTS runners - Modern servers continue on ubuntu-latest (24.04) - Update details-check.yml to use dynamic runner from matrix This ensures all server tests pass in CI without breaking modern server testing on current GitHub Actions runners. --- .../workflows/details-check-generate-matrix.sh | 16 ++++++++++++++++ .github/workflows/details-check.yml | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/.github/workflows/details-check-generate-matrix.sh b/.github/workflows/details-check-generate-matrix.sh index 2c0803519..9b6e4dcb5 100755 --- a/.github/workflows/details-check-generate-matrix.sh +++ b/.github/workflows/details-check-generate-matrix.sh @@ -14,10 +14,26 @@ while read -r line; do export gamename distro=$(echo "$line" | awk -F, '{ print $4 }') export distro + # Legacy servers that require older Ubuntu/Debian versions due to glibc compatibility + case "${shortname}" in + bfv|bf1942) + # Requires Ubuntu <= 22.04 or Debian <= 12 (glibc 2.31 compatible) + runner="ubuntu-22.04" + ;; + btl|onset) + # Requires Ubuntu <= 20.04 or Debian <= 11 (glibc 2.31 compatible) + runner="ubuntu-20.04" + ;; + *) + runner="ubuntu-latest" + ;; + esac { echo -n "{"; echo -n "\"shortname\":"; echo -n "\"${shortname}\""; + echo -n ",\"runner\":"; + echo -n "\"${runner}\""; echo -n "},"; } >> "shortnamearray.json" done < <(tail -n +2 serverlist.csv) diff --git a/.github/workflows/details-check.yml b/.github/workflows/details-check.yml index aced7522d..c86a6ec70 100644 --- a/.github/workflows/details-check.yml +++ b/.github/workflows/details-check.yml @@ -37,7 +37,7 @@ jobs: if: github.repository_owner == 'GameServerManagers' needs: create-matrix continue-on-error: true - runs-on: ubuntu-latest + runs-on: ${{ matrix.runner }} strategy: matrix: ${{ fromJSON(needs.create-matrix.outputs.matrix) }}