From f2565d74a2b43a60d4eccdc7fddac30d476e8141 Mon Sep 17 00:00:00 2001 From: per1234 Date: Mon, 2 Aug 2021 12:19:30 -0700 Subject: [PATCH 1/2] Use modern action version in sketch compilation workflow The GitHub Actions action used to do a "smoke test" compilation of the examples has graduated from an "experimental" project to a stable state and been moved from its original home in the `arduino/actions` repository to a dedicated permanent home at `arduino/compile-sketches`. The copy in the previous repository is unmaintained and deprecated and its use results in a warning of such in the workflow run summary and logs. --- .github/workflows/compile-examples.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/compile-examples.yml b/.github/workflows/compile-examples.yml index 5c3693a..232fba3 100644 --- a/.github/workflows/compile-examples.yml +++ b/.github/workflows/compile-examples.yml @@ -199,7 +199,7 @@ jobs: uses: actions/checkout@v2 - name: Compile examples - uses: arduino/actions/libraries/compile-examples@master + uses: arduino/compile-sketches@v1 with: fqbn: ${{ matrix.board.fqbn }} libraries: | From 5b32df99028e5622331fee35dc6ab09c9e6d9595 Mon Sep 17 00:00:00 2001 From: per1234 Date: Mon, 2 Aug 2021 12:29:30 -0700 Subject: [PATCH 2/2] Use modern `arduino/compile-sketches` API The original API of the `arduino/compile-sketches` GitHub Actions action used by the "smoke test" sketch compilation workflow was based on Bash array-style space separated lists. This could not to advanced use cases and so a new approach of defining the data structures in YAML documents and then passing those to the action inputs was settled on. At the time the workflow was written, this had not yet been implemented for the `sketch-paths` input. The old API is now deprecated and so the workflow is here updated to the new API. --- .github/workflows/compile-examples.yml | 80 +++++++++++++------------- 1 file changed, 40 insertions(+), 40 deletions(-) diff --git a/.github/workflows/compile-examples.yml b/.github/workflows/compile-examples.yml index 232fba3..cd265ea 100644 --- a/.github/workflows/compile-examples.yml +++ b/.github/workflows/compile-examples.yml @@ -58,30 +58,30 @@ jobs: - name: CapacitiveSensor # Sketch paths to compile (recursive) for all boards - UNIVERSAL_SKETCH_PATHS: >- - "examples/01.Basics" - "examples/02.Digital/BlinkWithoutDelay" - "examples/02.Digital/Button" - "examples/02.Digital/Debounce" - "examples/02.Digital/DigitalInputPullup" - "examples/02.Digital/StateChangeDetection" - "examples/03.Analog" - "examples/04.Communication/ASCIITable" - "examples/04.Communication/Dimmer" - "examples/04.Communication/Graph" - "examples/04.Communication/Midi" - "examples/04.Communication/PhysicalPixel" - "examples/04.Communication/ReadASCIIString" - "examples/04.Communication/SerialCallResponse" - "examples/04.Communication/SerialCallResponseASCII" - "examples/04.Communication/SerialEvent" - "examples/04.Communication/VirtualColorMixer" - "examples/05.Control" - "examples/06.Sensors/ADXL3xx" - "examples/06.Sensors/Knock" - "examples/07.Display" - "examples/08.Strings" - "examples/11.ArduinoISP" + UNIVERSAL_SKETCH_PATHS: | + - examples/01.Basics + - examples/02.Digital/BlinkWithoutDelay + - examples/02.Digital/Button + - examples/02.Digital/Debounce + - examples/02.Digital/DigitalInputPullup + - examples/02.Digital/StateChangeDetection + - examples/03.Analog + - examples/04.Communication/ASCIITable + - examples/04.Communication/Dimmer + - examples/04.Communication/Graph + - examples/04.Communication/Midi + - examples/04.Communication/PhysicalPixel + - examples/04.Communication/ReadASCIIString + - examples/04.Communication/SerialCallResponse + - examples/04.Communication/SerialCallResponseASCII + - examples/04.Communication/SerialEvent + - examples/04.Communication/VirtualColorMixer + - examples/05.Control + - examples/06.Sensors/ADXL3xx + - examples/06.Sensors/Knock + - examples/07.Display + - examples/08.Strings + - examples/11.ArduinoISP strategy: fail-fast: false @@ -153,8 +153,8 @@ jobs: - name: Keyboard - name: Mouse # Compile these sketches in addition to the ones defined by env.UNIVERSAL_SKETCH_PATHS - usb-sketch-paths: >- - "examples/09.USB" + usb-sketch-paths: | + - examples/09.USB - board: usb: false usb-libraries: "" @@ -162,34 +162,34 @@ jobs: - board: # Boards with a Serial1 port serial1: true - serial1-sketch-paths: >- - "examples/04.Communication/MultiSerial" - "examples/04.Communication/SerialPassthrough" + serial1-sketch-paths: | + - examples/04.Communication/MultiSerial + - examples/04.Communication/SerialPassthrough - board: serial1: false serial1-sketch-paths: "" - board: starter-kit: true - starter-kit-sketch-paths: >- - "examples/10.StarterKit_BasicKit" + starter-kit-sketch-paths: | + - examples/10.StarterKit_BasicKit - board: starter-kit: false starter-kit-sketch-paths: "" - board: tone: true - tone-sketch-paths: >- - "examples/02.Digital/toneKeyboard" - "examples/02.Digital/toneMelody" - "examples/02.Digital/toneMultiple" - "examples/02.Digital/tonePitchFollower" + tone-sketch-paths: | + - examples/02.Digital/toneKeyboard + - examples/02.Digital/toneMelody + - examples/02.Digital/toneMultiple + - examples/02.Digital/tonePitchFollower - board: tone: false tone-sketch-paths: "" - board: pulsein: true - pulsein-sketch-paths: >- - "examples/06.Sensors/Memsic2125" - "examples/06.Sensors/Ping" + pulsein-sketch-paths: | + - examples/06.Sensors/Memsic2125 + - examples/06.Sensors/Ping - board: pulsein: false pulsein-sketch-paths: "" @@ -205,7 +205,7 @@ jobs: libraries: | ${{ env.UNIVERSAL_LIBRARIES }} ${{ matrix.usb-libraries }} - sketch-paths: >- + sketch-paths: | ${{ env.UNIVERSAL_SKETCH_PATHS }} ${{ matrix.usb-sketch-paths }} ${{ matrix.serial1-sketch-paths }}