Skip to content

Merge branch 'develop' #29

Merge branch 'develop'

Merge branch 'develop' #29

name: Build(arduino-m5stack)
env:
SKETCH_NAMES_FIND_START: ./examples/UnitUnified
REQUIRED_LIBRARIES: M5Unified,M5UnitUnified
on:
push:
tags-ignore:
- '*.*.*'
- 'v*.*.*'
branches:
- '*'
paths:
- 'src/**.cpp'
- 'src/**.hpp'
- 'src/**.h'
- 'src/**.c'
- 'examples/UnitUnified/**.ino'
- 'examples/UnitUnified/**.cpp'
- 'examples/UnitUnified/**.hpp'
- 'examples/UnitUnified/**.h'
- 'examples/UnitUnified/**.c'
- '.github/workflows/arduino-m5-build-check.yml'
pull_request:
paths:
- 'src/**.cpp'
- 'src/**.hpp'
- 'src/**.h'
- 'src/**.c'
- 'examples/UnitUnified/**.ino'
- 'examples/UnitUnified/**.cpp'
- 'examples/UnitUnified/**.hpp'
- 'examples/UnitUnified/**.h'
- 'examples/UnitUnified/**.c'
- '.github/workflows/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: 12
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:
- UnitFinger
- UnitFinger2
board:
- arduino_nesso_n1
- 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_nano_c6
- m5stack_paper
- m5stack_papers3
- m5stack_stamp_s3
- m5stack_stickc
- m5stack_stickc_plus
- m5stack_stickc_plus2
- m5stack_sticks3
- m5stack_tab5
platform-version:
- 3.2.5
platform:
- m5stack
archi:
- esp32
include:
# Specific sketches
- sketch: Capture
unit: UnitFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_core
- sketch: Characteristic
unit: UnitFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_core
- sketch: User
unit: UnitFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_core
# HatFinger
- sketch: PlotToSerial
unit: HatFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_stickc_plus
- sketch: PlotToSerial
unit: HatFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_stickc_plus2
- sketch: PlotToSerial
unit: HatFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_sticks3
- sketch: PlotToSerial
unit: HatFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_coreink
- sketch: Capture
unit: HatFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_stickc_plus2
- sketch: Characteristic
unit: HatFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_stickc_plus2
- sketch: User
unit: HatFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_stickc_plus2
# FacesFinger (M-Bus, Core/Fire only)
- sketch: PlotToSerial
unit: FacesFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_core
- sketch: PlotToSerial
unit: FacesFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_fire
- sketch: Capture
unit: FacesFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_core
- sketch: Characteristic
unit: FacesFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_core
- sketch: User
unit: FacesFinger
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_core
# UnitFinger2 extra sketches
- sketch: Capture
unit: UnitFinger2
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_core
- sketch: Automatic
unit: UnitFinger2
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_core
- sketch: User
unit: UnitFinger2
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
platform: m5stack
archi: esp32
platform-version: 3.2.5
board: m5stack_core
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Prepare libraries list
id: libs
run: |
{
echo "yaml<<EOF"
echo "$REQUIRED_LIBRARIES" | tr ',' '\n' | while read -r lib; do
echo "- name: $lib"
done
echo "- source-path: ./"
echo "EOF"
} >> "$GITHUB_OUTPUT"
- name: Compile examples
uses: arduino/compile-sketches@v1
with:
fqbn: ${{ matrix.platform }}:${{ matrix.archi }}:${{ matrix.board }}
platforms: |
- name: ${{ matrix.platform }}:${{ matrix.archi }}
source-url: ${{ matrix.platform-url }}
version: ${{ matrix.platform-version }}
libraries: ${{ steps.libs.outputs.yaml }}
sketch-paths: |
- ${{ env.SKETCH_NAMES_FIND_START }}/${{ (matrix.unit == 'HatFinger' || matrix.unit == 'FacesFinger') && 'UnitFinger' || matrix.unit }}/${{ matrix.sketch }}
cli-compile-flags: |
- --build-property
- build.extra_flags=${{ matrix.unit == 'HatFinger' && '-DUSING_HAT_FINGER' || (matrix.unit == 'FacesFinger' && '-DUSING_FACES_FINGER' || (matrix.unit == 'UnitFinger' && '-DUSING_UNIT_FINGER' || '')) }}