Skip to content

Instantly share code, notes, and snippets.

@douglaslassance
Last active July 31, 2022 09:43
Show Gist options
  • Save douglaslassance/07b2dffc0c1b8af563f3ef1a5f681932 to your computer and use it in GitHub Desktop.
Save douglaslassance/07b2dffc0c1b8af563f3ef1a5f681932 to your computer and use it in GitHub Desktop.
name: Publish
on:
workflow_dispatch:
push:
branches: [ main ]
paths:
- 'Engine/**'
- 'Game/**'
- 'PackageGame.bat'
- 'DeployGame.bat'
- 'Steam.vdf'
jobs:
publish:
name: Publish
runs-on: windows-latest
env:
STEAM_USERNAME: ${{ secrets.STEAM_USERNAME }}
STEAM_PASSWORD: ${{ secrets.STEAM_PASSWORD }}
SPACES_ACCESS_KEY: ${{ secrets.SPACES_ACCESS_KEY }}
SPACES_SECRET: ${{ secrets.SPACES_SECRET }}
SPACES_ENDPOINT: ${{ secrets.SPACES_ENDPOINT }}
steps:
- name: Checkout steamcmd
uses: actions/checkout@v2
with:
repository: <github_account>/steamcmd
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
path: .\steamcmd
# Always good to verify we can login first.
- name: Login to Steam
run: |
$env:path = $env:path + ";$env:GITHUB_WORKSPACE\steamcmd"
steamcmd +login $env:STEAM_USERNAME $env:STEAM_PASSWORD +quit
- name: Setup MSBuild
uses: microsoft/setup-msbuild@v1
- name: Sparse checkout action
uses: snow-actions/[email protected]
with:
patterns: |
Engine
Game
# There is 80 GB on C instead of 14 GB on the default D drive.
path: C:\<project_name>
- name: Setup engine
run: |
C:\<project_name>\SetupEngine.bat
- name: Package game
run: C:\<project_name>\PackageGame.bat
- name: Publish game
run: |
$env:path = $env:path + ";$env:GITHUB_WORKSPACE\steamcmd"
C:\<project_name>\PublishGame.bat
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment