WIP: Archipelago #1129
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 | |
on: | |
push: | |
branches: | |
- '*' | |
tags: | |
- '*' | |
jobs: | |
build: | |
runs-on: windows-2022 | |
env: | |
WORKDIR: D:/build | |
SCCACHE_GHA_ENABLED: "true" | |
VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite" | |
steps: | |
- name: Enable Git support for long file paths | |
run: git config --system core.longpaths true | |
- name: Run sccache-cache | |
uses: mozilla-actions/sccache-action@v0.0.4 | |
- name: Load CMake and Ninja | |
uses: lukka/get-cmake@latest | |
with: | |
cmakeVersion: 3.29.5 | |
- name: Set up directories | |
run: "md -Path 'C:\\moon\\randomizer'" | |
- name: Extract tag | |
uses: olegtarasov/get-tag@v2.1 | |
id: tagName | |
with: | |
tagRegex: "v?([^-]*)" | |
- name: Check out repository code | |
uses: actions/checkout@v4 | |
- uses: actions/github-script@v7 | |
with: | |
script: | | |
core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || ''); | |
core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || ''); | |
- name: Symlink build directory | |
run: | | |
$path = Resolve-Path . | |
New-Item -Path ${{ env.WORKDIR }} -ItemType SymbolicLink -Value $path | |
- uses: ilammy/msvc-dev-cmd@v1 | |
- name: Update vcpkg repository | |
shell: cmd | |
run: | | |
cd /d C:\vcpkg | |
git pull | |
- name: Generate solution | |
shell: cmd | |
working-directory: ${{ env.WORKDIR }} | |
run: | | |
generate-cmake.release-ninja.bat | |
IF ERRORLEVEL 1 ( | |
echo GENERATING FAILED | |
exit 1 | |
) | |
- name: Compile Wotw Rando | |
shell: cmd | |
working-directory: ${{ env.WORKDIR }} | |
run: | | |
cmake --build cmake-build-relwithdebinfo --target INSTALL_RUNTIME --config RelWithDebInfo | |
IF ERRORLEVEL 1 ( | |
echo BUILD FAILED | |
exit 1 | |
) | |
- name: Archive randomizer | |
uses: actions/upload-artifact@v4 | |
with: | |
name: randomizer | |
path: 'C:\moon\randomizer\*' |