77 branches :
88 - main
99 - feat/pyinstaller
10+ - task/bundling
1011
1112env :
1213 MICROPYTHON_PICO_UF2_URL : https://micropython.org/resources/firmware/RPI_PICO-20241129-v1.24.1.uf2
@@ -16,7 +17,10 @@ permissions:
1617
1718jobs :
1819 build_rfunit :
19- runs-on : windows-latest
20+ strategy :
21+ matrix :
22+ os : [ubuntu-latest, windows-latest, macos-latest]
23+ runs-on : ${{ matrix.os }}
2024 steps :
2125 - name : Checkout code
2226 uses : actions/checkout@v6
@@ -30,88 +34,38 @@ jobs:
3034 run : |
3135 IWR -OutFile micropython_pico.uf2 -Uri ${{ env.MICROPYTHON_PICO_UF2_URL }}
3236
33- - name : Install PyInstaller
34- run : |
35- pip install pyinstaller pyserial tqdm
37+ - name : Install the latest version of uv
38+ uses : astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57 # v8.0.0
3639
3740 - name : Build executable
3841 run : |
39- pyinstaller micropython_rfunit.spec
40-
41- - name : Rename README
42- run : |
43- cp README_easy.txt README.txt
42+ uv run pyinstaller pyinstaller.spec
4443
4544 - name : Upload artifacts
4645 uses : actions/upload-artifact@v6
4746 with :
48- name : build-artifacts-rfunit
47+ name : rfunit-tools-${{ matrix.os }}
4948 path : |
5049 dist/
5150 LICENSE
5251 CREDITS
53- README.txt
52+ README.md
53+ QUICKSTART_PICO.txt
5454 pi_pico_diagram_phat.png
5555 pi_pico_diagram_one_s.png
5656 micropython_pico.uf2
5757
58- build_vpe :
59- runs-on : windows-latest
60- defaults :
61- run :
62- working-directory : editor
63- steps :
64- - name : Checkout code
65- uses : actions/checkout@v6
66-
67- - name : Setup Python
68- uses : actions/setup-python@v6
69- with :
70- python-version : ' 3.14'
71-
72- - name : Install PyInstaller and deps
73- run : |
74- pip install -r requirements.txt
75-
76- - name : Build executable
77- run : |
78- pyinstaller vpe_gui.spec
79-
80- - name : Upload artifacts
81- uses : actions/upload-artifact@v6
82- with :
83- name : build-artifacts-vpe
84- path : |
85- editor/dist/*
86-
8758 release :
8859 runs-on : ubuntu-latest
89- needs : [ build_rfunit,build_vpe]
60+ needs : build_rfunit
9061 if : startsWith(github.ref, 'refs/tags/')
9162 steps :
9263 - name : Download artifacts
9364 uses : actions/download-artifact@v6
94- with :
95- name : build-artifacts-rfunit
96-
97- - name : Download artifacts
98- uses : actions/download-artifact@v6
99- with :
100- name : build-artifacts-vpe
10165
10266 - name : Create release zip
10367 run : |
104- mkdir release
105- cp LICENSE release/
106- cp CREDITS release/
107- cp dist/* release/
108- cp README.txt release/
109- cp pi_pico_diagram_phat.png release/
110- cp pi_pico_diagram_one_s.png release/
111- cp micropython_pico.uf2 release/
112- cd release
113- 7z a ../rfunit-win64-${{ github.ref_name }}.zip *
114- cd ..
68+ for DIR in *; do 7z a ../${DIR}-${{ github.ref_name }}.zip *; done
11569
11670 - name : Create release
11771 uses : softprops/action-gh-release@v2
12175 name : Release ${{ github.ref_name }}
12276 generate_notes : false
12377 files : |
124- rfunit- *.zip
78+ *.zip
0 commit comments