-
Notifications
You must be signed in to change notification settings - Fork 52
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
CI by compiling all examples with github action (#221)
* ci by compiling the examples compile the examples, and simple fix for A0 pin on BW16 Still some errors remain! * Add missing libs AmebaEink and AmebaMotors Add the missing libs * CI with all boards and selected examples This runs all boards and nearly all examples. * Update compile-examples.yml * lower case variant for u-blox_nora_w30 * Update BasicInputOutput.ino/ WiFiWebServer.ino for other boards * Update the CI github action - rename the yml file - add dev and master branch supports - add weekly automation run - update the examples-to-use - revert files for minimal changes - add IR pin check for API - add default pin mapping as NC if not supported by boards - update nora-w30 variant.h
- Loading branch information
1 parent
4918cdc
commit 3a58073
Showing
8 changed files
with
184 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,145 @@ | ||
name: Compile Examples | ||
|
||
on: | ||
pull_request: | ||
paths: | ||
- ".github/workflows/CI_compile_examples.yml" | ||
- "Arduino_package/hardware/libraries/**" | ||
- "Arduino_package/hardware/cores/**" | ||
- "Arduino_package/hardware/variants/**" | ||
push: | ||
paths: | ||
- ".github/workflows/CI_compile_examples.yml" | ||
- "Arduino_package/hardware/libraries/**" | ||
- "Arduino_package/hardware/cores/**" | ||
- "Arduino_package/hardware/variants/**" | ||
# workflow_dispatch event allows the workflow to be triggered manually | ||
# See: https://docs.github.com/en/actions/reference/events-that-trigger-workflows#workflow_dispatch | ||
workflow_dispatch: | ||
# repository_dispatch event allows the workflow to be triggered via the GitHub API | ||
# See: https://docs.github.com/en/actions/reference/events-that-trigger-workflows#repository_dispatch | ||
repository_dispatch: | ||
# weekly, Monday, 12 00 AM | ||
schedule: | ||
- cron: '0 12 * * 1' | ||
|
||
jobs: | ||
compile-examples_ubuntu: | ||
# same name as the fqbn (without the platform-name): | ||
name: ${{ matrix.board.fqbn }} | ||
runs-on: ubuntu-latest | ||
|
||
# list of all examples, WiFiControlCar and BW16_RGB_LED are left out | ||
env: | ||
examples-to-use: | | ||
- Arduino_package/hardware/libraries/Analog | ||
- Arduino_package/hardware/libraries/AudioCodec | ||
- Arduino_package/hardware/libraries/BLE | ||
- Arduino_package/hardware/libraries/Debugging | ||
- Arduino_package/hardware/libraries/FatfsSDIO | ||
- Arduino_package/hardware/libraries/FlashMemory | ||
- Arduino_package/hardware/libraries/GPIO | ||
- Arduino_package/hardware/libraries/GTimer | ||
- Arduino_package/hardware/libraries/Http | ||
- Arduino_package/hardware/libraries/IRDevice | ||
- Arduino_package/hardware/libraries/MDNS | ||
- Arduino_package/hardware/libraries/MQTTClient | ||
- Arduino_package/hardware/libraries/NTPClient | ||
- Arduino_package/hardware/libraries/OTA | ||
- Arduino_package/hardware/libraries/PowerSave | ||
#- Arduino_package/hardware/libraries/Preferences | ||
- Arduino_package/hardware/libraries/RTC | ||
- Arduino_package/hardware/libraries/SoftwareSerial | ||
- Arduino_package/hardware/libraries/SPI | ||
- Arduino_package/hardware/libraries/Sys | ||
- Arduino_package/hardware/libraries/USB | ||
- Arduino_package/hardware/libraries/Watchdog | ||
- Arduino_package/hardware/libraries/WiFi/examples/ConcurrentMode | ||
- Arduino_package/hardware/libraries/WiFi/examples/ConnectWithWiFi | ||
- Arduino_package/hardware/libraries/WiFi/examples/HTTP_IFTTT_Post | ||
- Arduino_package/hardware/libraries/WiFi/examples/IPv6TCPClient | ||
- Arduino_package/hardware/libraries/WiFi/examples/IPv6TCPServer | ||
- Arduino_package/hardware/libraries/WiFi/examples/IPv6UDPClient | ||
- Arduino_package/hardware/libraries/WiFi/examples/IPv6UDPServer | ||
- Arduino_package/hardware/libraries/WiFi/examples/ScanNetworks | ||
- Arduino_package/hardware/libraries/WiFi/examples/SimpleServerWiFi | ||
- Arduino_package/hardware/libraries/WiFi/examples/SimpleWebServerWiFi | ||
- Arduino_package/hardware/libraries/WiFi/examples/UDP_Calculation | ||
- Arduino_package/hardware/libraries/WiFi/examples/WiFiAPMode | ||
#- Arduino_package/hardware/libraries/WiFi/examples/WiFiControlCar | ||
- Arduino_package/hardware/libraries/WiFi/examples/WiFiSSLClient | ||
- Arduino_package/hardware/libraries/WiFi/examples/WiFiUdpNtpClient | ||
- Arduino_package/hardware/libraries/WiFi/examples/WiFiUdpSendReceiveString | ||
- Arduino_package/hardware/libraries/WiFi/examples/WiFiWebClient | ||
- Arduino_package/hardware/libraries/WiFi/examples/WiFiWebServer | ||
- Arduino_package/hardware/libraries/Wire | ||
- Arduino_package/hardware/libraries/WS2812B | ||
strategy: | ||
fail-fast: false | ||
|
||
matrix: | ||
board: | ||
- fqbn: Ameba_AMB21_AMB22 | ||
- fqbn: Ameba_AMB23 | ||
- fqbn: Ai-Thinker_BW16 | ||
- fqbn: SparkFun_ThingPlus-AWCU488 | ||
- fqbn: Ameba_AMB25 | ||
- fqbn: Ameba_AMB26 | ||
- fqbn: u-blox_NORA-W30 | ||
|
||
steps: | ||
- name: Exit workflow (other branches) | ||
run: exit 1 | ||
if: ${{ github.ref != 'refs/heads/master' && github.ref != 'refs/heads/dev' }} | ||
|
||
- name: Checkout repository | ||
uses: actions/checkout@v4 | ||
with: | ||
sparse-checkout: | | ||
Arduino_package | ||
Arduino_zip_libraries | ||
- name: Compile examples dev | ||
uses: arduino/compile-sketches@main | ||
with: | ||
fqbn: realtek:AmebaD:${{ matrix.board.fqbn }} | ||
sketch-paths: | | ||
${{ env['examples-to-use'] }} | ||
platforms: | | ||
# Install ambd_arduino via Boards Manager for the toolchain | ||
- source-url: https://github.com/ambiot/ambd_arduino/raw/dev/Arduino_package/package_realtek_amebad_early_index.json | ||
name: realtek:AmebaD | ||
# Overwrite the ambd_arduino release version with the platform from the local path | ||
- source-path: Arduino_package/hardware/ | ||
name: realtek:AmebaD | ||
libraries: | | ||
# The sketches typically don't have any external library dependencies, just some: | ||
- source-url: https://github.com/ambiot/ambd_arduino/raw/dev/Arduino_zip_libraries/AmebaMotors.zip | ||
- source-url: https://github.com/ambiot/ambd_arduino/raw/dev/Arduino_zip_libraries/AmebaEink.zip | ||
- name: "SparkFun ADXL313 Arduino Library" | ||
verbose: false | ||
enable-deltas-report: false | ||
if: github.ref == 'refs/heads/dev' | ||
|
||
- name: Compile examples master | ||
uses: arduino/compile-sketches@main | ||
with: | ||
fqbn: realtek:AmebaD:${{ matrix.board.fqbn }} | ||
sketch-paths: | | ||
${{ env['examples-to-use'] }} | ||
platforms: | | ||
# Install ambd_arduino via Boards Manager for the toolchain | ||
- source-url: https://github.com/ambiot/ambd_arduino/raw/master/Arduino_package/package_realtek_amebad_index.json | ||
name: realtek:AmebaD | ||
# Overwrite the ambd_arduino release version with the platform from the local path | ||
- source-path: Arduino_package/hardware/ | ||
name: realtek:AmebaD | ||
libraries: | | ||
# The sketches typically don't have any external library dependencies, just some: | ||
- source-url: https://github.com/ambiot/ambd_arduino/raw/master/Arduino_zip_libraries/AmebaMotors.zip | ||
- source-url: https://github.com/ambiot/ambd_arduino/raw/master/Arduino_zip_libraries/AmebaEink.zip | ||
- name: "SparkFun ADXL313 Arduino Library" | ||
verbose: false | ||
enable-deltas-report: false | ||
if: github.ref == 'refs/heads/master' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters