From a9628e23a88c87656597a15b99cba1a80d315775 Mon Sep 17 00:00:00 2001 From: Bartosz Litwiniuk <> Date: Tue, 6 Oct 2026 22:53:03 +0200 Subject: [PATCH 1/4] CI: run actions on Node 24 and pin them to commit SHAs - Bump actions/checkout to v6.0.2 and actions/upload-artifact to v7.0.0 (node24). - Pin game-ci/unity-builder (v4.8.2), game-ci/unity-test-runner (v4.4.0) and jlumbroso/free-disk-space (v1.3.1) to immutable commit SHAs. - Set FORCE_JAVASCRIPT_ACTIONS_TO_NODE24 so unity-builder v4, which still declares node20, runs on the supported runtime. Co-Authored-By: Claude Opus 5.5 --- .github/workflows/build.yml | 15 ++++++++++----- .github/workflows/test.yml | 9 ++++++--- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5e411d43..caf971ab 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -5,6 +5,10 @@ on: branches: [master] pull_request: +env: + # Keep legacy JavaScript actions such as unity-builder@v4 on the supported runtime. + FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: 'true' + jobs: validate-apple-native-artifacts: name: Validate Apple native artifacts @@ -13,7 +17,7 @@ jobs: permissions: contents: read steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 with: lfs: true - run: bash .github/scripts/validate-apple-artifacts.sh . all @@ -95,7 +99,7 @@ jobs: steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 with: lfs: true @@ -221,9 +225,9 @@ jobs: EOF - if: matrix.targetPlatform == 'Android' - uses: jlumbroso/free-disk-space@v1.3.1 + uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1 - - uses: game-ci/unity-builder@v4 + - uses: game-ci/unity-builder@4423ee75828dff56037d1d1cfdac6b68e3a6ba00 # v4.8.2 id: unity-build name: Build game for platform ${{ matrix.targetPlatform }} continue-on-error: ${{ matrix.allowFailure == true }} @@ -258,7 +262,8 @@ jobs: id: ios-editor-artifacts if: ${{ always() && matrix.iosSdk != '' }} continue-on-error: ${{ matrix.allowFailure == true }} - uses: actions/upload-artifact@v4 + # v7.0.0 uses Node 24; pin the immutable release commit. + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 with: name: ios-editor-${{ matrix.unityVersion }}-${{ matrix.iosSdk }} path: artifacts/ios-editor/ diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index f2ec8a7d..8205e924 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -5,13 +5,16 @@ on: branches: [master] pull_request: +env: + FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: 'true' + jobs: validate-result-checker: name: Validate Unity test-result checker runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Run result-checker unit tests run: >- @@ -36,7 +39,7 @@ jobs: - 6000.3.7f1 steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 with: lfs: true @@ -46,7 +49,7 @@ jobs: mv Editor Runtime Tests Android iOS Mac Windows package.json ${{ matrix.projectPath }}/ - name: Run Tests - uses: game-ci/unity-test-runner@v4 + uses: game-ci/unity-test-runner@32e57712352b500e17974b245a6dce9e11a73213 # v4.4.0 env: UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }} From 66e9a1ecac967d1c01a8c11db381df4b25b9fbbd Mon Sep 17 00:00:00 2001 From: Bartosz Litwiniuk <> Date: Tue, 6 Oct 2026 22:54:42 +0200 Subject: [PATCH 2/4] CI: upgrade game-ci/unity-builder to v6.0.0 v6 declares node24 natively, so every action now runs on Node 24 without the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24 override; drop it. Co-Authored-By: Claude Opus 5.5 --- .github/workflows/build.yml | 6 +----- .github/workflows/test.yml | 3 --- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index caf971ab..49a42abd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -5,10 +5,6 @@ on: branches: [master] pull_request: -env: - # Keep legacy JavaScript actions such as unity-builder@v4 on the supported runtime. - FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: 'true' - jobs: validate-apple-native-artifacts: name: Validate Apple native artifacts @@ -227,7 +223,7 @@ jobs: - if: matrix.targetPlatform == 'Android' uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1 - - uses: game-ci/unity-builder@4423ee75828dff56037d1d1cfdac6b68e3a6ba00 # v4.8.2 + - uses: game-ci/unity-builder@eb1b9fba120c6e62c9fb7a7a81d6c107ce004c45 # v6.0.0 id: unity-build name: Build game for platform ${{ matrix.targetPlatform }} continue-on-error: ${{ matrix.allowFailure == true }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 8205e924..693975e7 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -5,9 +5,6 @@ on: branches: [master] pull_request: -env: - FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: 'true' - jobs: validate-result-checker: name: Validate Unity test-result checker From f985e1bd3d34aa5e555c35e6f4b33b161643ca90 Mon Sep 17 00:00:00 2001 From: Bartosz Litwiniuk <> Date: Tue, 6 Oct 2026 23:03:13 +0200 Subject: [PATCH 3/4] CI: downgrade game-ci/unity-builder to v5.0.1 --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 49a42abd..6eb3e84a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -223,7 +223,7 @@ jobs: - if: matrix.targetPlatform == 'Android' uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1 - - uses: game-ci/unity-builder@eb1b9fba120c6e62c9fb7a7a81d6c107ce004c45 # v6.0.0 + - uses: game-ci/unity-builder@adaf7cd8f42fd48fbbf2d4f5f67ca30d87f819f1 # v5.0.1 id: unity-build name: Build game for platform ${{ matrix.targetPlatform }} continue-on-error: ${{ matrix.allowFailure == true }} From 56783e87e941f2fccb25d1cb1b4101149829df5d Mon Sep 17 00:00:00 2001 From: Bartosz Litwiniuk Date: Tue, 6 Oct 2026 23:26:40 +0200 Subject: [PATCH 4/4] CI: pin actions/upload-artifact to a specific commit for Node 24 compatibility --- .github/workflows/build.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6eb3e84a..e4095850 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -258,7 +258,6 @@ jobs: id: ios-editor-artifacts if: ${{ always() && matrix.iosSdk != '' }} continue-on-error: ${{ matrix.allowFailure == true }} - # v7.0.0 uses Node 24; pin the immutable release commit. uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 with: name: ios-editor-${{ matrix.unityVersion }}-${{ matrix.iosSdk }}