1 parent
616923c1b0
commit
482ff3b911
1 file changed
+82
@@ -0,0 +1,82 @@
|
|||||||
|
name: 'Setup GDK (Game Development Kit) for Windows Desktop'
|
||||||
|
description: 'Download GDK and install into MSBuild'
|
||||||
|
inputs:
|
||||||
|
# Keep edition and ref in sync!
|
||||||
|
edition:
|
||||||
|
description: 'GDK edition'
|
||||||
|
default: '240601' # YYMMUU (Year Month Update)
|
||||||
|
ref:
|
||||||
|
description: 'Git reference'
|
||||||
|
default: 'June_2024_Update_1'
|
||||||
|
folder:
|
||||||
|
description: 'Folder where to create Directory.Build.props'
|
||||||
|
required: true
|
||||||
|
default: '${{ github.workspace }}'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-python@main
|
||||||
|
with:
|
||||||
|
python-version: 3.x
|
||||||
|
- name: 'Calculate variables'
|
||||||
|
id: calc
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
$vs_folder=@(vswhere -latest -property installationPath)
|
||||||
|
echo "vs-folder=${vs_folder}" >> $Env:GITHUB_OUTPUT
|
||||||
|
|
||||||
|
echo "gdk-path=${{ runner.temp }}\GDK-${{ inputs.edition }}" >> $Env:GITHUB_OUTPUT
|
||||||
|
|
||||||
|
echo "cache-key=gdk-${{ inputs.ref }}-${{ inputs.edition }}" >> $Env:GITHUB_OUTPUT
|
||||||
|
- name: 'Restore cached GDK'
|
||||||
|
id: cache-restore
|
||||||
|
uses: actions/cache/restore@v4
|
||||||
|
with:
|
||||||
|
path: '${{ steps.calc.outputs.gdk-path }}'
|
||||||
|
key: ${{ steps.calc.outputs.cache-key }}
|
||||||
|
- name: 'Download GDK'
|
||||||
|
if: ${{ !steps.cache-restore.outputs.cache-hit }}
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
python build-scripts/setup-gdk-desktop.py `
|
||||||
|
--download `
|
||||||
|
--temp-folder "${{ runner.temp }}" `
|
||||||
|
--gdk-path="${{ steps.calc.outputs.gdk-path }}" `
|
||||||
|
--ref-edition "${{ inputs.ref }},${{ inputs.edition }}" `
|
||||||
|
--vs-folder="${{ steps.calc.outputs.vs-folder }}" `
|
||||||
|
--no-user-props
|
||||||
|
- name: 'Extract GDK'
|
||||||
|
if: ${{ !steps.cache-restore.outputs.cache-hit }}
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
python build-scripts/setup-gdk-desktop.py `
|
||||||
|
--extract `
|
||||||
|
--ref-edition "${{ inputs.ref }},${{ inputs.edition }}" `
|
||||||
|
--temp-folder "${{ runner.temp }}" `
|
||||||
|
--gdk-path="${{ steps.calc.outputs.gdk-path }}" `
|
||||||
|
--vs-folder="${{ steps.calc.outputs.vs-folder }}" `
|
||||||
|
--no-user-props
|
||||||
|
- name: 'Cache GDK'
|
||||||
|
if: ${{ !steps.cache-restore.outputs.cache-hit }}
|
||||||
|
uses: actions/cache/save@v4
|
||||||
|
with:
|
||||||
|
path: '${{ steps.calc.outputs.gdk-path }}'
|
||||||
|
key: ${{ steps.calc.outputs.cache-key }}
|
||||||
|
- name: 'Copy MSBuild files into GDK'
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
python build-scripts/setup-gdk-desktop.py `
|
||||||
|
--ref-edition "${{ inputs.ref }},${{ inputs.edition }}" `
|
||||||
|
--gdk-path="${{ steps.calc.outputs.gdk-path }}" `
|
||||||
|
--vs-folder="${{ steps.calc.outputs.vs-folder }}" `
|
||||||
|
--copy-msbuild `
|
||||||
|
--no-user-props
|
||||||
|
- name: 'Write user props'
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
python build-scripts/setup-gdk-desktop.py `
|
||||||
|
--ref-edition "${{ inputs.ref }},${{ inputs.edition }}" `
|
||||||
|
--temp-folder "${{ runner.temp }}" `
|
||||||
|
--vs-folder="${{ steps.calc.outputs.vs-folder }}" `
|
||||||
|
--gdk-path="${{ steps.calc.outputs.gdk-path }}" `
|
||||||
|
"--props-folder=${{ inputs.folder }}"
|
||||||
Reference in new issue
Block a user