44 push :
55 tags :
66 - ' v*'
7- - ' V*' # Für Uppercase Tags wie V2.0.8.1
8- - ' [0-9]*' # Für Tags ohne Prefix wie 2.0.7.5
7+ - ' V*'
8+ - ' [0-9]*'
99
1010permissions :
1111 contents : write
1414 build-and-release :
1515 name : Build for ${{ matrix.os }}
1616 runs-on : ${{ matrix.os }}
17+ # FIX 1: Wir zwingen alle Systeme (auch Windows) Bash zu nutzen.
18+ # Das fixt den "ParserError" mit den Backslashes \
19+ defaults :
20+ run :
21+ shell : bash
22+
1723 strategy :
1824 fail-fast : false
1925 matrix :
@@ -44,42 +50,36 @@ jobs:
4450 sudo apt-get install -y libfuse2
4551
4652 - name : Clean Version String
47- shell : bash
4853 run : |
49- # Holt den Tag Name (z.B. "refs/tags/V2.0.8.1")
5054 TAG_NAME=${GITHUB_REF#refs/tags/}
51-
52- # Entfernt führendes 'v' oder 'V' via Regex, falls vorhanden
53- # V2.0.8.1 -> 2.0.8.1
54- # v1.0.0 -> 1.0.0
55- # 2.0.7.5 -> 2.0.7.5
5655 CLEAN_VERSION=$(echo "$TAG_NAME" | sed 's/^[vV]//')
57-
5856 echo "Processing Version: $CLEAN_VERSION"
5957 echo "VERSION=$CLEAN_VERSION" >> $GITHUB_ENV
6058
6159 - name : Publish DotNet
60+ # FIX 2: Pfad zur csproj angepasst!
61+ # Falls dein Repo-Root anders ist, pass "EasyExtractCrossPlatform/" an.
6262 run : |
63- dotnet publish EasyExtractCrossPlatform.csproj \
63+ dotnet publish EasyExtractCrossPlatform/EasyExtractCrossPlatform .csproj \
6464 -c Release \
6565 -r ${{ matrix.rid }} \
6666 --self-contained \
6767 -p:Version=${{ env.VERSION }} \
6868 -o publish_output
6969
70- # --- WINDOWS PACKING (mit .exe) ---
70+ # --- WINDOWS PACKING ---
7171 - name : Pack with Velopack (Windows)
7272 if : runner.os == 'Windows'
7373 run : |
7474 vpk pack -u EasyExtractCrossPlatform -v ${{ env.VERSION }} -p publish_output -o release_output --mainExe EasyExtractCrossPlatform.exe
7575
76- # --- LINUX PACKING (ohne .exe) ---
76+ # --- LINUX PACKING ---
7777 - name : Pack with Velopack (Linux)
7878 if : runner.os == 'Linux'
7979 run : |
8080 vpk pack -u EasyExtractCrossPlatform -v ${{ env.VERSION }} -p publish_output -o release_output --mainExe EasyExtractCrossPlatform
8181
82- # --- MAC PACKING (ohne .exe) ---
82+ # --- MAC PACKING ---
8383 - name : Pack with Velopack (macOS)
8484 if : runner.os == 'macOS'
8585 run : |
9090 if : startsWith(github.ref, 'refs/tags/')
9191 with :
9292 files : release_output/*
93- draft : true # Erstellt Release als Entwurf (User sehen es noch nicht)
94- generate_release_notes : true # Generiert automatisch Changelog aus Commits
93+ draft : true
94+ generate_release_notes : true
9595 env :
96- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
96+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
0 commit comments