Deploy to Steam (Windows & macOS) #41
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: Deploy to Steam (Windows & macOS) | |
| on: | |
| workflow_dispatch: | |
| env: | |
| GODOT_VERSION: ${{ vars.GODOT_VERSION }} | |
| jobs: | |
| deploy: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout source code | |
| uses: actions/checkout@v4 | |
| with: | |
| lfs: true | |
| - name: Godot Export | |
| id: export | |
| uses: firebelley/godot-export@v7.0.0 | |
| with: | |
| relative_project_path: ./project/ | |
| # We tell Firebelley to put everything in a folder named 'out' | |
| build_directory: out | |
| # Steam needs raw files, NOT a zip of everything | |
| archive_output: false | |
| godot_executable_download_url: https://github.com/godotengine/godot/releases/download/${{ env.GODOT_VERSION }}-stable/Godot_v${{ env.GODOT_VERSION }}-stable_linux.x86_64.zip | |
| godot_export_templates_download_url: https://github.com/godotengine/godot/releases/download/${{ env.GODOT_VERSION }}-stable/Godot_v${{ env.GODOT_VERSION }}-stable_export_templates.tpz | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Debug - Find the actual build folder | |
| run: | | |
| echo "Listing all files in the workspace to find the .exe:" | |
| find . -maxdepth 4 -name "*.exe" | |
| - name: Generate Steam TOTP | |
| id: steam_totp | |
| uses: CyberAndrii/steam-totp@v1 | |
| with: | |
| shared_secret: ${{ secrets.STEAM_TOTP }} | |
| - name: Upload to Steam | |
| uses: game-ci/steam-deploy@v3 | |
| with: | |
| username: ${{ vars.STEAM_USERNAME }} | |
| password: ${{ secrets.STEAM_PASSWORD }} | |
| totp: ${{ steps.steam_totp.outputs.code }} | |
| appId: ${{ vars.STEAM_APP_ID }} | |
| # THIS IS THE KEY: Point directly to the action's internal build folder | |
| rootPath: /home/runner/.local/share/godot/builds | |
| releaseBranch: "beta" | |
| buildDescription: "Build ${{ github.run_number }}" | |
| # The action creates subfolders based on the Preset Name | |
| depot1Path: "Windows Desktop" | |
| depot2Path: "macOS" | |
| args: | | |
| +set_depot_build_path ${{ vars.STEAM_DEPOT_WINDOWS }} "Windows Desktop" | |
| +set_depot_build_path ${{ vars.STEAM_DEPOT_MACOS }} "macOS" |