Skip to content

feat: v0.5.1 — Bugfix + Filament-DB + KI-Vision-Suche + Filter-Fix #16

feat: v0.5.1 — Bugfix + Filament-DB + KI-Vision-Suche + Filter-Fix

feat: v0.5.1 — Bugfix + Filament-DB + KI-Vision-Suche + Filter-Fix #16

Workflow file for this run

name: Build Linux + Release
on:
release:
types: [published]
push:
branches: [main]
workflow_dispatch:
permissions:
contents: write
jobs:
build-linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup .NET 10
uses: actions/setup-dotnet@v4
with:
dotnet-version: '10.0.300'
- name: Restore
run: dotnet restore FlipsiForge.slnx
- name: Build (All Projects)
run: dotnet build FlipsiForge.slnx -c Release --no-restore
# === Desktop (Linux portable .tar.gz) ===
- name: Publish Desktop (linux-x64, self-contained)
run: |
dotnet publish src/FlipsiForge.Desktop/FlipsiForge.Desktop.csproj \
-c Release -r linux-x64 --self-contained true \
-p:PublishSingleFile=true -p:PublishTrimmed=false \
-p:IncludeNativeLibrariesForSelfExtract=true \
-o dist/linux-desktop
- name: Create Desktop tar.gz
run: tar -czf dist/FlipsiForge-0.5.1-linux-x64.tar.gz -C dist/linux-desktop .
# === Server Full (linux-x64) ===
- name: Publish Server Full (linux-x64, self-contained)
run: |
dotnet publish src/FlipsiForge.Server/FlipsiForge.Server.csproj \
-c Release -r linux-x64 --self-contained true \
-p:PublishSingleFile=true -p:PublishTrimmed=false \
-p:IncludeNativeLibrariesForSelfExtract=true \
-o dist/linux-server-full
- name: Create Server Full tar.gz
run: tar -czf dist/FlipsiForge-Server-0.5.1-linux-x64-full.tar.gz -C dist/linux-server-full .
# === Server Lite (linux-x64) — ASPNETCORE_ENVIRONMENT=Lite ===
- name: Publish Server Lite (linux-x64, self-contained)
run: |
dotnet publish src/FlipsiForge.Server/FlipsiForge.Server.csproj \
-c Release -r linux-x64 --self-contained true \
-p:PublishSingleFile=true -p:PublishTrimmed=false \
-p:IncludeNativeLibrariesForSelfExtract=true \
-p:ASPNETCORE_ENVIRONMENT=Lite \
-o dist/linux-server-lite
- name: Create Server Lite tar.gz
run: tar -czf dist/FlipsiForge-Server-0.5.1-linux-x64-lite.tar.gz -C dist/linux-server-lite .
# === MockMoonraker ===
- name: Build MockMoonraker
run: |
dotnet publish src/FlipsiForge.MockMoonraker/FlipsiForge.MockMoonraker.csproj \
-c Release -r linux-x64 --self-contained true \
-p:PublishSingleFile=true \
-o dist/linux-mockmoonraker
- name: Create MockMoonraker tar.gz
run: tar -czf dist/FlipsiForge-MockMoonraker-0.5.1-linux-x64.tar.gz -C dist/linux-mockmoonraker .
# === Upload Artifacts (always, for CI debugging) ===
- name: Upload Desktop Artifact
uses: actions/upload-artifact@v4
with:
name: FlipsiForge-Desktop-linux-x64
path: dist/FlipsiForge-0.5.1-linux-x64.tar.gz
- name: Upload Server Full Artifact
uses: actions/upload-artifact@v4
with:
name: FlipsiForge-Server-linux-x64-full
path: dist/FlipsiForge-Server-0.5.1-linux-x64-full.tar.gz
- name: Upload Server Lite Artifact
uses: actions/upload-artifact@v4
with:
name: FlipsiForge-Server-linux-x64-lite
path: dist/FlipsiForge-Server-0.5.1-linux-x64-lite.tar.gz
# === Upload to GitHub Release (nur bei release trigger oder workflow_dispatch) ===
- name: Upload Linux builds to GitHub Release
if: github.event_name == 'release' || github.event_name == 'workflow_dispatch'
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ github.event.release.tag_name || 'v0.5.1' }}
files: |
dist/FlipsiForge-0.5.1-linux-x64.tar.gz
dist/FlipsiForge-Server-0.5.1-linux-x64-full.tar.gz
dist/FlipsiForge-Server-0.5.1-linux-x64-lite.tar.gz
dist/FlipsiForge-MockMoonraker-0.5.1-linux-x64.tar.gz
token: ${{ secrets.GITHUB_TOKEN }}