mirror of
https://github.com/ivuorinen/hiha-arvio.git
synced 2026-01-26 03:14:00 +00:00
Add comprehensive CI/CD workflows: **Test Workflow (test.yml)** - Runs on push/PR to main/develop - Executes all 189 xUnit tests on Ubuntu runner - Publishes test results and artifacts - Fast and cost-effective validation **Build Workflow (build.yml)** - Builds for iOS and macOS Catalyst - Runs on macOS-14 runners (Apple Silicon) - Parallel builds for all platforms - Uploads build artifacts (7-day retention) - Overall build status reporting **Publish Workflow (publish.yml)** - Triggered by version tags (v*.*.*) - Creates GitHub releases with changelogs - Builds signed releases for distribution - Uploads iOS and macOS .zip artifacts - Supports pre-release detection (alpha/beta/rc) - Manual workflow dispatch option Features: - .NET 8.0 with MAUI workload - Parallel job execution for performance - Artifact management and retention - Test result reporting - Release automation with version tracking - Comprehensive documentation in workflows/README.md Platforms supported: - iOS 15.0+ (iossimulator-arm64) - macOS 12.0+ Catalyst (maccatalyst-arm64) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
48 lines
1.1 KiB
YAML
48 lines
1.1 KiB
YAML
name: Test
|
|
|
|
on:
|
|
push:
|
|
branches: [ main, develop ]
|
|
pull_request:
|
|
branches: [ main, develop ]
|
|
|
|
jobs:
|
|
test:
|
|
name: Run Tests
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup .NET
|
|
uses: actions/setup-dotnet@v4
|
|
with:
|
|
dotnet-version: '8.0.x'
|
|
|
|
- name: Restore dependencies
|
|
run: dotnet restore HihaArvio.sln
|
|
|
|
- name: Build solution
|
|
run: dotnet build HihaArvio.sln --configuration Release --no-restore -f net8.0
|
|
|
|
- name: Run tests
|
|
run: dotnet test HihaArvio.sln --configuration Release --no-build --verbosity normal -f net8.0 --logger "trx;LogFileName=test-results.trx"
|
|
|
|
- name: Publish test results
|
|
uses: dorny/test-reporter@v1
|
|
if: always()
|
|
with:
|
|
name: Test Results
|
|
path: '**/test-results.trx'
|
|
reporter: dotnet-trx
|
|
fail-on-error: true
|
|
|
|
- name: Upload test results
|
|
uses: actions/upload-artifact@v4
|
|
if: always()
|
|
with:
|
|
name: test-results
|
|
path: '**/test-results.trx'
|
|
retention-days: 30
|