Analytics: Fix eparch game build check #458
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 and test (.NET Core) | |
on: | |
push: | |
pull_request: | |
workflow_dispatch: | |
jobs: | |
build: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Setup .NET 8 | |
uses: actions/setup-dotnet@v4 | |
with: | |
dotnet-version: '8.0.x' | |
# This is a workaround for issue https://github.com/actions/virtual-environments/issues/1090, | |
# which causes to nuget restores to fail | |
- name: Clean NuGet cache | |
run: dotnet nuget locals all --clear | |
- name: Build | |
run: dotnet build --configuration Release | |
- name: Test | |
run: dotnet test --no-restore --verbosity normal | |
- name: Package Log Manager (Windows, WPF) | |
run: dotnet publish ArcdpsLogManager.Wpf --configuration Release -r win-x64 --self-contained=false -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:IncludeAllContentForSelfExtract=true -o artifacts/manager/win64/ | |
- name: Package Log Manager (Windows, WPF, self-contained) | |
run: dotnet publish ArcdpsLogManager.Wpf --configuration Release -r win-x64 --self-contained=true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:IncludeAllContentForSelfExtract=true -o artifacts/manager/win64-sc/ | |
- name: Package Log Manager (Linux, GTK) | |
run: dotnet publish ArcdpsLogManager.Gtk --configuration Release -r linux-x64 --self-contained=false -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:IncludeAllContentForSelfExtract=true -o artifacts/manager/linux64/ | |
- name: Package Log Manager (Linux, GTK, self-contained) | |
run: dotnet publish ArcdpsLogManager.Gtk --configuration Release -r linux-x64 --self-contained=true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:IncludeAllContentForSelfExtract=true -o artifacts/manager/linux64-sc/ | |
- name: Package EVTC Inspector (Windows, WPF) | |
run: dotnet publish EVTCInspector.Wpf --configuration Release -r win-x64 --self-contained=false -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:IncludeAllContentForSelfExtract=true -o artifacts/inspector/win64/ | |
- name: Package EVTC Inspector (Linux, GTK) | |
run: dotnet publish EVTCInspector.Gtk --configuration Release -r linux-x64 --self-contained=false -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:IncludeAllContentForSelfExtract=true -o artifacts/inspector/linux64/ | |
# The PDB files for the self-contained versions should be the same as the non-self-contained version, so we only keep one. | |
# Same thing for console projects that are aimed at different runtime platforms. | |
- name: Bundle PDBs | |
run: | | |
mkdir -p artifacts/pdb/manager/win64/ | |
mkdir -p artifacts/pdb/manager/linux64/ | |
mkdir -p artifacts/pdb/inspector/win64/ | |
mkdir -p artifacts/pdb/inspector/linux64/ | |
mv artifacts/manager/win64/*.pdb artifacts/pdb/manager/win64/ | |
mv artifacts/manager/linux64/*.pdb artifacts/pdb/manager/linux64/ | |
mv artifacts/inspector/win64/*.pdb artifacts/pdb/inspector/win64/ | |
mv artifacts/inspector/linux64/*.pdb artifacts/pdb/inspector/linux64/ | |
- name: Prettify executable filenames | |
run: | | |
mv artifacts/manager/win64/GW2Scratch.ArcdpsLogManager.Wpf.exe artifacts/manager/win64/ArcdpsLogManager.exe | |
mv artifacts/manager/win64-sc/GW2Scratch.ArcdpsLogManager.Wpf.exe artifacts/manager/win64-sc/ArcdpsLogManager.exe | |
mv artifacts/manager/linux64/GW2Scratch.ArcdpsLogManager.Gtk artifacts/manager/linux64/ArcdpsLogManager | |
mv artifacts/manager/linux64-sc/GW2Scratch.ArcdpsLogManager.Gtk artifacts/manager/linux64-sc/ArcdpsLogManager | |
mv artifacts/inspector/win64/GW2Scratch.EVTCInspector.Wpf.exe artifacts/inspector/win64/EVTCInspector.exe | |
mv artifacts/inspector/linux64/GW2Scratch.EVTCInspector.Gtk artifacts/inspector/linux64/EVTCInspector | |
- name: Upload Log Manager (Windows) | |
uses: actions/upload-artifact@v2 | |
with: | |
name: Log Manager (Windows) | |
path: artifacts/manager/win64/ArcdpsLogManager.exe | |
- name: Upload Log Manager (Windows, self-contained) | |
uses: actions/upload-artifact@v2 | |
with: | |
name: Log Manager (Windows, self-contained) | |
path: artifacts/manager/win64-sc/ArcdpsLogManager.exe | |
- name: Upload Log Manager (Linux) | |
uses: actions/upload-artifact@v2 | |
with: | |
name: Log Manager (Linux) | |
path: artifacts/manager/linux64/ArcdpsLogManager | |
- name: Upload Log Manager (Linux, self-contained) | |
uses: actions/upload-artifact@v2 | |
with: | |
name: Log Manager (Linux, self-contained) | |
path: artifacts/manager/linux64-sc/ArcdpsLogManager | |
- name: Upload EVTC Inspector (Windows) | |
uses: actions/upload-artifact@v2 | |
with: | |
name: EVTC Inspector (Windows) | |
path: artifacts/inspector/win64/EVTCInspector.exe | |
- name: Upload EVTC Inspector (Linux) | |
uses: actions/upload-artifact@v2 | |
with: | |
name: EVTC Inspector (Linux) | |
path: artifacts/inspector/linux64/EVTCInspector | |
- name: Upload PDB files | |
uses: actions/upload-artifact@v2 | |
with: | |
name: PDB files | |
path: artifacts/pdb/ |