@@ -9,26 +9,65 @@ permissions:
99
1010jobs :
1111 build :
12- runs-on : windows-latest
12+ runs-on : ${{ matrix.os }}
13+
14+ strategy :
15+ fail-fast : false
16+ matrix :
17+ os : ['windows-latest']
18+
19+ env :
20+ SPEC_FILE : ' yasumi.spec'
21+
1322 steps :
1423 - name : Checkout repository
1524 uses : actions/checkout@v4
1625
1726 - name : Set up Python
1827 uses : actions/setup-python@v4
1928 with :
20- python-version : ' 3.10 '
29+ python-version : 3.11.x
2130
22- - name : Install dependencies
31+ - name : Install Python dependencies
2332 run : |
24- python -m pip install --upgrade pip
2533 pip install -r requirements.txt
34+ working-directory : ./
35+
36+ - name : Install PyInstaller
37+ run : |
38+ pip install pyinstaller
39+ working-directory : ./
2640
27- - name : Package Application with PyInstaller
41+ - name : Build executable
2842 run : |
29- python -m pyinstaller yasumi.spec
43+ pyinstaller ${{ env.SPEC_FILE }}
44+
45+ - name : Create Artifact (Windows)
46+ if : matrix.os == 'windows-latest'
47+ uses : actions/upload-artifact@v3
48+ with :
49+ name : windows-executables
50+ path : dist/
51+
52+ - name : Create Artifact (Linux)
53+ if : matrix.os == 'ubuntu-latest'
54+ uses : actions/upload-artifact@v3
55+ with :
56+ name : linux-executables
57+ path : dist/
58+
59+ - name : Create Artifact (macOS)
60+ if : matrix.os == 'macos-latest'
61+ uses : actions/upload-artifact@v3
62+ with :
63+ name : macos-executables
64+ path : dist/
65+
66+ - name : List files in dist folder
67+ run : ls -R ./dist/
3068
3169 - name : Upload Release Asset
70+ if : matrix.os == 'windows-latest'
3271 uses : actions/upload-release-asset@v1
3372 env :
3473 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
0 commit comments