Bump various versions in actions (#2194)

Bumps various versions in actions, as well as ensuring consistency
across workflows wrt versions used. One of the key reasons is ensuring
that we're up to date and consistent (previously having used 22.04 and
24.04), also since 3.11 is EOL.
This commit is contained in:
Sam Freund
2026-01-02 19:49:34 -06:00
committed by GitHub
parent 5409573f0d
commit 70fed3535e
6 changed files with 42 additions and 43 deletions

View File

@@ -30,7 +30,7 @@ jobs:
architecture: x64
- os: macos-14
architecture: aarch64
- os: ubuntu-22.04
- os: ubuntu-24.04
name: "Photonlib - Build Examples - ${{ matrix.os }}"
runs-on: ${{ matrix.os }}
@@ -54,7 +54,7 @@ jobs:
run: |
find ~/.gradle/cache/ -name *roborio-academic* -exec rm -rf {} +
du -h . | sort -h
if: matrix.os == 'ubuntu-22.04'
if: matrix.os == 'ubuntu-24.04'
# Need to publish to maven local first, so that C++ sim can pick it up
- name: Publish photonlib to maven local
run: ./gradlew photon-targeting:publishtomavenlocal photon-lib:publishtomavenlocal -x check
@@ -70,7 +70,7 @@ jobs:
./gradlew clean
playwright-tests:
name: "Playwright E2E tests"
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
needs: [validation]
steps:
# Checkout code.
@@ -111,7 +111,7 @@ jobs:
retention-days: 30
build-gradle:
name: "Gradle Build"
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
needs: [validation]
steps:
# Checkout code.
@@ -140,12 +140,12 @@ jobs:
run: ./gradlew test jacocoTestReport --stacktrace
build-offline-docs:
name: "Build Offline Docs"
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
python-version: '3.12'
- name: Install graphviz
run: |
sudo apt-get update
@@ -167,7 +167,7 @@ jobs:
build-photonlib-vendorjson:
name: "Build Vendor JSON"
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
needs: [validation]
steps:
- uses: actions/checkout@v4
@@ -208,7 +208,7 @@ jobs:
- os: macos-14
artifact-name: macOS
architecture: aarch64
- os: ubuntu-22.04
- os: ubuntu-24.04
artifact-name: Linux
name: "Photonlib - Build Host - ${{ matrix.artifact-name }}"
@@ -254,7 +254,7 @@ jobs:
artifact-name: Aarch64
build-options: "-Ponlylinuxarm64"
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
container: ${{ matrix.container }}
name: "Photonlib - Build Docker - ${{ matrix.artifact-name }}"
needs: [validation]
@@ -283,14 +283,14 @@ jobs:
combine:
name: Combine
needs: [build-photonlib-docker, build-photonlib-host]
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- run: git fetch --tags --force
# download all maven-* artifacts to outputs/
- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v7
with:
merge-multiple: true
path: output
@@ -324,11 +324,11 @@ jobs:
artifact-name: macOSArm
architecture: x64
arch-override: macarm64
- os: ubuntu-22.04
- os: ubuntu-24.04
artifact-name: Linux
architecture: x64
arch-override: linuxx64
- os: ubuntu-22.04
- os: ubuntu-24.04
artifact-name: LinuxArm64
architecture: x64
arch-override: linuxarm64
@@ -359,7 +359,7 @@ jobs:
- name: Install Arm64 Toolchain
run: ./gradlew installArm64Toolchain
if: ${{ (matrix.artifact-name) == 'LinuxArm64' }}
- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v7
with:
name: built-docs
path: photon-server/src/main/resources/web/docs
@@ -383,12 +383,11 @@ jobs:
fail-fast: false
matrix:
include:
- os: ubuntu-22.04
- os: ubuntu-24.04
artifact-name: jar-Linux
extraOpts: -Djdk.lang.Process.launchMechanism=vfork
- os: windows-latest
artifact-name: jar-Win64
extraOpts: ""
- os: macos-latest
artifact-name: jar-macOS
architecture: x64
@@ -401,7 +400,7 @@ jobs:
with:
java-version: 17
distribution: temurin
- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v7
with:
name: ${{ matrix.artifact-name }}
- run: java -jar ${{ matrix.extraOpts }} *.jar --smoketest
@@ -505,7 +504,7 @@ jobs:
uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v7
with:
name: jar-${{ matrix.artifact-name }}
- uses: photonvision/photon-image-runner@HEAD
@@ -559,25 +558,25 @@ jobs:
release:
needs: [build-photonlib-vendorjson, build-package, build-image, combine]
if: github.ref == ('refs/heads/main' || startsWith(github.ref, 'refs/tags/v')) && github.repository == 'PhotonVision/photonvision'
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
# Download all fat JARs
- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v7
with:
merge-multiple: true
pattern: jar-*
# Download offline photonlib
- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v7
with:
merge-multiple: true
pattern: photonlib-offline
# Download vendor json
- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v7
with:
merge-multiple: true
pattern: photonlib-vendor-json
# Download all images
- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v7
with:
merge-multiple: true
pattern: image-*

View File

@@ -18,7 +18,7 @@ jobs:
- uses: gradle/actions/wrapper-validation@v4
wpiformat:
name: "wpiformat"
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Fetch all history and metadata
@@ -26,10 +26,10 @@ jobs:
git fetch --prune --unshallow
git checkout -b pr
git branch -f main origin/main
- name: Set up Python 3.8
uses: actions/setup-python@v4
- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: 3.11
python-version: 3.12
- name: Install wpiformat
run: pip3 install wpiformat==2025.79
- name: Run
@@ -54,7 +54,7 @@ jobs:
javaformat:
name: "Java Formatting"
needs: [validation]
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
with:
@@ -77,7 +77,7 @@ jobs:
defaults:
run:
working-directory: photon-client
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Install pnpm

View File

@@ -27,7 +27,7 @@ jobs:
defaults:
run:
working-directory: photon-client
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Install pnpm
@@ -52,7 +52,7 @@ jobs:
run_java_cpp_docs:
name: Build Java and C++ API Docs
needs: [validation]
runs-on: "ubuntu-22.04"
runs-on: "ubuntu-24.04"
steps:
- name: Checkout code
uses: actions/checkout@v4
@@ -77,10 +77,10 @@ jobs:
publish_api_docs:
name: Publish API Docs
needs: [run_java_cpp_docs]
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
# Download docs artifact
- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v7
with:
pattern: docs-*
- run: find .
@@ -104,9 +104,9 @@ jobs:
publish_demo:
name: Publish PhotonClient Demo
needs: [build_demo]
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v7
with:
name: built-demo
- run: find .

View File

@@ -14,14 +14,14 @@ env:
jobs:
build:
name: Build and Check Docs
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
python-version: '3.12'
- name: Install and upgrade pip
run: python -m pip install --upgrade pip

View File

@@ -13,7 +13,7 @@ concurrency:
jobs:
buildAndDeploy:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Checkout code
@@ -24,7 +24,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: 3.11
python-version: 3.12
- name: Install dependencies
run: |
@@ -62,7 +62,7 @@ jobs:
if: startsWith(github.ref, 'refs/tags/v')
uses: pypa/gh-action-pypi-publish@release/v1
with:
packages_dir: ./photon-lib/py/dist/
packages-dir: ./photon-lib/py/dist/
permissions:
id-token: write # IMPORTANT: this permission is mandatory for trusted publishing

View File

@@ -6,9 +6,9 @@ sphinx:
fail_on_warning: true
build:
os: ubuntu-22.04
os: ubuntu-24.04
tools:
python: "3.11"
python: "3.12"
apt_packages:
- graphviz
jobs: