Update Best-Builder.yaml #36
This file contains 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: Build for Windows | |
on: | |
push: | |
jobs: | |
build: | |
runs-on: windows-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v1 | |
- name: Install Node.js 12 | |
uses: actions/setup-node@master | |
with: | |
node-version: '12.x' | |
registry-url: 'https://npm.pkg.github.com' | |
- name: Setup MSVC Development Environment | |
uses: TheMrMilchmann/[email protected] | |
with: | |
arch: x64 | |
uwp: true | |
- name: Install Visual Studio 2022 | |
run: choco install visualstudio2022buildtools-preview --pre | |
- name: Install Visual Studio 2022 Workloads | |
shell: powershell | |
run: ./vs2017.ps1 | |
- name: Download and extract SDL2 | |
shell: powershell | |
run: | | |
$url = "https://github.com/libsdl-org/SDL/releases/download/release-2.30.1/SDL2-2.30.1-win32-x64.zip" | |
$zipFile = "$env:TEMP\SDL2-2.30.1-win32-x64.zip" | |
$extractFolder = "$env:TEMP\SDL2-2.30.1-win32-x64" | |
Invoke-WebRequest -Uri $url -OutFile $zipFile | |
Expand-Archive -Path $zipFile -DestinationPath $extractFolder | |
Move-Item "$extractFolder\*" "dep\msvc\deps-x64\include\SDL2\" | |
Remove-Item -Path $extractFolder -Recurse -Force | |
Remove-Item -Path $zipFile -Force | |
- name: Download and extract SDL2 | |
run: | | |
wget https://github.com/libsdl-org/SDL/releases/download/release-2.30.1/SDL2-2.30.1-win32-x64.zip | |
unzip SDL2-2.30.1-win32-x64.zip -d dep/msvc/deps-x64/include/SDL2 | |
mv dep/msvc/deps-x64/include/SDL2/SDL2-2.30.1-win32-x64/* dep/msvc/deps-x64/include/SDL2/ | |
rm -rf dep/msvc/deps-x64/include/SDL2/SDL2-2.30.1-win32-x64 | |
- name: Update manifest file | |
run: | | |
$version = "1.0.0.0" | |
$manifest = "src/duckstation-uwp/Package.appxmanifest" | |
$content = Get-Content $manifest | |
$content -replace '(?<=<Identity Name=")([^"]+)(?=" Version="[^"]+")', $version | Set-Content $manifest | |
shell: pwsh | |
- name: Use DuckStation PFX | |
run: echo "${{ secrets.DUCKSTATION_PFX }}" > duckstation-uwp_TemporaryKey.pfx | |
- name: Build DuckStation x64 | |
run: msbuild duckstation.sln /t:Build /p:Configuration=ReleaseUWP /p:Platform=x64 | |
- name: Sign UWP package | |
run: | | |
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\SignTool.exe" sign /fd SHA256 /f duckstation-uwp_TemporaryKey.pfx /p ${{ secrets.PFX_PASSWORD }} /t http://timestamp.digicert.com/ /v *.appx | |
- name: Upload UWP package as artifact | |
uses: actions/upload-artifact@v2 | |
with: | |
name: DuckStation-UWP | |
- name: Cleanup | |
run: | | |
Remove-Item "deps-x64.7z" -Force | |
Remove-Item "duckstation-uwp_TemporaryKey.pfx" -Force |