From 38414a8601d67dd5ed733a133ba0abcd74350e7a Mon Sep 17 00:00:00 2001 From: GOB Date: Tue, 15 Jul 2025 19:14:03 +0900 Subject: [PATCH] Add workflow --- .github/workflows/arduino-m5-build-check.yml | 131 +++++++++++++++++++ 1 file changed, 131 insertions(+) create mode 100644 .github/workflows/arduino-m5-build-check.yml diff --git a/.github/workflows/arduino-m5-build-check.yml b/.github/workflows/arduino-m5-build-check.yml new file mode 100644 index 0000000..97cb0e3 --- /dev/null +++ b/.github/workflows/arduino-m5-build-check.yml @@ -0,0 +1,131 @@ +name: Build(arduino-m5stack) + +env: + SKETCH_NAMES_FIND_START: ./examples/UnitUnified + REQUIRED_LIBRARIES: M5Unified,M5UnitUnified,M5Unit-HUB + +on: + push: + tags-ignore: + - '*.*.*' + - 'v*.*.*' + branches: + - '*' + paths: + - 'src/unit/**.cpp' + - 'src/unit/**.hpp' + - 'src/unit/**.h' + - 'src/unit/**.c' + - 'examples/UnitUnified/**.ino' + - 'examples/UnitUnified/**.cpp' + - 'examples/UnitUnified/**.hpp' + - 'examples/UnitUnified/**.h' + - 'examples/UnitUnified/**.c' + - '**arduino-m5-build-check.yml' + pull_request: + paths: + - 'src/unit/**.cpp' + - 'src/unit/**.hpp' + - 'src/unit/**.h' + - 'src/unit/**.c' + - 'examples/UnitUnified/**.ino' + - 'examples/UnitUnified/**.cpp' + - 'examples/UnitUnified/**.hpp' + - 'examples/UnitUnified/**.h' + - 'examples/UnitUnified/**.c' + - '**arduino-m5-build-check.yml' + workflow_dispatch: + +defaults: + run: + shell: bash + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + build: + name: ${{ matrix.unit }}:${{ matrix.sketch }}:${{matrix.board}}@${{matrix.platform-version}} + runs-on: ubuntu-latest + timeout-minutes: 5 + + strategy: + fail-fast: false + max-parallel: 20 + matrix: + platform-url: + - https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json + + sketch: + - PlotToSerial + + unit: + - UnitRF433R + - UnitRF433T + + board: + - m5stack_atom + - m5stack_atoms3 + - m5stack_atoms3r + - m5stack_capsule +# - m5stack_cardputer + - m5stack_core + - m5stack_core2 + - m5stack_coreink + - m5stack_cores3 + - m5stack_dial + - m5stack_dinmeter + - m5stack_fire + - m5stack_paper +# - m5stack_poe_cam +# - m5stack_stamp_c3 +# - m5stack_stamp_pico + - m5stack_stamp_s3 +# - m5stack_station +# - m5stack_stickc + - m5stack_stickc_plus + - m5stack_stickc_plus2 +# - m5stack_timer_cam +# - m5stack_tough +# - m5stack_unit_cam +# - m5stack_unit_cams3 + + platform-version: + - 3.2.1 + + platform: + - m5stack + + archi: + - esp32 + + include: + # Specific sketches + - sketch: Transceiver + platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json + platform: m5stack + archi: esp32 + platform-version: 3.2.1 + board: m5stack_core + + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.head.sha }} + + # Build + - name: Compile examples + uses: ArminJo/arduino-test-compile@master + with: + arduino-board-fqbn: ${{ matrix.platform }}:${{ matrix.archi }}:${{ matrix.board }} + arduino-platform: ${{ matrix.platform }}:${{ matrix.archi }}@${{ matrix.platform-version }} + platform-url: ${{ matrix.platform-url }} + required-libraries: ${{ env.REQUIRED_LIBRARIES }} + extra-arduino-cli-args: ${{ matrix.cli-args }} + #build-properties: ${{ matrix.build-properties }} + sketch-names: ${{ matrix.sketch }}.ino + sketch-names-find-start: ${{ env.SKETCH_NAMES_FIND_START }}/${{ matrix.unit }} + #sketches-exclude: ${{ matrix.sketches-exclude }} +