My contribution to stabilizing release #441
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Gothic Build Jobs | |
| on: | |
| pull_request: | |
| types: | |
| - opened | |
| - labeled | |
| env: | |
| HVRversion: 'v2.9.3.a-Unity-6' | |
| jobs: | |
| ######### | |
| # DEV COMPILE WITHOUT HVR # | |
| ######### | |
| testCompileWithoutHVR: | |
| name: Compile test without HVR installation | |
| runs-on: ubuntu-latest | |
| # disabled - Let's re-enable once we implement Flat implementation. | |
| if: false && github.event.pull_request.draft == false | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| clean: true | |
| - name: Remove PlayerSetting HVR symbol temporarily | |
| run: sed -i 's/GOTHIC_HVR_INSTALLED/GOTHIC_PLACEHOLDER/g' ProjectSettings/ProjectSettings.asset | |
| - name: Build project | |
| uses: game-ci/unity-builder@v4 | |
| env: | |
| UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} | |
| UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} | |
| UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }} | |
| with: | |
| targetPlatform: StandaloneWindows64 | |
| allowDirtyBuild: true | |
| buildMethod: Gothic.VR.Editor.VRBuilderActions.PerformWindows64Build | |
| ######### | |
| # BUILD # | |
| ######### | |
| buildForAllPlatforms: | |
| if: ${{ github.event.label.name == 'pipeline-test-build' }} | |
| name: Build Gothic | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: true | |
| matrix: | |
| include: | |
| - targetPlatform: StandaloneWindows64 | |
| targetDevice: Windows64 | |
| - targetPlatform: Android | |
| targetDevice: Pico | |
| - targetPlatform: Android | |
| targetDevice: Quest | |
| steps: | |
| - name: Free Disk Space (Ubuntu) | |
| uses: jlumbroso/free-disk-space@main | |
| with: | |
| tool-cache: false | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| clean: true | |
| - uses: actions/cache@v4 | |
| with: | |
| path: Library | |
| key: Library-${{ matrix.targetPlatform }} | |
| restore-keys: Library- | |
| ### | |
| # Checkout and install HurricaneVR | |
| ### | |
| # PAT_ASSET_REPO_CHECKOUT expires once per year. An Admin need to create a new one as ORG_PAT if expired. | |
| - name: Check out HVR .unitypackage from private repository | |
| uses: actions/checkout@v4 | |
| with: | |
| repository: Gothic-Unity-Project/asset-dependencies | |
| ref: main | |
| path: Checkout/AssetRepo | |
| token: ${{ secrets.PAT_ASSET_REPO_CHECKOUT }} | |
| - name: Copy HVR package | |
| run: | | |
| mkdir Assets/HuricaneVR; | |
| mv Checkout/AssetRepo/HVR/${{env.HVRversion}}/ Assets/HurricaneVR; | |
| ### | |
| # Build | |
| ### | |
| - name: Build project | |
| uses: game-ci/unity-builder@v4 | |
| env: | |
| UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} | |
| UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} | |
| UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }} | |
| with: | |
| targetPlatform: ${{ matrix.targetPlatform }} | |
| allowDirtyBuild: true | |
| buildMethod: Gothic.VR.Editor.VRBuilderActions.Perform${{ matrix.targetDevice }}Build | |
| # Android Keystore settings | |
| androidKeystoreBase64: ${{ secrets.ANDROID_KEYSTORE_BASE64 }} | |
| androidKeystoreName: Gothic.keystore | |
| customParameters: > | |
| -keystoreName "Gothic.keystore" | |
| -keystorePass "${{ secrets.ANDROID_KEYSTORE_PASS }}" | |
| -keyaliasName "${{ secrets.ANDROID_KEYALIAS_NAME }}" | |
| -keyaliasPass "${{ secrets.ANDROID_KEYALIAS_PASS }}" | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: Gothic-Unity-${{ matrix.targetDevice }} | |
| path: Builds/${{ matrix.targetDevice }} | |
| retention-days: 7 |