Skip to content

Dev

Dev #2

Workflow file for this run

name: Build Project
on:
push:
branches: [ 'main', 'stable' ]
tags: [ 'v*' ] # <-- Tells GitHub to listen for version tags
pull_request:
branches: [ 'main', 'stable' ]
workflow_dispatch:
defaults:
run:
shell: pwsh
jobs:
build:
name: Build Application
runs-on: windows-latest # <-- Provisions the VS 2026 / v145 toolset
if: |
!contains(github.event.head_commit.message, '***NO_CI***') &&
!contains(github.event.head_commit.message, '[skip ci]')
steps:
- name: Set up build environment
uses: microsoft/setup-msbuild@v2
- name: Set up NuGet
uses: nuget/setup-nuget@v2
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
- name: Build Core Application
run: |
msbuild nextxi.sln -t:'restore;build' -p:configuration=release -p:PlatformToolset=v143 -p:TreatWarningsAsErrors=false -p:RunCodeAnalysis=false -p:ReleaseBuild=true -m -nowarn:NU1503
- name: Build Installer
run: |
nuget restore installer.sln
msbuild installer.sln -t:'build' -p:configuration=release -m -nowarn:NU1503
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: compiled-binaries
path: build/bin/release/
# --- UPDATED: Automated Release Pipeline ---
- name: Publish to GitHub Releases
if: startsWith(github.ref, 'refs/tags/v')
uses: softprops/action-gh-release@v2
with:
files: |
build/bin/release/windower.msi
build/bin/release/windower.zip
build/bin/release/windower.portable.zip
generate_release_notes: true