Switch Ubuntu 18.04 CI builds to newer Ubuntu versions

Don't use the old Ubuntu version, Ubuntu PPAs are simply too flaky to be
used.

Use the latest available Ubuntu image (26.04) for all builds except
wxDFB as libdirectfb-dev package is not available in this Ubuntu version
any longer, so use 24.04 for this job.

Remove special handling of Ubuntu 18.04 which is not needed any more.
This commit is contained in:
Vadim Zeitlin
2026-07-31 12:48:12 +02:00
parent 49ded50540
commit 2782377d4f
+16 -55
View File
@@ -78,27 +78,19 @@ jobs:
fail-fast: false
matrix:
include:
- name: Ubuntu 18.04 wxGTK 2
runner: ubuntu-latest
container: ubuntu:18.04
- name: Ubuntu 26.04 wxGTK 2
runner: ubuntu-26.04
gtk_version: 2
use_xvfb: true
- name: Ubuntu 18.04 wxGTK UTF-8
runner: ubuntu-latest
container: ubuntu:18.04
- name: Ubuntu 26.04 wxGTK UTF-8
runner: ubuntu-26.04
configure_flags: --enable-utf8 --enable-utf8only --enable-monolithic
use_xvfb: true
- name: Ubuntu 18.04 wxGTK 3 static with gcc 4.8
runner: ubuntu-latest
compiler: g++-4.8
container: ubuntu:18.04
configure_flags: --disable-shared
allow_extra_warnings: true
use_xvfb: true
- name: Ubuntu 18.04 wxGTK 3 compatible 3.0
runner: ubuntu-latest
container: ubuntu:18.04
configure_flags: --enable-compat30 --enable-pch
- name: Ubuntu 20.04 wxGTK gcc 7 static compatible 3.0
runner: ubuntu-26.04
container: ubuntu:20.04
compiler: g++-7
configure_flags: --enable-compat30 --enable-pch --disable-shared
use_xvfb: true
- name: Ubuntu 20.04 wxGTK 3 with clang
runner: ubuntu-latest
@@ -127,20 +119,18 @@ jobs:
use_ubsan: true
use_xvfb: true
build_out_of_tree_samples: true
- name: Ubuntu 18.04 wxX11
runner: ubuntu-latest
container: ubuntu:18.04
- name: Ubuntu 26.04 wxX11
runner: ubuntu-26.04
configure_flags: --with-x11 --disable-stc
skip_samples: true
- name: Ubuntu 18.04 wxDFB
runner: ubuntu-latest
container: ubuntu:18.04
- name: Ubuntu 24.04 wxDFB
# This is the latest Ubuntu version that still has DirectFB in its repositories.
runner: ubuntu-24.04
configure_flags: --with-directfb --disable-stc
skip_samples: true
allow_warnings: true
- name: Ubuntu 18.04 wxQt
runner: ubuntu-latest
container: ubuntu:18.04
- name: Ubuntu 26.04 wxQt
runner: ubuntu-26.04
configure_flags: --with-qt --without-opengl
skip_samples: true
use_xvfb: true
@@ -159,16 +149,6 @@ jobs:
ubuntu:*)
export DEBIAN_FRONTEND=noninteractive
if [ '${{ matrix.container }}' = 'ubuntu:18.04' ]; then
# First get the package containing /usr/bin/apt-add-repository.
apt-get update -qq
apt-get install -qq software-properties-common
# Git 2.17 in the official repository is too old to checkout
# submodules using it, so get a newer version.
apt-add-repository ppa:git-core/ppa
fi
compiler=${{ matrix.compiler }}
case "$compiler" in
clang++*)
@@ -194,22 +174,6 @@ jobs:
# - xvfb is used for running the GUI tests.
apt-get update -qq
apt-get install -qq coreutils ${compiler_packages} git make pkg-config sudo xvfb
# Checkout action doesn't work under Ubuntu 18.04 any more, so
# run checkout manually.
git config --global --add safe.directory $GITHUB_WORKSPACE
git config --global gc.auto 0
git init $GITHUB_WORKSPACE
cd $GITHUB_WORKSPACE
git remote add origin $GITHUB_SERVER_URL/$GITHUB_REPOSITORY
git fetch --depth=1 origin $GITHUB_REF
git checkout FETCH_HEAD
git submodule update --init --depth=1 --recursive
git log -1 --format='%H'
# We can't easily install Go either, so skip the tests requiring
# httpbin.
echo WX_TEST_WEBREQUEST_URL=0 >> $GITHUB_ENV
;;
'')
@@ -221,13 +185,11 @@ jobs:
esac
- name: Checkout
if: matrix.container != 'ubuntu:18.04'
uses: actions/checkout@v6
with:
submodules: 'recursive'
- name: Install CCache
if: matrix.container != 'ubuntu:18.04'
uses: hendrikmuhs/ccache-action@v1.2.23
with:
key: ${{ matrix.name }}
@@ -370,7 +332,6 @@ jobs:
if: ${{ github.event_name == 'workflow_dispatch' && inputs.debug_tests }}
- name: Setup Go
if: matrix.container != 'ubuntu:18.04'
uses: actions/setup-go@v6
with:
go-version: '1'