Skip to content

Merge pull request #36 from TheEightBot/feature/reactiveui-24-and-win… #90

Merge pull request #36 from TheEightBot/feature/reactiveui-24-and-win…

Merge pull request #36 from TheEightBot/feature/reactiveui-24-and-win… #90

Workflow file for this run

# This workflow will build a .NET project
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net
name: .NET
on:
push:
tags:
- 'v**'
jobs:
build:
runs-on: macos-26
strategy:
matrix:
include:
- name: Stellar
project: Stellar/Stellar.csproj
output: Stellar/bin/Release
- name: Stellar.Maui
project: Stellar.Maui/Stellar.Maui.csproj
output: Stellar.Maui/bin/Release
- name: Stellar.Maui.PopUp
project: Stellar.Maui.PopUp/Stellar.Maui.PopUp.csproj
output: Stellar.Maui.PopUp/bin/Release
- name: Stellar.Blazor
project: Stellar.Blazor/Stellar.Blazor.csproj
output: Stellar.Blazor/bin/Release
- name: Stellar.Avalonia
project: Stellar.Avalonia/Stellar.Avalonia.csproj
output: Stellar.Avalonia/bin/Release
- name: Stellar.FluentValidation
project: Stellar.FluentValidation/Stellar.FluentValidation.csproj
output: Stellar.FluentValidation/bin/Release
- name: Stellar.DiskDataCache
project: Stellar.DiskDataCache/Stellar.DiskDataCache.csproj
output: Stellar.DiskDataCache/bin/Release
- name: Stellar.SourceGenerators
project: Stellar.SourceGenerators/Stellar.SourceGenerators.csproj
output: Stellar.SourceGenerators/bin/Release
# The Windows-targeted projects cross-compile on the macOS runner via
# EnableWindowsTargeting; Stellar.WinUI additionally disables the PRI/MSIX
# tooling on non-Windows hosts in its csproj.
- name: Stellar.Wpf
project: Stellar.Wpf/Stellar.Wpf.csproj
output: Stellar.Wpf/bin/Release
- name: Stellar.WinUI
project: Stellar.WinUI/Stellar.WinUI.csproj
output: Stellar.WinUI/bin/Release
- name: Stellar.Uno
project: Stellar.Uno/Stellar.Uno.csproj
output: Stellar.Uno/bin/Release
steps:
- uses: actions/checkout@v7
- uses: actions/setup-dotnet@v6
with:
dotnet-version: '10.x'
- uses: maxim-lobanov/setup-xcode@v1.7.0
with:
xcode-version: latest-stable
- name: Install MAUI Workloads
run: dotnet workload install maui --ignore-failed-sources
- name: Semver Parse
id: version
uses: release-kit/semver@v2.0.7
- name: Build ${{ matrix.name }}
run: dotnet build ${{ matrix.project }}
- name: Pack ${{ matrix.name }}
run: dotnet pack --configuration Release /p:AssemblyVersion=${{ steps.version.outputs.major }}.${{ steps.version.outputs.minor }}.${{ steps.version.outputs.patch }} /p:Version=${{ steps.version.outputs.major }}.${{ steps.version.outputs.minor }}.${{ steps.version.outputs.patch }} ${{ matrix.project }}
- name: Publish ${{ matrix.name }}
run: dotnet nuget push ${{ matrix.output }}/*.nupkg -k ${{ secrets.NUGET_TOKEN }} -s https://api.nuget.org/v3/index.json