Skip to content

Main

Main #421

Workflow file for this run

name: Main
on:
push:
branches:
- main
pull_request:
branches:
- main
schedule:
- cron: '0 0 * * 6'
workflow_dispatch:
jobs:
main:
name: 'test.windows'
runs-on: 'windows-2022'
env:
DOTNET_NOLOGO: 1
DOTNET_CLI_TELEMETRY_OPTOUT: 1
NUGET_PACKAGES: ${{ github.workspace }}/.github/nuget-packages
steps:
- name: Checkout
uses: actions/checkout@v4
- name: NuGet cache
uses: actions/cache@v4
with:
path: ${{ env.NUGET_PACKAGES }}
key: ${{ runner.os }}.nuget.${{ hashFiles('**/*.csproj') }}
- name: Build
run: dotnet build Source\Bloodmasters.sln --configuration Release
- name: Publish
run: dotnet publish Source\Bloodmasters.sln --configuration Release --self-contained --runtime win-x64
- name: Upload client
uses: actions/upload-artifact@v4
with:
name: Bloodmasters
path: Publish/Client
- name: Upload server
uses: actions/upload-artifact@v4
with:
name: BMServer
path: Publish/Server
- name: Test
run: dotnet test Source\Bloodmasters.sln --configuration Release
verify:
name: 'verify'
runs-on: 'ubuntu-24.04'
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Verify
shell: pwsh
run: ./Scripts/verify-encoding.ps1