Update to godot_openxr_vendors 4.0.0 #143
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: "Godot" | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| release: | |
| types: | |
| - released | |
| env: | |
| GODOT_VERSION: 4.4.1-stable | |
| EXPORT_NAME: MuseumOfAllThings | |
| jobs: | |
| export: | |
| name: Export | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Get export template directory name | |
| run: | | |
| echo "GODOT_TEMPLATE_VERSION=${GODOT_VERSION//-/.}" >> $GITHUB_ENV | |
| - name: Cache Godot Engine downloads | |
| id: cache-godot | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| tools/godot | |
| tools/editor_data/export_templates/${{ env.GODOT_TEMPLATE_VERSION }} | |
| tools/._sc_ | |
| key: godot-${{ env.GODOT_VERSION }} | |
| - name: Download Godot Engine | |
| id: download | |
| if: steps.cache-godot.outputs.cache-hit != 'true' | |
| run: | | |
| mkdir -p tools && cd tools | |
| # Download binary from official GitHub release | |
| wget https://github.com/godotengine/godot-builds/releases/download/${GODOT_VERSION}/Godot_v${GODOT_VERSION}_linux.x86_64.zip && \ | |
| unzip Godot_v${GODOT_VERSION}_linux.x86_64.zip && \ | |
| mv Godot_v${GODOT_VERSION}_linux.x86_64 godot | |
| # Download export templates from official GitHub release | |
| mkdir -p editor_data/export_templates | |
| wget https://github.com/godotengine/godot-builds/releases/download/${GODOT_VERSION}/Godot_v${GODOT_VERSION}_export_templates.tpz && \ | |
| unzip Godot_v${GODOT_VERSION}_export_templates.tpz && \ | |
| mv templates editor_data/export_templates/${GODOT_TEMPLATE_VERSION} | |
| # Tell Godot Engine to be self-contained | |
| touch ._sc_ | |
| - name: Set up OpenJDK 17 | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: 'temurin' | |
| java-version: 17 | |
| if: github.event_name != 'pull_request' | |
| - name: Setup Android SDK | |
| uses: android-actions/setup-android@v3 | |
| if: github.event_name != 'pull_request' | |
| - name: Import project | |
| run: | | |
| ./tools/godot --import --headless --verbose | |
| - name: Ensure path exists | |
| run: mkdir -p dist/web | |
| - name: Export PCK | |
| run: | | |
| ./tools/godot --verbose --headless --export-pack \ | |
| "Linux" ./dist/${EXPORT_NAME}.pck | |
| - name: Upload PCK | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: PCK | |
| path: dist/${{ env.EXPORT_NAME }}.pck | |
| - name: Export Linux | |
| run: | | |
| ./tools/godot --verbose --headless --export-release \ | |
| "Linux" ./dist/${EXPORT_NAME}_Linux.x86_64 | |
| - name: Upload Linux | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Linux | |
| path: dist/${{ env.EXPORT_NAME }}_Linux.x86_64 | |
| - name: Export Linux (OpenXR) | |
| run: | | |
| ./tools/godot --verbose --headless --export-release \ | |
| "Linux (OpenXR)" ./dist/${EXPORT_NAME}_Linux_OpenXR.x86_64 | |
| - name: Upload Linux (OpenXR) | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Linux (OpenXR) | |
| path: dist/${{ env.EXPORT_NAME }}_Linux_OpenXR.x86_64 | |
| - name: Export Windows Desktop | |
| run: | | |
| ./tools/godot --verbose --headless --export-release \ | |
| "Windows Desktop" ./dist/${EXPORT_NAME}.exe | |
| - name: Upload Windows Desktop | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Windows Desktop | |
| path: dist/${{ env.EXPORT_NAME }}.exe | |
| - name: Export Windows Desktop (OpenXR) | |
| run: | | |
| ./tools/godot --verbose --headless --export-release \ | |
| "Windows Desktop (OpenXR)" ./dist/${EXPORT_NAME}_OpenXR.exe | |
| - name: Upload Windows Desktop (OpenXR) | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Windows Desktop (OpenXR) | |
| path: dist/${{ env.EXPORT_NAME }}_OpenXR.exe | |
| - name: Export macOS | |
| run: | | |
| ./tools/godot --verbose --headless --export-release \ | |
| "macOS" ./dist/${EXPORT_NAME}_OSX.zip | |
| - name: Upload macOS | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: macOS | |
| path: dist/${{ env.EXPORT_NAME }}_OSX.zip | |
| - name: Export Web | |
| run: | | |
| ./tools/godot --verbose --headless --export-release \ | |
| "Web" ./dist/web/index.html | |
| (cd dist/web && zip -r ../${{ env.EXPORT_NAME }}_Web.zip *) | |
| - name: Upload Web | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Web | |
| path: dist/${{ env.EXPORT_NAME }}_Web.zip | |
| - name: Export Meta Quest | |
| run: | | |
| echo "${{ secrets.ANDROID_KEYSTORE }}" | base64 -d > android-release.keystore | |
| export GODOT_ANDROID_KEYSTORE_RELEASE_PATH=android-release.keystore | |
| export GODOT_ANDROID_KEYSTORE_RELEASE_USER="${{ secrets.ANDROID_KEYSTORE_USER }}" | |
| export GODOT_ANDROID_KEYSTORE_RELEASE_PASSWORD="${{ secrets.ANDROID_KEYSTORE_PASSWORD }}" | |
| ./tools/godot --verbose --headless --install-android-build-template --export-release \ | |
| "Meta Quest" ./dist/${{ env.EXPORT_NAME }}_Quest.apk | |
| if: github.event_name != 'pull_request' | |
| - name: Upload Meta Quest | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Meta Quest | |
| path: dist/${{ env.EXPORT_NAME }}_Quest.apk | |
| if: github.event_name != 'pull_request' | |
| release: | |
| name: Attach to Release | |
| needs: export | |
| permissions: write-all | |
| if: ${{ github.event_name == 'release' }} | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Download artifacts | |
| uses: actions/download-artifact@v4 | |
| - name: Upload artifacts to release | |
| env: | |
| GITHUB_TOKEN: ${{ github.token }} | |
| run: | | |
| gh release upload '${{ github.ref_name }}' */* --repo '${{ github.repository }}' |