1
+ name : release
2
+ on :
3
+ push :
4
+ tags :
5
+ - " v[0-9]+.[0-9]+.[0-9]+"
6
+ env :
7
+ PYTHON_VERSION : " 3.11"
8
+ PROGRAM_ENTRYPOINT : ' src/app.py'
9
+ EXECUTABLE_NAME : ' hackernewsd'
10
+ BUILD_OUTPUT_PATH : ' dist'
11
+
12
+ jobs :
13
+ build-windows :
14
+ runs-on : windows-2019
15
+ steps :
16
+ - name : Checkout
17
+ uses : actions/checkout@v1
18
+ - name : Install Python
19
+ uses : actions/setup-python@v1
20
+ with :
21
+ python-version : ${{ env.PYTHON_VERSION }}
22
+ architecture : ' x64'
23
+ - name : Install requirements
24
+ run : pip install -r requirements.txt
25
+ - name : Run PyInstaller
26
+ run : pyinstaller --noconsole --onefile --name=${{ env.EXECUTABLE_NAME }} ${{ env.PROGRAM_ENTRYPOINT }}
27
+ # - uses: actions/upload-artifact@v2
28
+ # with:
29
+ # name: Windows_qwiklabs
30
+ # path: dist/qwiklab_badge_checker.exe
31
+
32
+ - name : ZIP release artifact Windows
33
+ run : echo $(pwd); echo $(find . -type d); cd ${{ env.BUILD_OUTPUT_PATH }}; zip -r ../${{ env.EXECUTABLE_NAME }}-${{ steps.version.outputs.version }}-win64.zip ./
34
+
35
+ - name : GitHub release
36
+ uses : actions/create-release@v1
37
+ id : release
38
+ env :
39
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
40
+ with :
41
+ release_name : ${{ steps.version.outputs.version }}
42
+ tag_name : ${{ github.ref }}
43
+ body : ' '
44
+ draft : false
45
+ prerelease : false
46
+
47
+ - name : GitHub release assets Windows
48
+ uses : actions/upload-release-asset@v1
49
+ id : release_assets_2
50
+ env :
51
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
52
+ with :
53
+ upload_url : ${{ steps.release.outputs.upload_url }}
54
+ asset_path : ${{ env.BUILD_OUTPUT_PATH }}/../${{ env.EXECUTABLE_NAME }}-${{ steps.version.outputs.version }}-win64.zip
55
+ asset_name : ${{ env.EXECUTABLE_NAME }}-${{ steps.version.outputs.version }}-win64.zip
56
+ asset_content_type : application/zip
0 commit comments