62 lines
2.5 KiB
YAML
62 lines
2.5 KiB
YAML
name: Build Server
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: windows-latest
|
|
strategy:
|
|
matrix:
|
|
mode: ["Debug", "Release"]
|
|
steps:
|
|
- name: Git checkout
|
|
uses: actions/checkout@v1
|
|
with:
|
|
submodules: recursive
|
|
- name: Installer NuGet client
|
|
uses: nuget/setup-nuget@v1
|
|
- name: Restore NuGet packages
|
|
run: |
|
|
nuget restore .\TerrariaServerAPI\TShock.4.OTAPI.sln
|
|
nuget restore TShock.sln
|
|
- name: Build OTAPI
|
|
shell: cmd
|
|
run: |
|
|
"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\msbuild.exe" .\TerrariaServerAPI\TShock.4.OTAPI.sln /p:Configuration=${{ matrix.mode }}
|
|
cd .\TerrariaServerAPI\TShock.Modifications.Bootstrapper\bin\${{ matrix.mode }}
|
|
TShock.Modifications.Bootstrapper.exe
|
|
- name: Build TerrariaServerAPI
|
|
shell: cmd
|
|
run: |
|
|
cd .\TerrariaServerAPI
|
|
"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\msbuild.exe" .\TerrariaServerAPI\TerrariaServerAPI.csproj /p:Configuration=${{ matrix.mode }}
|
|
- name: Build TShock
|
|
shell: cmd
|
|
run: |
|
|
"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\msbuild.exe" .\TShockAPI\TShockAPI.csproj /p:Configuration=${{ matrix.mode }}
|
|
- name: Normalize release packaging
|
|
shell: cmd
|
|
run: |
|
|
xcopy /Y prebuilts\*.* TShockAPI\bin\${{ matrix.mode }}
|
|
mkdir TShockAPI\bin\${{ matrix.mode }}\ServerPlugins
|
|
move TShockAPI\bin\${{ matrix.mode }}\TShockAPI.dll TShockAPI\bin\${{ matrix.mode }}\ServerPlugins
|
|
- name: Upload TShock (Debug)
|
|
uses: actions/upload-artifact@master
|
|
with:
|
|
name: Experimental TShock (debug)
|
|
path: TShockAPI\bin\Debug
|
|
- name: Upload OTAPI Bootstrapper (Debug)
|
|
uses: actions/upload-artifact@master
|
|
with:
|
|
name: Experimental (debug) OTAPI Bootstrapper
|
|
path: .\TerrariaServerAPI\TShock.Modifications.Bootstrapper\bin\Debug\TShock.Modifications.Bootstrapper.exe
|
|
- name: Upload TShock (Not Debug)
|
|
uses: actions/upload-artifact@master
|
|
with:
|
|
name: Experimental TShock (not debug)
|
|
path: TShockAPI\bin\Release
|
|
- name: Upload OTAPI Bootstrapper (Not Debug)
|
|
uses: actions/upload-artifact@master
|
|
with:
|
|
name: Experimental (not debug) OTAPI Bootstrapper
|
|
path: .\TerrariaServerAPI\TShock.Modifications.Bootstrapper\bin\Release\TShock.Modifications.Bootstrapper.exe
|