mirror of
https://github.com/Outer-Wilds-New-Horizons/new-horizons.git
synced 2025-12-11 20:15:44 +01:00
69 lines
2.0 KiB
YAML
69 lines
2.0 KiB
YAML
# Usage:
|
|
#
|
|
# Build:
|
|
# uses: "./.github/workflows/build"
|
|
# with:
|
|
# build_type: Debug
|
|
#
|
|
#
|
|
|
|
name: Build
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
build_type:
|
|
description: 'Build type to pass to `dotnet`, should be either "Debug" or "Release"'
|
|
required: false
|
|
default: "Debug"
|
|
type: string
|
|
outputs:
|
|
schemas_changed:
|
|
description: "Have the schemas been updated?"
|
|
value: ${{ jobs.Build.outputs.schemas_changed }}
|
|
|
|
jobs:
|
|
Build:
|
|
runs-on: windows-latest
|
|
outputs:
|
|
schemas_changed: ${{ steps.changed_files.outputs.files_changed }}
|
|
steps:
|
|
- name: Checkout Repo
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup .NET
|
|
uses: actions/setup-dotnet@v4
|
|
|
|
# Disable Strong Name Verification to let us pull a switch-a-roo
|
|
- name: Disable strong name validation
|
|
run: "C:\\\"Program Files (x86)\"\\\"Microsoft SDKs\"\\Windows\\v10.0A\\bin\\\"NETFX 4.8 Tools\"\\x64\\sn.exe -Vr *"
|
|
|
|
- name: Remove .csproj.user
|
|
run: "rm .\\NewHorizons\\NewHorizons.csproj.user"
|
|
|
|
- name: Build Project
|
|
run: dotnet build -c ${{ inputs.build_type }}
|
|
|
|
- name: Generate Schemas
|
|
run: .\SchemaExporter\bin\${{ inputs.build_type }}\SchemaExporter.exe
|
|
|
|
- name: Delete XML documentation
|
|
run: rm .\NewHorizons\bin\${{ inputs.build_type }}\NewHorizons.xml
|
|
|
|
- name: Upload Mod Artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: xen.NewHorizons.${{ inputs.build_type }}
|
|
path: .\NewHorizons\bin\${{ inputs.build_type }}
|
|
|
|
- name: Upload Schemas Artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: NewHorizons-Schemas-${{ inputs.build_type }}
|
|
path: .\NewHorizons\Schemas
|
|
|
|
- name: Verify Changed Schemas
|
|
uses: tj-actions/verify-changed-files@v20
|
|
id: changed_files
|
|
with:
|
|
files: NewHorizons/Schemas/** |