Skip to content

WIP: The Avalonia port #1946

WIP: The Avalonia port

WIP: The Avalonia port #1946

Workflow file for this run

name: Publish PR
on:
pull_request:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
build_gui:
strategy:
fail-fast: false
matrix:
os: [windows-latest]
configuration: [Debug]
bundled: [false]
singlefile: [true, false]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v7
with:
submodules: true
- name: Setup .NET
uses: actions/setup-dotnet@v6
with:
dotnet-version: 10.0.x
- name: Restore dependencies
run: dotnet restore
- name: Build
run: |
dotnet build UndertaleModTool --no-restore
dotnet build UndertaleModToolUpdater --no-restore
- name: Publish ${{ matrix.os }} GUI
run: |
dotnet publish UndertaleModTool -c ${{ matrix.configuration }} -r win-x64 --self-contained ${{ matrix.bundled }} -p:PublishSingleFile=${{ matrix.singlefile }} --output ${{ matrix.os }}
dotnet publish UndertaleModToolUpdater -c ${{ matrix.configuration }} -r win-x64 --self-contained ${{ matrix.bundled }} -p:PublishSingleFile=false --output ${{ matrix.os }}/Updater
- name: Copy external files
run: |
cp ./README.md ./${{ matrix.os }}
cp ./SCRIPTS.md ./${{ matrix.os }}
cp ./LICENSE.txt ./${{ matrix.os }}
- name: Upload ${{ matrix.os }} GUI
uses: actions/upload-artifact@v7
with:
name: GUI-${{ matrix.os }}-isBundled-${{ matrix.bundled }}-isSingleFile-${{ matrix.singlefile }}
path: ${{ matrix.os }}
publish_cli:
strategy:
fail-fast: false
matrix:
configuration: [Debug]
bundled: [false]
target: [linux-x64, osx-arm64, osx-x64, win-x64]
include:
- target: linux-x64
os: ubuntu-latest
rid: linux-x64
output: CLI-ubuntu-latest
- target: osx-arm64
os: macOS-latest
rid: osx-arm64
output: CLI-macOS-latest
- target: osx-x64
os: macOS-latest
rid: osx-x64
output: CLI-macOS-latest-x86
- target: win-x64
os: windows-latest
rid: win-x64
output: CLI-windows-latest
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v7
with:
submodules: true
- name: Setup .NET
uses: actions/setup-dotnet@v6
with:
dotnet-version: 10.0.x
- name: Restore dependencies
run: dotnet restore UndertaleModCli
- name: Build
run: dotnet build UndertaleModCli --no-restore
- name: Publish ${{ matrix.os }} CLI
run: dotnet publish UndertaleModCli -c ${{ matrix.configuration }} -r ${{ matrix.rid }} --self-contained ${{ matrix.bundled }} -p:PublishSingleFile=false --output ${{ matrix.output }}
- name: Copy external files
run: |
cp ./README.md ./${{ matrix.output }}/
cp ./SCRIPTS.md ./${{ matrix.output }}/
cp ./LICENSE.txt ./${{ matrix.output }}/
cp -r ./UndertaleModTool/Scripts/ ./${{ matrix.output }}/Scripts/
rm ./${{ matrix.output }}/Underanalyzer.pdb
- name: Upload ${{ matrix.os }} CLI
uses: actions/upload-artifact@v7
with:
name: ${{ matrix.output }}-isBundled-${{ matrix.bundled }}
path: ${{ matrix.output }}