Skip to content

Commit 55ef4ec

Browse files
authored
Merge pull request #42 from per1234/portenta-ci
Add Portenta H7 boards to matrix jobs in Compile Examples CI workflow
2 parents 66da3c6 + 93ef165 commit 55ef4ec

File tree

1 file changed

+78
-11
lines changed

1 file changed

+78
-11
lines changed

.github/workflows/compile-examples.yml

Lines changed: 78 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -18,28 +18,95 @@ jobs:
1818

1919
env:
2020
LIBRARIES: Arduino_DebugUtils WiFi101 WiFiNINA MKRGSM MKRNB MKRWAN
21+
ARDUINOCORE_MBED_STAGING_PATH: extras/ArduinoCore-mbed
22+
ARDUINOCORE_API_STAGING_PATH: extras/ArduinoCore-API
2123
strategy:
2224
matrix:
23-
fqbn: [
24-
"arduino:samd:mkr1000",
25-
"arduino:samd:mkrwifi1010",
26-
"arduino:samd:nano_33_iot",
27-
"arduino:samd:mkrgsm1400",
28-
"arduino:samd:mkrnb1500",
29-
"arduino:samd:mkrwan1300",
30-
"arduino:samd:mkrwan1310",
31-
'"esp8266:esp8266:huzzah" "https://arduino.esp8266.com/stable/package_esp8266com_index.json"'
32-
]
25+
board:
26+
- fqbn: "arduino:samd:mkr1000"
27+
platform-name: arduino:samd
28+
- fqbn: "arduino:samd:mkrwifi1010"
29+
platform-name: arduino:samd
30+
- fqbn: "arduino:samd:nano_33_iot"
31+
platform-name: arduino:samd
32+
- fqbn: "arduino:samd:mkrgsm1400"
33+
platform-name: arduino:samd
34+
- fqbn: "arduino:samd:mkrnb1500"
35+
platform-name: arduino:samd
36+
- fqbn: "arduino:samd:mkrwan1300"
37+
platform-name: arduino:samd
38+
- fqbn: "arduino:samd:mkrwan1310"
39+
platform-name: arduino:samd
40+
- fqbn: "arduino-beta:mbed:envie_m7"
41+
platform-name: arduino-beta:mbed
42+
- fqbn: "arduino-beta:mbed:envie_m4"
43+
platform-name: arduino-beta:mbed
44+
- fqbn: "esp8266:esp8266:huzzah"
45+
platform-name: esp8266:esp8266
46+
47+
# Make board type-specific customizations to the matrix jobs
48+
include:
49+
- board:
50+
platform-name: arduino:samd
51+
platforms: |
52+
# Install Arduino SAMD Boards via Boards Manager
53+
- name: arduino:samd
54+
- board:
55+
platform-name: arduino-beta:mbed
56+
platforms: |
57+
# Install Arduino mbed-Enabled Boards via Boards Manager for the toolchain
58+
- name: arduino-beta:mbed
59+
# Overwrite the Arduino mbed-Enabled Boards release version with version from the tip of the default branch (located in local path because of the need to first install ArduinoCore-API)
60+
- source-path: extras/ArduinoCore-mbed
61+
name: arduino-beta:mbed
62+
- board:
63+
platform-name: esp8266:esp8266
64+
platforms: |
65+
# Install ESP8266 platform via Boards Manager
66+
- name: esp8266:esp8266
67+
source-url: https://arduino.esp8266.com/stable/package_esp8266com_index.json
3368
3469
steps:
3570
- uses: actions/checkout@v1
3671
with:
3772
fetch-depth: 1
3873

74+
# It's necessary to checkout the platform before installing it so that the ArduinoCore-API dependency can be added
75+
- name: Checkout ArduinoCore-mbed
76+
# this step only needed when the Arduino mbed-Enabled Boards platform sourced from the repository is being used
77+
if: matrix.board.platform-name == 'arduino-beta:mbed'
78+
uses: actions/checkout@v2
79+
with:
80+
repository: arduino/ArduinoCore-mbed
81+
# The arduino/actions/libraries/compile-examples action will install the platform from this path
82+
path: ${{ env.ARDUINOCORE_MBED_STAGING_PATH }}
83+
84+
- name: Remove ArduinoCore-API symlink from Arduino mbed-Enabled Boards platform
85+
# This step only needed when the Arduino mbed-Enabled Boards platform sourced from the repository is being used
86+
if: matrix.board.platform-name == 'arduino-beta:mbed'
87+
run: rm "${{ env.ARDUINOCORE_MBED_STAGING_PATH }}/cores/arduino/api"
88+
89+
- name: Checkout ArduinoCore-API
90+
# This step only needed when the Arduino mbed-Enabled Boards platform sourced from the repository is being used
91+
if: matrix.board.platform-name == 'arduino-beta:mbed'
92+
uses: actions/checkout@v2
93+
with:
94+
repository: arduino/ArduinoCore-API
95+
# As specified at https://github.com/arduino/ArduinoCore-mbed/blob/master/README.md#installation
96+
ref: namespace_arduino
97+
path: ${{ env.ARDUINOCORE_API_STAGING_PATH }}
98+
99+
- name: Install ArduinoCore-API
100+
# This step only needed when the Arduino mbed-Enabled Boards platform sourced from the repository is being used
101+
if: matrix.board.platform-name == 'arduino-beta:mbed'
102+
run: |
103+
mv "${{ env.ARDUINOCORE_API_STAGING_PATH }}/api" "${{ env.ARDUINOCORE_MBED_STAGING_PATH }}/cores/arduino"
104+
39105
- name: Compile examples
40106
uses: arduino/actions/libraries/compile-examples@master
41107
with:
42-
fqbn: ${{ matrix.fqbn }}
108+
platforms: ${{ matrix.platforms }}
109+
fqbn: ${{ matrix.board.fqbn }}
43110
libraries: ${{ env.LIBRARIES }}
44111
size-report-sketch: 'ConnectionHandlerDemo'
45112
enable-size-deltas-report: 'true'

0 commit comments

Comments
 (0)