mirror of
https://git.do.srb2.org/STJr/UltimateZoneBuilder.git
synced 2024-11-22 20:02:48 +00:00
70 lines
2.2 KiB
YAML
70 lines
2.2 KiB
YAML
name: Continuous Integration - Windows
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
build:
|
|
name: "Visual Studio ${{ matrix.platform }} ${{ matrix.configuration }}"
|
|
runs-on: windows-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
configuration: [Release, Debug]
|
|
platform: [x64, x86]
|
|
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
|
|
- name: Build
|
|
run: |
|
|
$vswhere = "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe"
|
|
$msbuild = & "$vswhere" -latest -requires Microsoft.Component.MSBuild -find MSBuild\**\Bin\MSBuild.exe | select-object -first 1
|
|
$options = @( `
|
|
'-property:Configuration=${{ matrix.configuration }}', `
|
|
'-property:Platform=${{ matrix.platform }}', `
|
|
'-maxcpucount', `
|
|
'-verbosity:minimal' `
|
|
)
|
|
& $msbuild Builder.sln $options
|
|
if (-not $?) { throw "Build failed" }
|
|
& $msbuild Source\Tools\Updater\Updater.csproj $options
|
|
if (-not $?) { throw "Build failed" }
|
|
|
|
- name: Test Files Presence
|
|
run: |
|
|
$files = @( `
|
|
'Build\Builder.exe', `
|
|
'Build\BuilderNative.dll', `
|
|
'Build\Plugins\AutomapMode.dll', `
|
|
'Build\Plugins\BuilderEffects.dll', `
|
|
'Build\Plugins\BuilderModes.dll', `
|
|
'Build\Plugins\ColorPicker.dll', `
|
|
'Build\Plugins\CommentsPanel.dll', `
|
|
'Build\Plugins\NodesViewer.dll', `
|
|
'Build\Plugins\SoundPropagationMode.dll', `
|
|
'Build\Plugins\StairSectorBuilder.dll', `
|
|
'Build\Plugins\TagExplorer.dll', `
|
|
'Build\Plugins\TagRange.dll', `
|
|
'Build\Plugins\ThreeDFloorMode.dll', `
|
|
'Build\Plugins\VisplaneExplorer.dll', `
|
|
'Build\Updater.exe' `
|
|
)
|
|
foreach($file in $files)
|
|
{
|
|
if (!(Test-Path -Path $file -PathType Leaf))
|
|
{
|
|
Write-Output "ERROR: File $file is missing"
|
|
exit 1
|
|
}
|
|
}
|
|
|
|
- name: Prepare Package
|
|
run: |
|
|
# Delete unwanted files
|
|
Remove-Item Build\Setup -recurse
|
|
|
|
- name: Upload Package
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
path: Build
|
|
name: "vs_${{ matrix.platform }}_${{ matrix.configuration }}"
|