diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1412b9590..457777864 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -50,8 +50,9 @@ jobs: $v = (Get-Content scripts/unity-versions.json -Raw | ConvertFrom-Json).'${{ env.UNITY_VERSION }}'.version "unityVersion=$v" >> $env:GITHUB_OUTPUT - - name: Cache Unity Library - uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 + - name: Restore Unity Library cache + id: cache-library + uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/unity-of-bugs/Library key: Library-unity-of-bugs-${{ steps.env.outputs.unityVersion }}-v1 @@ -190,3 +191,10 @@ jobs: with: name: Test results (editmode) - ${{ env.UNITY_VERSION }} path: artifacts/test/editmode + + - name: Save Unity Library cache + if: github.ref == 'refs/heads/main' && steps.cache-library.outputs.cache-hit != 'true' + uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 + with: + path: samples/unity-of-bugs/Library + key: ${{ steps.cache-library.outputs.cache-primary-key }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 54f8e98ae..ffe88fe82 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -191,7 +191,7 @@ jobs: uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Library - key: it-library-ubuntu-${{ matrix.unity-version }}-${{ github.run_id }} + key: it-library-ubuntu-${{ matrix.unity-version }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt', 'samples/IntegrationTest/Packages/manifest.json', 'test/Scripts.Integration.Test/Editor/**', 'test/Scripts.Integration.Test/Scenes/**', 'test/Scripts.Integration.Test/Scripts/**', 'test/Scripts.Integration.Test/DependencyConflictPackage/**', 'test/Scripts.Integration.Test/create-project.ps1', 'test/Scripts.Integration.Test/add-sentry.ps1') }} restore-keys: | it-library-ubuntu-${{ matrix.unity-version }}- @@ -200,7 +200,7 @@ jobs: uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Build-NoSentry - key: build-nosentry-${{ matrix.build_platform }}-${{ matrix.unity-version }} + key: build-nosentry-${{ matrix.build_platform }}-${{ matrix.unity-version }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt') }} - name: Build without Sentry SDK if: steps.cache-build-nosentry.outputs.cache-hit != 'true' @@ -213,7 +213,7 @@ jobs: uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Build-NoSentry - key: build-nosentry-${{ matrix.build_platform }}-${{ matrix.unity-version }} + key: ${{ steps.cache-build-nosentry.outputs.cache-primary-key }} - name: Download UPM package uses: ./.github/actions/wait-for-artifact diff --git a/.github/workflows/sdk.yml b/.github/workflows/sdk.yml index d565d5539..ca2ddbd66 100644 --- a/.github/workflows/sdk.yml +++ b/.github/workflows/sdk.yml @@ -42,9 +42,6 @@ jobs: env: SUBMODULES: ${{ steps.env.outputs.submodules }} - - name: Update submobules - run: git submodule update --init --recursive ${{ steps.env.outputs.submodules }} - - run: | if [[ "${{ env.TARGET }}" == "Cocoa" ]]; then cp -r package-dev/Plugins/iOS sdk-static/ || echo "never mind, no iOS files checked in..." @@ -65,6 +62,10 @@ jobs: package-dev/Plugins key: sdk=${{ env.TARGET }}-${{ hashFiles('submodules-status', 'package/package.json', 'Directory.Build.targets', 'build/native-sdks.targets', 'sdk-static/**', 'scripts/build-cocoa-sdk.ps1', 'scripts/build-native-ndk-local.ps1') }} + - name: Update submodules + if: steps.cache.outputs.cache-hit != 'true' + run: git submodule update --init --recursive ${{ steps.env.outputs.submodules }} + - name: Installing Linux Dependencies if: ${{ (env.TARGET == 'Linux' || env.TARGET == 'LinuxNative') && steps.cache.outputs.cache-hit != 'true' }} shell: bash diff --git a/.github/workflows/test-build-android.yml b/.github/workflows/test-build-android.yml index 4c3dce1a2..e9bdada9e 100644 --- a/.github/workflows/test-build-android.yml +++ b/.github/workflows/test-build-android.yml @@ -56,7 +56,7 @@ jobs: uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Library - key: it-library-ubuntu-${{ env.UNITY_VERSION }}-${{ github.run_id }} + key: it-library-ubuntu-${{ env.UNITY_VERSION }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt', 'samples/IntegrationTest/Packages/manifest.json', 'test/Scripts.Integration.Test/Editor/**', 'test/Scripts.Integration.Test/Scenes/**', 'test/Scripts.Integration.Test/Scripts/**', 'test/Scripts.Integration.Test/DependencyConflictPackage/**', 'test/Scripts.Integration.Test/create-project.ps1', 'test/Scripts.Integration.Test/add-sentry.ps1') }} restore-keys: | it-library-ubuntu-${{ env.UNITY_VERSION }}- @@ -65,7 +65,7 @@ jobs: uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Build-NoSentry - key: build-nosentry-Android-${{ inputs.unity-version }} + key: build-nosentry-Android-${{ inputs.unity-version }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt') }} - name: Build without Sentry SDK if: steps.cache-build-nosentry.outputs.cache-hit != 'true' @@ -76,7 +76,7 @@ jobs: uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Build-NoSentry - key: build-nosentry-Android-${{ inputs.unity-version }} + key: ${{ steps.cache-build-nosentry.outputs.cache-primary-key }} - name: Download UPM package uses: ./.github/actions/wait-for-artifact diff --git a/.github/workflows/test-build-ios.yml b/.github/workflows/test-build-ios.yml index 0c19205ff..4fcc7b886 100644 --- a/.github/workflows/test-build-ios.yml +++ b/.github/workflows/test-build-ios.yml @@ -62,7 +62,7 @@ jobs: uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Library - key: it-library-ubuntu-${{ env.UNITY_VERSION }}-${{ github.run_id }} + key: it-library-ubuntu-${{ env.UNITY_VERSION }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt', 'samples/IntegrationTest/Packages/manifest.json', 'test/Scripts.Integration.Test/Editor/**', 'test/Scripts.Integration.Test/Scenes/**', 'test/Scripts.Integration.Test/Scripts/**', 'test/Scripts.Integration.Test/DependencyConflictPackage/**', 'test/Scripts.Integration.Test/create-project.ps1', 'test/Scripts.Integration.Test/add-sentry.ps1') }} restore-keys: | it-library-ubuntu-${{ env.UNITY_VERSION }}- @@ -71,7 +71,7 @@ jobs: uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Build-NoSentry - key: build-nosentry-iOS-${{ inputs.unity-version }} + key: build-nosentry-iOS-${{ inputs.unity-version }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt') }} - name: Build without Sentry SDK if: steps.cache-build-nosentry.outputs.cache-hit != 'true' @@ -82,7 +82,7 @@ jobs: uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Build-NoSentry - key: build-nosentry-iOS-${{ inputs.unity-version }} + key: ${{ steps.cache-build-nosentry.outputs.cache-primary-key }} - name: Create archive for build without Sentry shell: bash diff --git a/.github/workflows/test-build-linux.yml b/.github/workflows/test-build-linux.yml index 2488d1414..375642a54 100644 --- a/.github/workflows/test-build-linux.yml +++ b/.github/workflows/test-build-linux.yml @@ -64,10 +64,11 @@ jobs: run: tar -xvzf test-project.tar.gz - name: Restore Unity Library cache + id: cache-library uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Library - key: it-library-ubuntu-${{ env.UNITY_VERSION }}-${{ github.run_id }} + key: it-library-ubuntu-${{ env.UNITY_VERSION }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt', 'samples/IntegrationTest/Packages/manifest.json', 'test/Scripts.Integration.Test/Editor/**', 'test/Scripts.Integration.Test/Scenes/**', 'test/Scripts.Integration.Test/Scripts/**', 'test/Scripts.Integration.Test/DependencyConflictPackage/**', 'test/Scripts.Integration.Test/create-project.ps1', 'test/Scripts.Integration.Test/add-sentry.ps1') }} restore-keys: | it-library-ubuntu-${{ env.UNITY_VERSION }}- @@ -76,7 +77,7 @@ jobs: uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Build-NoSentry - key: build-nosentry-Linux-${{ inputs.unity-version }} + key: build-nosentry-Linux-${{ inputs.unity-version }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt') }} - name: Build without Sentry SDK if: steps.cache-build-nosentry.outputs.cache-hit != 'true' @@ -87,7 +88,7 @@ jobs: uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Build-NoSentry - key: build-nosentry-Linux-${{ inputs.unity-version }} + key: ${{ steps.cache-build-nosentry.outputs.cache-primary-key }} - name: Download UPM package uses: ./.github/actions/wait-for-artifact @@ -176,11 +177,11 @@ jobs: retention-days: 14 - name: Save Unity Library cache - if: github.ref == 'refs/heads/main' + if: github.ref == 'refs/heads/main' && steps.cache-library.outputs.cache-hit != 'true' uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Library - key: it-library-ubuntu-${{ env.UNITY_VERSION }}-${{ github.run_id }} + key: ${{ steps.cache-library.outputs.cache-primary-key }} - name: Docker diagnostics on failure if: ${{ failure() }} diff --git a/.github/workflows/test-build-macos.yml b/.github/workflows/test-build-macos.yml index 1677c14ea..bdb61a6d3 100644 --- a/.github/workflows/test-build-macos.yml +++ b/.github/workflows/test-build-macos.yml @@ -43,10 +43,11 @@ jobs: run: tar -xvzf test-project.tar.gz - name: Restore Unity Library cache + id: cache-library uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Library - key: it-library-macos-${{ env.UNITY_VERSION }}-${{ github.run_id }} + key: it-library-macos-${{ env.UNITY_VERSION }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt', 'samples/IntegrationTest/Packages/manifest.json', 'test/Scripts.Integration.Test/Editor/**', 'test/Scripts.Integration.Test/Scenes/**', 'test/Scripts.Integration.Test/Scripts/**', 'test/Scripts.Integration.Test/DependencyConflictPackage/**', 'test/Scripts.Integration.Test/create-project.ps1', 'test/Scripts.Integration.Test/add-sentry.ps1') }} restore-keys: | it-library-macos-${{ env.UNITY_VERSION }}- @@ -55,7 +56,7 @@ jobs: uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Build-NoSentry - key: build-nosentry-MacOS-${{ inputs.unity-version }} + key: build-nosentry-MacOS-${{ inputs.unity-version }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt') }} - name: Build without Sentry SDK if: steps.cache-build-nosentry.outputs.cache-hit != 'true' @@ -66,7 +67,7 @@ jobs: uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Build-NoSentry - key: build-nosentry-MacOS-${{ inputs.unity-version }} + key: ${{ steps.cache-build-nosentry.outputs.cache-primary-key }} - name: Download UPM package uses: ./.github/actions/wait-for-artifact @@ -159,11 +160,11 @@ jobs: retention-days: 14 - name: Save Unity Library cache - if: github.ref == 'refs/heads/main' + if: github.ref == 'refs/heads/main' && steps.cache-library.outputs.cache-hit != 'true' uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Library - key: it-library-macos-${{ env.UNITY_VERSION }}-${{ github.run_id }} + key: ${{ steps.cache-library.outputs.cache-primary-key }} - name: Upload IntegrationTest project on failure if: ${{ failure() }} diff --git a/.github/workflows/test-build-windows-mono.yml b/.github/workflows/test-build-windows-mono.yml index 84b4f48b4..dd7bdb763 100644 --- a/.github/workflows/test-build-windows-mono.yml +++ b/.github/workflows/test-build-windows-mono.yml @@ -43,10 +43,11 @@ jobs: run: tar -xvzf test-project.tar.gz - name: Restore Unity Library cache + id: cache-library uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Library - key: it-library-windows-mono-${{ env.UNITY_VERSION }}-${{ github.run_id }} + key: it-library-windows-mono-${{ env.UNITY_VERSION }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt', 'samples/IntegrationTest/Packages/manifest.json', 'test/Scripts.Integration.Test/Editor/**', 'test/Scripts.Integration.Test/Scenes/**', 'test/Scripts.Integration.Test/Scripts/**', 'test/Scripts.Integration.Test/DependencyConflictPackage/**', 'test/Scripts.Integration.Test/create-project.ps1', 'test/Scripts.Integration.Test/add-sentry.ps1') }} restore-keys: | it-library-windows-mono-${{ env.UNITY_VERSION }}- @@ -99,11 +100,11 @@ jobs: retention-days: 14 - name: Save Unity Library cache - if: github.ref == 'refs/heads/main' + if: github.ref == 'refs/heads/main' && steps.cache-library.outputs.cache-hit != 'true' uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Library - key: it-library-windows-mono-${{ env.UNITY_VERSION }}-${{ github.run_id }} + key: ${{ steps.cache-library.outputs.cache-primary-key }} - name: Upload IntegrationTest project on failure if: ${{ failure() }} diff --git a/.github/workflows/test-build-windows-x86.yml b/.github/workflows/test-build-windows-x86.yml index 0479f343c..fe59f7125 100644 --- a/.github/workflows/test-build-windows-x86.yml +++ b/.github/workflows/test-build-windows-x86.yml @@ -43,10 +43,11 @@ jobs: run: tar -xvzf test-project.tar.gz - name: Restore Unity Library cache + id: cache-library uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Library - key: it-library-windows-x86-${{ env.UNITY_VERSION }}-${{ github.run_id }} + key: it-library-windows-x86-${{ env.UNITY_VERSION }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt', 'samples/IntegrationTest/Packages/manifest.json', 'test/Scripts.Integration.Test/Editor/**', 'test/Scripts.Integration.Test/Scenes/**', 'test/Scripts.Integration.Test/Scripts/**', 'test/Scripts.Integration.Test/DependencyConflictPackage/**', 'test/Scripts.Integration.Test/create-project.ps1', 'test/Scripts.Integration.Test/add-sentry.ps1') }} restore-keys: | it-library-windows-x86-${{ env.UNITY_VERSION }}- @@ -111,11 +112,11 @@ jobs: retention-days: 14 - name: Save Unity Library cache - if: github.ref == 'refs/heads/main' + if: github.ref == 'refs/heads/main' && steps.cache-library.outputs.cache-hit != 'true' uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Library - key: it-library-windows-x86-${{ env.UNITY_VERSION }}-${{ github.run_id }} + key: ${{ steps.cache-library.outputs.cache-primary-key }} - name: Upload IntegrationTest project on failure if: ${{ failure() }} diff --git a/.github/workflows/test-build-windows.yml b/.github/workflows/test-build-windows.yml index cf5f748c9..ccaea085e 100644 --- a/.github/workflows/test-build-windows.yml +++ b/.github/workflows/test-build-windows.yml @@ -43,10 +43,11 @@ jobs: run: tar -xvzf test-project.tar.gz - name: Restore Unity Library cache + id: cache-library uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Library - key: it-library-windows-${{ env.UNITY_VERSION }}-${{ github.run_id }} + key: it-library-windows-${{ env.UNITY_VERSION }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt', 'samples/IntegrationTest/Packages/manifest.json', 'test/Scripts.Integration.Test/Editor/**', 'test/Scripts.Integration.Test/Scenes/**', 'test/Scripts.Integration.Test/Scripts/**', 'test/Scripts.Integration.Test/DependencyConflictPackage/**', 'test/Scripts.Integration.Test/create-project.ps1', 'test/Scripts.Integration.Test/add-sentry.ps1') }} restore-keys: | it-library-windows-${{ env.UNITY_VERSION }}- @@ -55,7 +56,7 @@ jobs: uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Build-NoSentry - key: build-nosentry-Windows-${{ inputs.unity-version }} + key: build-nosentry-Windows-${{ inputs.unity-version }}-${{ hashFiles('samples/IntegrationTest/ProjectSettings/ProjectVersion.txt') }} - name: Build without Sentry SDK if: steps.cache-build-nosentry.outputs.cache-hit != 'true' @@ -66,7 +67,7 @@ jobs: uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Build-NoSentry - key: build-nosentry-Windows-${{ inputs.unity-version }} + key: ${{ steps.cache-build-nosentry.outputs.cache-primary-key }} - name: Download UPM package uses: ./.github/actions/wait-for-artifact @@ -159,11 +160,11 @@ jobs: retention-days: 14 - name: Save Unity Library cache - if: github.ref == 'refs/heads/main' + if: github.ref == 'refs/heads/main' && steps.cache-library.outputs.cache-hit != 'true' uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: samples/IntegrationTest/Library - key: it-library-windows-${{ env.UNITY_VERSION }}-${{ github.run_id }} + key: ${{ steps.cache-library.outputs.cache-primary-key }} - name: Upload IntegrationTest project on failure if: ${{ failure() }} diff --git a/.github/workflows/test-compile-ios.yml b/.github/workflows/test-compile-ios.yml index 3fa80582d..d6368ecc3 100644 --- a/.github/workflows/test-compile-ios.yml +++ b/.github/workflows/test-compile-ios.yml @@ -25,13 +25,19 @@ jobs: - name: Checkout uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - name: Resolve Unity version + if: ${{ inputs.init-type == 'runtime' }} + id: unity + shell: bash + run: echo "version=$(jq -r --arg v "$UNITY_VERSION" '.[$v].version' scripts/unity-versions.json)" >> "$GITHUB_OUTPUT" + - name: Restore cached compiled iOS build without Sentry if: ${{ inputs.init-type == 'runtime' }} id: cache-compiled-nosentry uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: IntegrationTest-NoSentry.app - key: build-nosentry-iOS-compiled-${{ inputs.unity-version }} + key: build-nosentry-iOS-compiled-${{ steps.unity.outputs.version }} - name: Download build without Sentry (for size comparison) if: ${{ inputs.init-type == 'runtime' && steps.cache-compiled-nosentry.outputs.cache-hit != 'true' }} @@ -62,7 +68,7 @@ jobs: uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 with: path: IntegrationTest-NoSentry.app - key: build-nosentry-iOS-compiled-${{ inputs.unity-version }} + key: ${{ steps.cache-compiled-nosentry.outputs.cache-primary-key }} - name: Download app project uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 diff --git a/.github/workflows/test-create.yml b/.github/workflows/test-create.yml index 067df280d..0fb666ec9 100644 --- a/.github/workflows/test-create.yml +++ b/.github/workflows/test-create.yml @@ -33,33 +33,15 @@ jobs: username: ${{ env.GITHUB_ACTOR }} password: ${{ secrets.GITHUB_TOKEN }} - - name: Restore IntegrationTest Project cache - id: cache-project - uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 - with: - path: samples/IntegrationTest - key: IntegrationTest-Project-${{ env.UNITY_VERSION }}-${{ hashFiles('test/Scripts.Integration.Test/**') }}-v1 - restore-keys: | - IntegrationTest-Project-${{ env.UNITY_VERSION }}- - - name: Start the Unity docker container - if: steps.cache-project.outputs.cache-hit != 'true' run: ./scripts/ci-docker.sh "$UNITY_VERSION" 'base' "$UNITY_LICENSE_SERVER_CONFIG" shell: bash env: UNITY_LICENSE_SERVER_CONFIG: ${{ secrets.UNITY_LICENSE_SERVER_CONFIG }} - name: Create new Project - if: steps.cache-project.outputs.cache-hit != 'true' run: ./test/Scripts.Integration.Test/create-project.ps1 -UnityPath "$env:UNITY_PATH" - - name: Save IntegrationTest Project cache - if: github.ref == 'refs/heads/main' && steps.cache-project.outputs.cache-hit != 'true' - uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5 - with: - path: samples/IntegrationTest - key: IntegrationTest-Project-${{ env.UNITY_VERSION }}-${{ hashFiles('test/Scripts.Integration.Test/**') }}-v1 - # We create tar explicitly because upload-artifact is slow for many files. - name: Create archive run: tar -cvzf test-project.tar.gz samples/IntegrationTest