Build / build (push) Successful in 36s
Der selbstgehostete Runner laeuft bewusst im User-Modus (kein Admin). actions/setup-dotnet@v4 versucht aber, eine eigene SDK-Kopie nach "C:\Program Files\dotnet" zu installieren, wofuer die Schreibrechte fehlen -- erster Testlauf (#25) ist deshalb dort fehlgeschlagen. Das .NET 8 SDK ist auf dem Runner-Rechner ohnehin schon installiert, der Schritt war nur fuer gehostete/leere Runner noetig. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
37 lines
1.6 KiB
YAML
37 lines
1.6 KiB
YAML
name: Build
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build:
|
|
# Läuft auf dem selbstgehosteten Windows-Runner (siehe README "CI/CD"), im "host"-Modus ohne
|
|
# Docker direkt auf dessen eigener PowerShell/Shell mit dem dort installierten .NET 8 SDK.
|
|
runs-on: windows-latest
|
|
steps:
|
|
- name: Code auschecken
|
|
uses: actions/checkout@v4
|
|
|
|
# Kein actions/setup-dotnet-Schritt: der Runner läuft bewusst im User-Modus (kein Admin), und
|
|
# setup-dotnet versucht, seine eigene SDK-Kopie nach "C:\Program Files\dotnet" zu installieren —
|
|
# dafür fehlen dann die Schreibrechte. Das .NET 8 SDK ist auf diesem Rechner bereits vorhanden.
|
|
- name: .NET-SDK-Version prüfen
|
|
run: dotnet --version
|
|
|
|
# Debug, nicht Release: der interne Demo-Verbindungszugang, den ein Teil der Tests nutzt,
|
|
# existiert per #if DEBUG nur in Debug-Builds (siehe RouterOsClientFactory.cs) — in Release
|
|
# würde der Test einen echten Verbindungsversuch auslösen und in einen Timeout laufen.
|
|
- name: Tests ausführen
|
|
run: dotnet test src/MikrotikInstaller.Core.Tests/MikrotikInstaller.Core.Tests.csproj --configuration Debug
|
|
|
|
- name: Windows-exe veröffentlichen (self-contained, Single-File)
|
|
run: dotnet publish src/MikrotikInstaller.App/MikrotikInstaller.App.csproj --configuration Release --runtime win-x64
|
|
|
|
- name: Build-Ergebnis hochladen
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: MikroTik-Installer-windows-x64
|
|
path: src/MikrotikInstaller.App/bin/Release/net8.0-windows/win-x64/publish/MikroTik-Installer.exe
|