Skip to content

Commit 5c07dcd

Browse files
committed
add a compile check action
1 parent 152ce07 commit 5c07dcd

File tree

1 file changed

+127
-0
lines changed

1 file changed

+127
-0
lines changed

.github/workflows/compile-sketch.yml

+127
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
name: Cross-compilation
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
9+
10+
jobs:
11+
compile-sketch:
12+
runs-on: ubuntu-latest
13+
14+
strategy:
15+
fail-fast: false
16+
17+
matrix:
18+
board:
19+
# Uno
20+
# https://github.com/arduino/ArduinoCore-avr/blob/master/boards.txt
21+
- fqbn: arduino:avr:mega
22+
# platforms: |
23+
name: arduino:avr
24+
source-url: https://downloads.arduino.cc/packages/package_index.json
25+
26+
# ESP32
27+
# https://github.com/espressif/arduino-esp32/blob/master/boards.txt
28+
- fqbn: esp32:esp32:esp32
29+
# platforms: |
30+
name: esp32:esp32
31+
source-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
32+
33+
# ESP32-S2
34+
# https://github.com/espressif/arduino-esp32/blob/master/boards.txt
35+
- fqbn: esp32:esp32:esp32s2
36+
# platforms: |
37+
name: esp32:esp32
38+
source-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
39+
40+
# ESP32-C3
41+
# https://github.com/espressif/arduino-esp32/blob/master/boards.txt
42+
- fqbn: esp32:esp32:esp32c3
43+
# platforms: |
44+
name: esp32:esp32
45+
source-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
46+
47+
# Artemis / Apollo3
48+
# https://github.com/sparkfun/Arduino_Apollo3/blob/main/boards.txt
49+
- fqbn: SparkFun:apollo3:sfe_artemis_atp
50+
# platforms: |
51+
name: SparkFun:apollo3
52+
source-url: https://raw.githubusercontent.com/sparkfun/Arduino_Apollo3/master/package_sparkfun_apollo3_index.json
53+
54+
# ESP8266
55+
# https://github.com/esp8266/Arduino/blob/master/boards.txt
56+
- fqbn: esp8266:esp8266:thingdev
57+
# platforms: |
58+
name: esp8266:esp8266
59+
source-url: https://arduino.esp8266.com/stable/package_esp8266com_index.json
60+
61+
# SAMD21
62+
# https://github.com/arduino/ArduinoCore-samd/blob/master/boards.txt
63+
- fqbn: arduino:samd:mkr1000
64+
# platforms: |
65+
name: arduino:samd
66+
source-url: https://downloads.arduino.cc/packages/package_index.json
67+
68+
# Nano BLE 33 / nRF52840
69+
# https://github.com/arduino/ArduinoCore-mbed/blob/master/boards.txt
70+
- fqbn: arduino:mbed:nano33ble
71+
# platforms: |
72+
name: arduino:mbed
73+
source-url: https://downloads.arduino.cc/packages/package_index.json
74+
75+
# RP2040
76+
# https://github.com/arduino/ArduinoCore-mbed/blob/master/boards.txt
77+
- fqbn: rp2040:rp2040:sparkfun_promicrorp2040
78+
# platforms: |
79+
name: rp2040:rp2040
80+
source-url: https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
81+
82+
# RP2350
83+
# https://github.com/arduino/ArduinoCore-mbed/blob/master/boards.txt
84+
- fqbn: rp2040:rp2040:sparkfun_promicrorp2350
85+
# platforms: |
86+
name: rp2040:rp2040
87+
source-url: https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
88+
89+
# STM32
90+
# https://github.com/arduino/ArduinoCore-mbed/blob/master/boards.txt
91+
- fqbn: STMicroelectronics:stm32:GenF4
92+
# platforms: |
93+
name: STMicroelectronics:stm32
94+
source-url: https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json
95+
96+
steps:
97+
- name: Checkout
98+
uses: actions/checkout@v3
99+
100+
- name: Branch name
101+
run: echo running on branch ${GITHUB_REF##*/}
102+
103+
# Setup Arduino command line - install esp32 and all the libs flux needs
104+
- name: Arduino - Install and setup the Arduino CLI
105+
uses: arduino/setup-arduino-cli@v2
106+
107+
- name: Arduino - Start config file
108+
run: arduino-cli config init --additional-urls ${{ matrix.board.source-url}}
109+
110+
- name: Arduino - Update index
111+
run: arduino-cli core update-index
112+
113+
- name: Arduino - Install platform
114+
run: arduino-cli core install ${{ matrix.board.name}}
115+
116+
- name: Arduino - Install libraries
117+
run: |
118+
arduino-cli config set library.enable_unsafe_install true
119+
arduino-cli version
120+
arduino-cli lib install 'SparkFun Toolkit'
121+
122+
- name: Compile Sketch
123+
run: arduino-cli compile --fqbn ${{ matrix.board.fqbn }} examples/Example_01_Buzz --library .
124+
125+
# outputs:
126+
# report-artifact-name: ${{ steps.report-artifact-name.outputs.report-artifact-name }}
127+

0 commit comments

Comments
 (0)