3333 - name : Upload Artifact
3434 uses : actions/upload-artifact@v4
3535 with :
36- name : tools-x64- win
36+ name : tools-win-${{ runner.arch }}
3737 path : |
3838 bin/picotool-*-x64-win.zip
3939 bin/pico-sdk-tools-*-x64-win.zip
7575 - name : Upload Artifact
7676 uses : actions/upload-artifact@v4
7777 with :
78- name : tools-mac-arm64
78+ name : tools-mac-${{ runner.arch }}
7979 path : |
8080 bin/picotool-*-mac.zip
8181 bin/pico-sdk-tools-*-mac.zip
@@ -110,7 +110,7 @@ jobs:
110110 - name : Upload Artifact
111111 uses : actions/upload-artifact@v4
112112 with :
113- name : tools-mac-x64
113+ name : tools-mac-${{ runner.arch }}
114114 path : |
115115 bin/openocd-*-mac.zip
116116 bin/riscv-toolchain-*.zip
@@ -129,7 +129,7 @@ jobs:
129129 # os: [[self-hosted, linux, x64], [self-hosted, linux, arm64]]
130130 strategy :
131131 matrix :
132- os : [ubuntu-22.04, [self-hosted, linux, arm64]]
132+ os : [ubuntu-22.04, [self-hosted, linux, arm64, bookworm, 8G ]]
133133 runs-on : ${{ matrix.os }}
134134
135135 steps :
@@ -161,3 +161,59 @@ jobs:
161161 bin/openocd-*-lin.tar.gz
162162 bin/riscv-toolchain-*-lin.tar.gz
163163
164+ test_binaries :
165+ name : Test Binaries
166+ needs : [build_linux, build_macos_arm64, build_windows]
167+ strategy :
168+ fail-fast : false
169+ matrix :
170+ os : [macos_latest, windows_latest, [self-hosted, linux, arm64, bookworm_desktop], [self-hosted, linux, arm64, trixie_desktop]]
171+ runs-on : ${{ matrix.os }}
172+ steps :
173+ - name : Download build (Windows)
174+ if : ${{ runner.os == 'Windows' }}
175+ uses : actions/download-artifact@v5
176+ with :
177+ name : tools-x64-win
178+ - name : Download build (MacOS Arm64)
179+ if : ${{ runner.os == 'macOS' }}
180+ uses : actions/download-artifact@v5
181+ with :
182+ name : tools-mac-arm64
183+ - name : Download build (Linux)
184+ if : ${{ runner.os == 'Linux' }}
185+ uses : actions/download-artifact@v5
186+ with :
187+ name : tools-lin-${{ runner.arch }}
188+
189+ - name : Extract build (zip)
190+ if : ${{ runner.os == 'Windows' }} || ${{ runner.os == 'macOS' }}
191+ shell : bash # Windows only has unzip in bash shell
192+ run : |
193+ unzip openocd*.zip
194+ ls
195+ unzip pico-sdk-tools*.zip
196+ ls
197+ unzip picotool*.zip
198+ ls
199+ unzip riscv-toolchain*.zip
200+ ls
201+ - name : Extract build (tar.gz)
202+ if : ${{ runner.os == 'Linux' }}
203+ run : |
204+ tar -xvf openocd*.tar.gz
205+ ls
206+ tar -xvf pico-sdk-tools*.tar.gz
207+ ls
208+ tar -xvf picotool*.tar.gz
209+ ls
210+ tar -xvf riscv-toolchain*.tar.gz
211+ ls
212+
213+ - name : Test everything runs
214+ run : |
215+ ./picotool/picotool version
216+ ./pioasm/pioasm --version
217+ ./openocd --version
218+ ./bin/riscv32-unknown-elf-gcc --version
219+ ./bin/riscv32-unknown-elf-gdb --version
0 commit comments