forked from arduino/ArduinoCore-megaavr
-
Notifications
You must be signed in to change notification settings - Fork 0
117 lines (104 loc) · 3.97 KB
/
compile-examples.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
name: Compile Examples
on: [pull_request, push]
jobs:
compile-test:
runs-on: ubuntu-latest
env:
# libraries to install for all boards
UNIVERSAL_LIBRARIES: '"MFRC522" "Servo" "LiquidCrystal"'
# sketch paths to compile (recursive) for all boards
UNIVERSAL_SKETCH_PATHS: |
- extras/examples
- libraries/Wire
- libraries/SPI
- libraries/SoftwareSerial
- libraries/EEPROM
- ~/Arduino/libraries/Servo/examples
- ~/Arduino/libraries/LiquidCrystal/examples
- ~/Arduino/libraries/MFRC522/examples
- ~/Arduino/libraries/Ethernet/examples
- ~/Arduino/libraries/Arduino_LSM9DS1/examples
- ~/Arduino/libraries/SD/examples
- ~/Arduino/libraries/Arduino_JSON/examples
- ~/Arduino/libraries/WiFi/examples
strategy:
fail-fast: false
matrix:
board: [
{"fqbn": "arduino:megaavr:uno2018", "type": "unoWiFiRev2"},
{"fqbn": "arduino:megaavr:nona4809", "type": "nanoEvery"}
]
steps:
- name: Checkout repository
uses: actions/checkout@v2
# The source files are in a subfolder of the ArduinoCore-API repository, so it's not possible to clone it directly to the final destination in the core
- name: Checkout ArduinoCore-API
uses: actions/checkout@v2
with:
repository: arduino/ArduinoCore-API
path: extras/ArduinoCore-API
- name: Install ArduinoCore-API
run: mv "$GITHUB_WORKSPACE/extras/ArduinoCore-API/api" "$GITHUB_WORKSPACE/cores/arduino"
- name: Checkout Adafruit WiFiNINA
uses: actions/checkout@v2
with:
repository: adafruit/WiFiNINA
path: adafruit/WiFiNINA
- name: Checkout Basic examples
uses: actions/checkout@v2
with:
repository: arduino/arduino-examples
path: extras
- name: Delete incompatible examples
run: rm -r "$GITHUB_WORKSPACE/extras/examples/09.USB" && rm -r "$GITHUB_WORKSPACE/extras/examples/10.StarterKit_BasicKit/p11_CrystalBall" && rm -r "$GITHUB_WORKSPACE/extras/examples/10.StarterKit_BasicKit/p13_TouchSensorLamp"
- name: Compile examples
uses: arduino/actions/libraries/compile-examples@master
with:
fqbn: ${{ matrix.board.fqbn }}
libraries: |
- name: Adafruit IO Arduino
- name: Adafruit MQTT Library
- name: ArduinoHttpClient
- name: Adafruit FONA Library
- name: MegunoLink
- name: Servo
- name: LiquidCrystal
- name: MFRC522
- name: Ethernet
- name: ArduinoBearSSL
- name: Arduino_LSM9DS1
- name: ArduinoHttpClient
- name: NTPClient
- name: TFT
- name: ArduinoMqttClient
- name: Arduino_CRC32
- name: Arduino_LSM6DS3
- name: Stepper
- name: SD
- name: Arduino_JSON
- name: Arduino_HTS221
- name: Firmata
- name: ArduinoCloudThing
- name: Arduino_DebugUtils
- name: Arduino_LPS22HB
- name: ArduinoIoTCloudBearSSL
- name: ArduinoDMX
- name: ArduinoRS485
- name: Arduino_OAuth
- name: WiFi
- name: Bridge
- name: Temboo
platforms: |
# Use Board Manager to install the latest release of Arduino megaAVR Boards to get the toolchain
- name: "arduino:megaavr"
# Overwrite the Board Manager installation with the local platform
- source-path: "./"
name: "arduino:megaavr"
sketch-paths: "${{ env.UNIVERSAL_SKETCH_PATHS }}"
enable-size-deltas-report: 'true'
verbose: 'true'
- name: Save memory usage change report as artifact
uses: actions/upload-artifact@v1
with:
name: size-deltas-reports
path: size-deltas-reports