1+ ===== FILE PATH =====
2+ ./.github/workflows/build_release.yml
3+ ===== FILE CONTENT =====
14name : Build and Release
25
36on :
@@ -10,9 +13,15 @@ permissions:
1013jobs :
1114 build :
1215 runs-on : ${{ matrix.os }}
16+ # Global environment variables
17+ env :
18+ # Force Python to use UTF-8 encoding for console output.
19+ # This prevents "UnicodeEncodeError: 'charmap'..." when printing emojis on Windows.
20+ PYTHONUTF8 : 1
21+
1322 strategy :
1423 matrix :
15- # Ubuntu 20.04 daha geniş uyumluluk sağlar
24+ # Ubuntu 20.04 provides better binary compatibility for Linux
1625 os : [ubuntu-20.04, windows-latest]
1726
1827 steps :
@@ -30,29 +39,29 @@ jobs:
3039 pip install -r requirements.txt
3140
3241 # --- LINUX BUILD ---
33- - name : Build (Linux)
42+ - name : Build Application (Linux)
3443 if : matrix.os == 'ubuntu-20.04'
3544 run : python build_linux.py
3645
37- - name : Archive Linux (tar.gz)
46+ - name : Archive Linux Artifact (tar.gz)
3847 if : matrix.os == 'ubuntu-20.04'
3948 run : |
40- # dist/DungeonMasterTool klasörünü sıkıştır
49+ # Compress the dist/DungeonMasterTool folder while preserving permissions
4150 tar -czvf DungeonMasterTool-Linux.tar.gz -C dist DungeonMasterTool
4251
4352 # --- WINDOWS BUILD ---
44- - name : Build (Windows)
53+ - name : Build Application (Windows)
4554 if : matrix.os == 'windows-latest'
4655 run : python build_windows.py
4756
48- - name : Archive Windows (zip)
57+ - name : Archive Windows Artifact (zip)
4958 if : matrix.os == 'windows-latest'
5059 run : |
51- # PowerShell kullanarak zipleme
60+ # Use PowerShell to zip the distribution folder
5261 Compress-Archive -Path dist\DungeonMasterTool -DestinationPath DungeonMasterTool-Windows.zip
5362
54- # --- ARTIFACT BELİRLEME ---
55- - name : Set Artifact Path
63+ # --- ARTIFACT PATH RESOLUTION ---
64+ - name : Determine Artifact Path
5665 id : set_artifact
5766 shell : bash
5867 run : |
6271 echo "path=DungeonMasterTool-Windows.zip" >> $GITHUB_OUTPUT
6372 fi
6473
65- # --- YÜKLEME ( RELEASE UPLOAD) ---
66- - name : Upload Release Asset
74+ # --- RELEASE UPLOAD ---
75+ - name : Upload Release Assets
6776 uses : softprops/action-gh-release@v2
6877 if : startsWith(github.ref, 'refs/tags/')
6978 with :
0 commit comments