Migrate Linux CI to Ubuntu 24.04 runners

Presumably 22.04 will be retired and 24.04 should certainly be stable
enough at this point.

(cherry picked from commit bd1370317d)
This commit is contained in:
Scott Talbert
2026-02-06 09:25:23 -05:00
parent 67792305a1
commit 3e53aa51c5
2 changed files with 13 additions and 30 deletions

View File

@@ -11,7 +11,7 @@ jobs:
# Build a wxPython source archive, and save it as an artifact for use in the
# job that builds the wheels.
build-source-dist:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
outputs:
VERSION: ${{ steps.generate.outputs.version }}

View File

@@ -41,7 +41,7 @@ jobs:
# Build a wxPython source archive, and save it as an artifact for use in the
# job that builds the wheels.
build-source-dist:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
outputs:
VERSION: ${{ steps.generate.outputs.version }}
@@ -107,14 +107,14 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-22.04, windows-2022, macos-15-intel, macos-14, windows-11-arm ]
os: [ ubuntu-24.04, windows-2022, macos-15-intel, macos-14, windows-11-arm ]
python-version: [ '3.10', '3.11', '3.12', '3.13', '3.14' ]
architecture: [ 'x86', 'x64', 'arm64' ]
# Exclude x86 configs on non-Windows OSs
exclude:
- os: ubuntu-22.04
- os: ubuntu-24.04
architecture: x86
- os: ubuntu-22.04
- os: ubuntu-24.04
architecture: arm64
- os: macos-15-intel
architecture: x86
@@ -156,7 +156,7 @@ jobs:
id: init
run: |
build_opts=$WXPYTHON_BUILD_ARGS
if [ ${{ matrix.os }} == ubuntu-22.04 ]; then
if [ ${{ runner.os }} == 'Linux' ]; then
short_name=linux
elif [ ${{ matrix.os }} == macos-15-intel ]; then
short_name=macos
@@ -209,26 +209,9 @@ jobs:
python -m pip install --upgrade -r requirements.txt
- name: Install Ubuntu dependencies
if: ${{ matrix.os == 'ubuntu-22.04' }}
if: runner.os == 'Linux'
run: |
sudo apt-get update
sudo apt-get install -y \
freeglut3-dev \
libcurl4-openssl-dev \
libexpat1-dev \
libgl1-mesa-dev \
libglu1-mesa-dev \
libgtk-3-dev \
libjpeg-dev \
libnotify-dev \
libsdl2-dev \
libsm-dev \
libtiff-dev \
libwebkit2gtk-4.0-dev \
libxtst-dev \
libunwind-dev \
libgstreamer1.0-dev \
libgstreamer-plugins-base1.0-dev
./buildtools/install_depends.sh
- name: Setup MSVC
uses: ilammy/msvc-dev-cmd@v1
@@ -258,7 +241,7 @@ jobs:
uses: actions/upload-artifact@v4
# Just Windows and MacOS for now, all we care about for Linux at this
# point is that the build was successful.
if: ${{ matrix.os != 'ubuntu-22.04' }}
if: runner.os != 'Linux'
with:
name: wxPython-wheel-${{ steps.init.outputs.canonical_id }}
path: dist/wxpython-*.whl
@@ -309,7 +292,7 @@ jobs:
name: Publish Python distribution to PyPI
if: startsWith(github.ref, 'refs/tags/')
needs: build-wheels
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
environment:
name: pypi
@@ -332,7 +315,7 @@ jobs:
github-release:
name: Create GitHub Release and upload source
needs: publish-to-pypi
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
contents: write
@@ -362,7 +345,7 @@ jobs:
upload-demo-docs-to-extras:
name: Upload demo/docs to extras.wxpython.org
needs: [build-source-dist, publish-to-pypi]
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Download demo/docs
@@ -386,7 +369,7 @@ jobs:
name: Upload wheels to snapshot-builds on wxpython.org
if: github.event_name == 'push'
needs: build-wheels
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Download all the dists