Skip to content

Deploy to Steam (Windows & macOS) #35

Deploy to Steam (Windows & macOS)

Deploy to Steam (Windows & macOS) #35

Workflow file for this run

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 - List Files
run: |
echo "Checking root workspace:"
ls -R
- 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 }}
# Path corrected to where Godot actually put the files
rootPath: project/out
releaseBranch: "beta"
buildDescription: "v${{ github.run_number }}"
# Using the depot inputs that worked in your last log
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"