Skip to content

Commit 50c571a

Browse files
committed
Build static mpy-cross bins
.. for windows, desktop (x86_64) linux, and raspbian
1 parent 31c1b84 commit 50c571a

File tree

1 file changed

+192
-9
lines changed

1 file changed

+192
-9
lines changed

.github/workflows/build.yml

Lines changed: 192 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -36,26 +36,209 @@ jobs:
3636
run: git describe --dirty --always --tags
3737
- name: Build mpy-cross
3838
run: make -C mpy-cross -j2
39+
- name: Build unix port
40+
run: |
41+
make -C ports/unix deplibs -j2
42+
make -C ports/unix -j2
43+
make -C ports/unix coverage -j2
44+
- name: Test all
45+
run: MICROPY_CPYTHON3=python3.5 MICROPY_MICROPYTHON=../ports/unix/micropython_coverage ./run-tests -j1
46+
working-directory: tests
47+
- name: Print failure info
48+
run: |
49+
for exp in *.exp;
50+
do testbase=$(basename $exp .exp);
51+
echo -e "\nFAILURE $testbase";
52+
diff -u $testbase.exp $testbase.out;
53+
done
54+
working-directory: tests
55+
if: failure()
56+
- name: Native Tests
57+
run: MICROPY_CPYTHON3=python3.5 MICROPY_MICROPYTHON=../ports/unix/micropython_coverage ./run-tests -j1 --emit native
58+
working-directory: tests
59+
- name: mpy Tests
60+
run: MICROPY_CPYTHON3=python3.5 MICROPY_MICROPYTHON=../ports/unix/micropython_coverage ./run-tests -j1 --via-mpy -d basics float
61+
working-directory: tests
62+
- name: Docs
63+
run: sphinx-build -E -W -b html . _build/html
64+
- name: Translations
65+
run: make check-translate
66+
- name: New boards check
67+
run: python3 -u ci_new_boards_check.py
68+
working-directory: tools
69+
3970
- name: Build mpy-cross.static-raspbian
4071
run: make -C mpy-cross -j2 -f Makefile.static-raspbian
72+
- uses: actions/[email protected]
73+
with:
74+
name: mpy-cross.static-raspbian
75+
path: mpy-cross/mpy-cross.static-raspbian
76+
4177
- name: Build mpy-cross.static
4278
run: make -C mpy-cross -j2 -f Makefile.static
43-
- name: Build mpy-cross.static-mingw
44-
run: make -C mpy-cross -j2 -f Makefile.static-mingw
45-
4679
- uses: actions/[email protected]
4780
with:
4881
name: mpy-cross.static-amd64-linux
4982
path: mpy-cross/mpy-cross.static
5083

51-
52-
- uses: actions/[email protected]
53-
with:
54-
name: mpy-cross.static-raspbian
55-
path: mpy-cross/mpy-cross.static-raspbian
56-
84+
- name: Build mpy-cross.static-mingw
85+
run: make -C mpy-cross -j2 -f Makefile.static-mingw
5786
- uses: actions/[email protected]
5887
with:
5988
name: mpy-cross.static-x64-windows
6089
path: mpy-cross/mpy-cross.static.exe
6190

91+
build-arm:
92+
runs-on: ubuntu-16.04
93+
needs: test
94+
strategy:
95+
fail-fast: false
96+
matrix:
97+
board:
98+
- "aramcon_badge_2019"
99+
- "arduino_mkr1300"
100+
- "arduino_mkrzero"
101+
- "arduino_nano_33_ble"
102+
- "arduino_zero"
103+
- "bast_pro_mini_m0"
104+
- "capablerobot_usbhub"
105+
- "catwan_usbstick"
106+
- "circuitplayground_bluefruit"
107+
- "circuitplayground_express"
108+
- "circuitplayground_express_crickit"
109+
- "circuitplayground_express_displayio"
110+
- "clue_nrf52840_express"
111+
- "cp32-m4"
112+
- "datalore_ip_m4"
113+
- "datum_distance"
114+
- "datum_imu"
115+
- "datum_light"
116+
- "datum_weather"
117+
- "electronut_labs_blip"
118+
- "electronut_labs_papyr"
119+
- "escornabot_makech"
120+
- "feather_m0_adalogger"
121+
- "feather_m0_basic"
122+
- "feather_m0_express"
123+
- "feather_m0_express_crickit"
124+
- "feather_m0_rfm69"
125+
- "feather_m0_rfm9x"
126+
- "feather_m0_supersized"
127+
- "feather_m4_express"
128+
- "feather_mimxrt1011"
129+
- "feather_mimxrt1062"
130+
- "feather_nrf52840_express"
131+
- "feather_radiofruit_zigbee"
132+
- "feather_stm32f405_express"
133+
- "gemma_m0"
134+
- "grandcentral_m4_express"
135+
- "hallowing_m0_express"
136+
- "hallowing_m4_express"
137+
- "imxrt1010_evk"
138+
- "itsybitsy_m0_express"
139+
- "itsybitsy_m4_express"
140+
- "itsybitsy_nrf52840_express"
141+
- "kicksat-sprite"
142+
- "makerdiary_nrf52840_mdk"
143+
- "makerdiary_nrf52840_mdk_usb_dongle"
144+
- "meowmeow"
145+
- "metro_m0_express"
146+
- "metro_m4_airlift_lite"
147+
- "metro_m4_express"
148+
- "metro_nrf52840_express"
149+
- "mini_sam_m4"
150+
- "monster_m4sk"
151+
- "ndgarage_ndbit6"
152+
- "ohs2020_badge"
153+
- "openbook_m4"
154+
- "particle_argon"
155+
- "particle_boron"
156+
- "particle_xenon"
157+
- "pca10056"
158+
- "pca10059"
159+
- "pewpew10"
160+
- "pewpew_m4"
161+
- "pirkey_m0"
162+
- "pyb_nano_v2"
163+
- "pybadge"
164+
- "pybadge_airlift"
165+
- "pyboard_v11"
166+
- "pygamer"
167+
- "pygamer_advance"
168+
- "pyportal"
169+
- "pyportal_titano"
170+
- "pyruler"
171+
- "robohatmm1_m4"
172+
- "sam32"
173+
- "seeeduino_xiao"
174+
- "serpente"
175+
- "shirtty"
176+
- "snekboard"
177+
- "sparkfun_lumidrive"
178+
- "sparkfun_nrf52840_mini"
179+
- "sparkfun_qwiic_micro_no_flash"
180+
- "sparkfun_qwiic_micro_with_flash"
181+
- "sparkfun_redboard_turbo"
182+
- "sparkfun_samd21_dev"
183+
- "sparkfun_samd21_mini"
184+
- "spresense"
185+
- "stm32f411ce_blackpill"
186+
- "stm32f411ve_discovery"
187+
- "stm32f412zg_discovery"
188+
- "stringcar_m0_express"
189+
- "teknikio_bluebird"
190+
- "trellis_m4_express"
191+
- "trinket_m0"
192+
- "trinket_m0_haxpress"
193+
- "uchip"
194+
- "ugame10"
195+
- "winterbloom_sol"
196+
- "xinabox_cc03"
197+
- "xinabox_cs11"
198+
199+
steps:
200+
- name: Set up Python 3.5
201+
uses: actions/setup-python@v1
202+
with:
203+
python-version: 3.5
204+
- name: Install deps
205+
run: |
206+
sudo apt-get install -y gettext
207+
pip install requests sh click setuptools awscli
208+
wget https://adafruit-circuit-python.s3.amazonaws.com/gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
209+
sudo tar -C /usr --strip-components=1 -xaf gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
210+
- name: Versions
211+
run: |
212+
gcc --version
213+
arm-none-eabi-gcc --version
214+
python3 --version
215+
- uses: actions/checkout@v1
216+
with:
217+
submodules: true
218+
- name: mpy-cross
219+
run: make -C mpy-cross -j2
220+
- name: build
221+
run: python3 -u build_release_files.py
222+
working-directory: tools
223+
env:
224+
BOARDS: ${{ matrix.board }}
225+
- uses: actions/[email protected]
226+
with:
227+
name: ${{ matrix.board }}
228+
path: bin/${{ matrix.board }}
229+
- name: Upload to S3
230+
run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bin/ s3://adafruit-circuit-python/bin/ --recursive --no-progress --region us-east-1"
231+
env:
232+
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
233+
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
234+
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
235+
- name: Install upload deps
236+
run: |
237+
pip install uritemplate
238+
- name: Upload to Release
239+
run: "[ -z \"$ADABOT_GITHUB_ACCESS_TOKEN\" ] || python3 -u upload_release_files.py"
240+
working-directory: tools
241+
env:
242+
UPLOAD_URL: ${{ github.event.release.upload_url }}
243+
ADABOT_GITHUB_ACCESS_TOKEN: ${{ secrets.BLINKA_GITHUB_ACCESS_TOKEN }}
244+
if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested')

0 commit comments

Comments
 (0)