Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
81 changes: 33 additions & 48 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ jobs:
java-version: 17
distribution: temurin
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v5
with:
version: 10
- name: Setup Node.js
Expand All @@ -127,10 +127,10 @@ jobs:
- name: Run Playwright tests
working-directory: photon-client
run: pnpm test
- uses: actions/upload-artifact@v6
- uses: actions/upload-artifact@v7
if: ${{ !cancelled() }}
with:
name: playwright-report
archive: false
path: photon-client/playwright-report/
retention-days: 30
build-gradle:
Expand All @@ -151,7 +151,7 @@ jobs:
java-version: 17
distribution: temurin
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v5
with:
version: 10
- name: Setup Node.js
Expand Down Expand Up @@ -184,7 +184,7 @@ jobs:
working-directory: docs
run: |
make html
- uses: actions/upload-artifact@v6
- uses: actions/upload-artifact@v7
with:
name: built-docs
path: docs/build/html
Expand Down Expand Up @@ -214,9 +214,9 @@ jobs:
mv photon-lib/build/generated/vendordeps/photonlib.json photon-lib/build/generated/vendordeps/photonlib-$(git describe --tags --match=v*).json

# Upload it here so it shows up in releases
- uses: actions/upload-artifact@v6
- uses: actions/upload-artifact@v7
with:
name: photonlib-vendor-json
archive: false
path: photon-lib/build/generated/vendordeps/photonlib-*.json

build-photonlib-host:
Expand Down Expand Up @@ -255,7 +255,7 @@ jobs:
if: github.event_name == 'push' && github.repository_owner == 'photonvision' && github.ref == 'refs/heads/main'
# Copy artifacts to build/outputs/maven
- run: ./gradlew photon-lib:publish photon-targeting:publish -PcopyOfflineArtifacts
- uses: actions/upload-artifact@v6
- uses: actions/upload-artifact@v7
with:
name: maven-${{ matrix.artifact-name }}
path: build/outputs
Expand Down Expand Up @@ -296,7 +296,7 @@ jobs:
if: github.event_name == 'push' && github.repository_owner == 'photonvision' && github.ref == 'refs/heads/main'
# Copy artifacts to build/outputs/maven
- run: ./gradlew photon-lib:publish photon-targeting:publish -PcopyOfflineArtifacts ${{ matrix.build-options }}
- uses: actions/upload-artifact@v6
- uses: actions/upload-artifact@v7
with:
name: maven-${{ matrix.artifact-name }}
path: build/outputs
Expand All @@ -311,7 +311,7 @@ jobs:
fetch-depth: 0
- run: git fetch --tags --force
# download all maven-* artifacts to outputs/
- uses: actions/download-artifact@v7
- uses: actions/download-artifact@v8
with:
merge-multiple: true
path: output
Expand All @@ -321,7 +321,7 @@ jobs:
name: ZIP stuff up
working-directory: output
- run: ls output
- uses: actions/upload-artifact@v6
- uses: actions/upload-artifact@v7
with:
name: photonlib-offline
path: output/*.zip
Expand Down Expand Up @@ -353,7 +353,7 @@ jobs:
java-version: 17
distribution: temurin
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v5
with:
version: 10
- name: Setup Node.js
Expand All @@ -365,19 +365,19 @@ jobs:
- name: Install Arm64 Toolchain
run: ./gradlew installArm64Toolchain
if: ${{ (matrix.artifact-name) == 'LinuxArm64' }}
- uses: actions/download-artifact@v7
- uses: actions/download-artifact@v8
with:
name: built-docs
path: photon-server/src/main/resources/web/docs
- run: ./gradlew photon-targeting:jar photon-server:shadowJar -PArchOverride=${{ matrix.arch-override }}
if: ${{ (matrix.arch-override != 'none') }}
- run: ./gradlew photon-server:shadowJar
if: ${{ (matrix.arch-override == 'none') }}
- uses: actions/upload-artifact@v6
- uses: actions/upload-artifact@v7
with:
name: jar-${{ matrix.artifact-name }}
archive: false
path: photon-server/build/libs
- uses: actions/upload-artifact@v6
- uses: actions/upload-artifact@v7
with:
name: photon-targeting_jar-${{ matrix.artifact-name }}
path: photon-targeting/build/libs
Expand Down Expand Up @@ -425,12 +425,13 @@ jobs:
matrix:
include:
- os: ubuntu-24.04
artifact-name: jar-Linux
artifact-name: photonvision-*-linuxx64.jar
extraOpts: -Djdk.lang.Process.launchMechanism=vfork
- os: windows-latest
artifact-name: jar-Win64
artifact-name: photonvision-*-winx64.jar
- os: macos-latest
artifact-name: jar-macOS
artifact-name: photonvision-*-macarm64.jar


runs-on: ${{ matrix.os }}

Expand All @@ -440,9 +441,9 @@ jobs:
with:
java-version: 17
distribution: temurin
- uses: actions/download-artifact@v7
- uses: actions/download-artifact@v8
with:
name: ${{ matrix.artifact-name }}
pattern: ${{ matrix.artifact-name }}
# The jar is run twice to exercise different code paths.
- run: |
echo "=== First run ==="
Expand Down Expand Up @@ -479,85 +480,71 @@ jobs:
matrix:
include:
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: RaspberryPi
plat_override: LINUX_RASPBIAN64
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_raspi.img.xz
minimum_free_mb: 100
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: limelight2
plat_override: LINUX_RASPBIAN64
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_limelight.img.xz
minimum_free_mb: 100
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: limelight3
plat_override: LINUX_RASPBIAN64
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_limelight3.img.xz
minimum_free_mb: 100
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: limelight3G
plat_override: LINUX_RASPBIAN64
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_limelight3g.img.xz
minimum_free_mb: 100
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: limelight4
plat_override: LINUX_RASPBIAN64
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_limelight4.img.xz
minimum_free_mb: 100
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: luma_p1
plat_override: LINUX_RASPBIAN64
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_luma_p1.img.xz
minimum_free_mb: 100
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: orangepi5
plat_override: LINUX_RK3588_64
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_opi5.img.xz
minimum_free_mb: 1024
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: orangepi5b
plat_override: LINUX_RK3588_64
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_opi5b.img.xz
minimum_free_mb: 1024
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: orangepi5plus
plat_override: LINUX_RK3588_64
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_opi5plus.img.xz
minimum_free_mb: 1024
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: orangepi5pro
plat_override: LINUX_RK3588_64
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_opi5pro.img.xz
minimum_free_mb: 1024
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: orangepi5max
plat_override: LINUX_RK3588_64
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_opi5max.img.xz
minimum_free_mb: 1024
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: rock5c
plat_override: LINUX_RK3588_64
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_rock5c.img.xz
minimum_free_mb: 1024
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: orangepi6plus
plat_override: LINUX_AARCH64
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_opi6plus.img.xz
minimum_free_mb: 1024
- os: ubuntu-24.04-arm
artifact-name: LinuxArm64
image_suffix: rubikpi3
plat_override: LINUX_QCS6490
image_url: https://github.com/PhotonVision/photon-image-modifier/releases/download/$IMAGE_VERSION/photonvision_rubikpi3.tar.xz
Expand All @@ -573,9 +560,9 @@ jobs:
uses: actions/checkout@v6
with:
fetch-depth: 0
- uses: actions/download-artifact@v7
- uses: actions/download-artifact@v8
with:
name: jar-${{ matrix.artifact-name }}
pattern: photonvision-*-linuxarm64.jar
- uses: photonvision/photon-image-runner@HEAD
name: Generate image
id: generate_image
Expand Down Expand Up @@ -611,10 +598,9 @@ jobs:
# Point smoketest to the old image
echo "smoketest_image_loc=${{ steps.generate_image.outputs.image }}" >> $GITHUB_ENV

- uses: actions/upload-artifact@v6
name: Upload image
- uses: actions/upload-artifact@v7
with:
name: image-${{ matrix.image_suffix }}
archive: false
path: photonvision*.xz

# This is done after uploading the image to avoid contaminating the image with logs, caches, etc.
Expand Down Expand Up @@ -643,25 +629,24 @@ jobs:
runs-on: ubuntu-24.04
steps:
# Download all fat JARs
- uses: actions/download-artifact@v7
- uses: actions/download-artifact@v8
with:
merge-multiple: true
pattern: jar-*
pattern: photonvision-*.jar
# Download offline photonlib
- uses: actions/download-artifact@v7
- uses: actions/download-artifact@v8
with:
merge-multiple: true
pattern: photonlib-offline
# Download vendor json
- uses: actions/download-artifact@v7
- uses: actions/download-artifact@v8
with:
merge-multiple: true
pattern: photonlib-vendor-json
pattern: photonlib-*.json
# Download all images
- uses: actions/download-artifact@v7
- uses: actions/download-artifact@v8
with:
merge-multiple: true
pattern: image-*
pattern: photonvision-*.xz

- run: find
# Push to dev release
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/lint-format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,9 @@ jobs:
- name: Generate diff
run: git diff HEAD > wpiformat-fixes.patch
if: ${{ failure() }}
- uses: actions/upload-artifact@v6
- uses: actions/upload-artifact@v7
with:
name: wpiformat fixes
archive: false
path: wpiformat-fixes.patch
if: ${{ failure() }}
javaformat:
Expand Down Expand Up @@ -81,7 +81,7 @@ jobs:
steps:
- uses: actions/checkout@v6
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v5
with:
version: 10
- name: Setup Node.js
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/photon-api-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
steps:
- uses: actions/checkout@v6
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v5
with:
version: 10
- name: Setup Node.js
Expand All @@ -44,7 +44,7 @@ jobs:
run: pnpm i --frozen-lockfile
- name: Build Production Client
run: pnpm run build-demo
- uses: actions/upload-artifact@v6
- uses: actions/upload-artifact@v7
with:
name: built-demo
path: photon-client/dist/
Expand All @@ -69,7 +69,7 @@ jobs:
run: |
chmod +x gradlew
./gradlew photon-docs:generateJavaDocs photon-docs:doxygen
- uses: actions/upload-artifact@v6
- uses: actions/upload-artifact@v7
with:
name: docs-java-cpp
path: photon-docs/build/docs
Expand All @@ -80,7 +80,7 @@ jobs:
runs-on: ubuntu-24.04
steps:
# Download docs artifact
- uses: actions/download-artifact@v7
- uses: actions/download-artifact@v8
with:
pattern: docs-*
- run: find .
Expand All @@ -106,7 +106,7 @@ jobs:
needs: [build_demo]
runs-on: ubuntu-24.04
steps:
- uses: actions/download-artifact@v7
- uses: actions/download-artifact@v8
with:
name: built-demo
- run: find .
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
run: python setup.py sdist bdist_wheel

- name: Upload artifacts
uses: actions/upload-artifact@v6
uses: actions/upload-artifact@v7
with:
name: dist
path: ./photon-lib/py/dist/
Expand All @@ -62,7 +62,7 @@ jobs:
pip install pytest mypy

- name: Download artifacts
uses: actions/download-artifact@v6
uses: actions/download-artifact@v8
with:
name: dist
path: dist/
Expand Down Expand Up @@ -102,7 +102,7 @@ jobs:
python -m pip install --upgrade pip

- name: Download artifacts
uses: actions/download-artifact@v6
uses: actions/download-artifact@v8
with:
name: dist
path: ./photon-lib/py/dist/
Expand Down Expand Up @@ -131,7 +131,7 @@ jobs:

steps:
- name: Download artifacts
uses: actions/download-artifact@v6
uses: actions/download-artifact@v8
with:
name: dist
path: dist/
Expand Down
Loading
Loading