Merge branch 'develop' #29
This file contains hidden or 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
| name: Build(platformio) | |
| 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/platformio-build-check.yml' | |
| - 'platformio.ini' | |
| 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/platformio-build-check.yml' | |
| - 'platformio.ini' | |
| workflow_dispatch: | |
| defaults: | |
| run: | |
| shell: bash | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| name: ${{ matrix.example }}@${{ matrix.board }}:${{ matrix.framework }}:${{ matrix.espressif32 }} | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 12 | |
| strategy: | |
| fail-fast: false | |
| max-parallel: 20 | |
| matrix: | |
| example: | |
| - NFCA_Detect | |
| - NFCB_Detect | |
| # Build CI board axis = distinct compile config only (skill m5-build-ci-matrix). | |
| # I2C path is a runtime M5.getBoard() branch (same compile for all boards), so | |
| # only one board per compile config is kept; variant-header siblings are commented out. | |
| board: | |
| - Core # espressif32 x ESP32 (xtensa-esp32) | |
| - CoreS3 # espressif32 x ESP32-S3 (xtensa-esp32s3, separate GCC target) | |
| - NanoC6 # pioarduino x ESP32-C6 (rv32) | |
| - NanoH2 # pioarduino x ESP32-H2 (H2 image target / f_flash16M) | |
| - Tab5 # pioarduino x ESP32-P4 (rv32 single-float / 16MB partition) | |
| # - Core2 # ESP32: represented by Core | |
| # - Fire # ESP32: represented by Core | |
| # - StampS3 # ESP32-S3: represented by CoreS3 | |
| # - Dial # ESP32-S3: represented by CoreS3 | |
| # - Atom # ESP32: represented by Core | |
| # - AtomS3 # ESP32-S3: represented by CoreS3 | |
| # - AtomS3R # ESP32-S3: represented by CoreS3 | |
| # - StickCPlus # ESP32: represented by Core | |
| # - StickCPlus2 # ESP32: represented by Core | |
| # - StickS3 # ESP32-S3: represented by CoreS3 | |
| # - Paper # ESP32: represented by Core | |
| # - CoreInk # ESP32: represented by Core | |
| # - Cardputer # ESP32-S3: represented by CoreS3 | |
| # - NessoN1 # ESP32-C6: represented by NanoC6 | |
| framework: | |
| - Arduino | |
| espressif32: | |
| - latest | |
| include: | |
| # NFCA Specific sketches (Core only) | |
| - example: NFCA_Dump | |
| board: Core | |
| framework: Arduino | |
| espressif32: latest | |
| - example: NFCA_ValueBlock | |
| board: Core | |
| framework: Arduino | |
| espressif32: latest | |
| - example: NFCA_ReadWrite | |
| board: Core | |
| framework: Arduino | |
| espressif32: latest | |
| - example: NFCA_NDEF | |
| board: Core | |
| framework: Arduino | |
| espressif32: latest | |
| # NFCA Detect on M5Dial with builtin WS1850S | |
| - example: NFCA_Detect | |
| board: Dial_Builtin | |
| framework: Arduino | |
| espressif32: latest | |
| # NFCB JapanIDCard (Core only) | |
| - example: NFCB_JapanIDCard | |
| board: Core | |
| framework: Arduino | |
| espressif32: latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.10' | |
| - name: Install intelhex | |
| run: pip install intelhex | |
| - name: Build examples | |
| uses: karniv00l/platformio-run-action@v1 | |
| with: | |
| environments: ${{ format('{0}_{1}_{2}_{3}', matrix.example, matrix.board, matrix.framework, matrix.espressif32) }} | |
| project-dir: "./" | |
| project-conf: "./platformio.ini" |