Skip to content

Commit

Permalink
Rename examples and add workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
GOB52 committed Aug 22, 2024
1 parent 04cc48d commit bb38c46
Show file tree
Hide file tree
Showing 6 changed files with 496 additions and 64 deletions.
118 changes: 118 additions & 0 deletions .github/workflows/ArduinoBuild_2.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
name: ArduinoBuild(platform-version 2.x)

env:
SKETCH_NAMES_FIND_START: ./examples/UnitUnified
REQUIRED_LIBRARIES: M5Unified
# M5UNITUNIFIED_BRANCH: main
M5UNITUNIFIED_BRANCH: develop

on:
push:
paths:
- '**.ino'
- '**.cpp'
- '**.hpp'
- '**.h'
- '**.c'
- '**ArduinoBuild_2.yml'
pull_request:
paths:
- '**.ino'
- '**.cpp'
- '**.hpp'
- '**.h'
- '**.c'
- '**ArduinoBuild_2.yml'
workflow_dispatch:

jobs:
build:
name: ${{ matrix.sketch }}:${{matrix.board}}@${{matrix.platform-version}}
runs-on: ubuntu-latest

strategy:
fail-fast: false
#max-parallel: 1
matrix:
platform-url:
- https://espressif.github.io/arduino-esp32/package_esp32_index.json

sketch:
- PlotToSerial

board:
- m5stack-core-esp32
- m5stack-core2
- m5stack-atoms3
- m5stack-cores3

platform-version:
#- 2.0.15
#- 2.0.16
- 2.0.17

platform:
- esp32

archi:
- esp32

steps:

- name: Running on GitHub Actions
if: env.ACT != 'true'
run: echo "This is running on GitHub Actions."

- name: Running locally with act
if: env.ACT == 'true'
run: echo "This is running locally with act."

- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}

# Checkout library from specific URL and branch
# Note that dependent libraries are not automatically installed.

# - name: Configure git for authentication (Until each repository is published)
# run: |
# git config --global url."https://${{ secrets.TOKEN_M5UNITUNIFIED }}@github.com/".insteadOf "https://github.com/"

- name: Checkout M5Utility
uses: actions/checkout@v3
with:
repository: m5stack/M5Utility
ref: ${{ env.M5UNITUNIFIED_BRANCH }}
path: CustomLibrary_M5Utility # must contain string "Custom"
token: ${{ secrets.TOKEN_M5UNITUNIFIED }} # Only required during development in private repo

- name: Checkout M5HAL
uses: actions/checkout@v3
with:
repository: m5stack/M5HAL
ref: ${{ env.M5UNITUNIFIED_BRANCH }}
path: CustomLibrary_M5HAL # must contain string "Custom"
token: ${{ secrets.TOKEN_M5UNITUNIFIED }} # Only required during development in private repo

- name: Checkout M5UnitUnified
uses: actions/checkout@v3
with:
repository: m5stack/M5UnitUnified
ref: ${{ env.M5UNITUNIFIED_BRANCH }}
path: CustomLibrary_M5UnitUnified
token: ${{ secrets.TOKEN_M5UNITUNIFIED }} # Only required during development in private repo

# 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: ${{ toJson(matrix.build-properties) }}
sketch-names: ${{ matrix.sketch }}.ino
sketch-names-find-start: ${{ env.SKETCH_NAMES_FIND_START }}
#sketches-exclude: ${{ matrix.sketches-exclude }}
124 changes: 124 additions & 0 deletions .github/workflows/ArduinoBuild_3.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
name: ArduinoBuild(platform-version 3.x)

env:
SKETCH_NAMES_FIND_START: ./examples/UnitUnified
REQUIRED_LIBRARIES: M5Unified
# M5UNITUNIFIED_BRANCH: main
M5UNITUNIFIED_BRANCH: develop

on:
push:
paths:
- '**.ino'
- '**.cpp'
- '**.hpp'
- '**.h'
- '**.c'
- '**ArduinoBuild_3.yml'
pull_request:
paths:
- '**.ino'
- '**.cpp'
- '**.hpp'
- '**.h'
- '**.c'
- '**ArduinoBuild_3.yml'
workflow_dispatch:

jobs:
build:
name: ${{ matrix.sketch }}:${{matrix.board}}@${{matrix.platform-version}}
runs-on: ubuntu-latest

strategy:
fail-fast: false
#max-parallel: 1
matrix:
platform-url:
- https://espressif.github.io/arduino-esp32/package_esp32_index.json

sketch:
- PlotToSerial

board:
- m5stack_core
- m5stack_core2
- m5stack_atoms3
- m5stack_cores3
- m5stack_dial
- m5stack_nanoc6
- m5stack_paper
- m5stack_stickc_plus

platform-version:
#- 3.0.0
#- 3.0.1
#- 3.0.2
#- 3.0.3
- 3.0.4

platform:
- esp32

archi:
- esp32

steps:

- name: Running on GitHub Actions
if: env.ACT != 'true'
run: echo "This is running on GitHub Actions."

- name: Running locally with act
if: env.ACT == 'true'
run: echo "This is running locally with act."

- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}

# Checkout library from specific URL and branch
# Note that dependent libraries are not automatically installed.

# - name: Configure git for authentication (Until each repository is published)
# run: |
# git config --global url."https://${{ secrets.TOKEN_M5UNITUNIFIED }}@github.com/".insteadOf "https://github.com/"

- name: Checkout M5Utility
uses: actions/checkout@v3
with:
repository: m5stack/M5Utility
ref: ${{ env.M5UNITUNIFIED_BRANCH }}
path: CustomLibrary_M5Utility # must contain string "Custom"
token: ${{ secrets.TOKEN_M5UNITUNIFIED }} # Only required during development in private repo

- name: Checkout M5HAL
uses: actions/checkout@v3
with:
repository: m5stack/M5HAL
ref: ${{ env.M5UNITUNIFIED_BRANCH }}
path: CustomLibrary_M5HAL # must contain string "Custom"
token: ${{ secrets.TOKEN_M5UNITUNIFIED }} # Only required during development in private repo

- name: Checkout M5UnitUnified
uses: actions/checkout@v3
with:
repository: m5stack/M5UnitUnified
ref: ${{ env.M5UNITUNIFIED_BRANCH }}
path: CustomLibrary_M5UnitUnified
token: ${{ secrets.TOKEN_M5UNITUNIFIED }} # Only required during development in private repo

# 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: ${{ toJson(matrix.build-properties) }}
sketch-names: ${{ matrix.sketch }}.ino
sketch-names-find-start: ${{ env.SKETCH_NAMES_FIND_START }}
#sketches-exclude: ${{ matrix.sketches-exclude }}
108 changes: 108 additions & 0 deletions .github/workflows/PlatformioBuild.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
name: PlatformIOBuild

on:
push:
paths:
- '**.ino'
- '**.cpp'
- '**.hpp'
- '**.h'
- '**.c'
- '**PlatformioBuild.yml'
- '**platformio.ini'
pull_request:
paths:
- '**.ino'
- '**.cpp'
- '**.hpp'
- '**.h'
- '**.c'
- '**PlatformioBuild.yml'
- '**platformio.ini'
workflow_dispatch:

jobs:
build:
name: ${{ matrix.example }}@${{ matrix.board }}:${{ matrix.framework }}:${{ matrix.espressif32 }}

runs-on: ubuntu-latest

strategy:
fail-fast: false
#max-parallel: 1

matrix:
example:
- PlotToSerial

board:
- Core
- Core2
- CoreS3
- StampS3
- AtomS3
- Dial
- NanoC6
- StickCPlus
- Paper
- Fire

framework:
- Arduino

espressif32:
- latest
- '5_4_0'
- '4_4_0'

exclude:
- board: CoreS3
espressif32: '5_4_0'
- board: CoreS3
espressif32: '4_4_0'
- board: StampS3
espressif32: '5_4_0'
- board: StampS3
espressif32: '4_4_0'
- board: AtomS3
espressif32: '5_4_0'
- board: AtomS3
espressif32: '4_4_0'
- board: Dial
espressif32: '5_4_0'
- board: Dial
espressif32: '4_4_0'
- board: NanoC6
espressif32: '5_4_0'
- board: NanoC6
espressif32: '4_4_0'
- board: StickCPlus
espressif32: '5_4_0'
- board: StickCPlus
espressif32: '4_4_0'
- board: Paper
espressif32: '5_4_0'
- board: Paper
espressif32: '4_4_0'

steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}

- name: Configure git for authentication (Until each repository is published)
run: |
git config --global url."https://${{ secrets.TOKEN_M5UNITUNIFIED }}@github.com/".insteadOf "https://github.com/"
- name: Build examples
uses: karniv00l/platformio-run-action@v1
with:
environments: ${{ matrix.example }}_${{ matrix.board }}_${{ matrix.framework }}_${{ matrix.espressif32 }}
#targets:
project-dir: "./"
project-conf: "./platformio.ini"
#jobs: 6
#silent: false
#verbose: truee
#disable-auto-clean: false
9 changes: 9 additions & 0 deletions examples/UnitUnified/PlotToSerial/PlotToSerial.ino
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
/*
* SPDX-FileCopyrightText: 2024 M5Stack Technology CO LTD
*
* SPDX-License-Identifier: MIT
*/
/*
Example using M5UnitUnified for UnitHEART
*/
#include "main/PlotToSerial.cpp"
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
/*
Example using M5UnitUnified for UnitHeart(MAX30100)
Example using M5UnitUnified for UnitHEART
*/

// #define USING_M5HAL // When using M5HAL
Expand Down
Loading

0 comments on commit bb38c46

Please sign in to comment.