Skip to content

1.5.2

1.5.2 #169

name: PlatformIOBuild
env:
PROJECT_DIR: examples/Tests/build_test
BRANCH_NAME: ${{ github.head_ref || github.ref_name }}
on:
push:
paths:
- '**.ino'
- '**.ini'
- '**.cpp'
- '**.hpp'
- '**.h'
- '**.c'
- '**PlatformioBuild.yml'
pull_request:
workflow_dispatch:
inputs:
master_branch:
description: 'Main branch'
required: true
default: 'master'
jobs:
build:
name: ${{ matrix.board }}@${{ matrix.platform-version }}
runs-on: ubuntu-latest
strategy:
matrix:
# This matrix is highly dependant on platformio.ini contents
# It expects [env] values named after the board and the platform
# version e.g. [m5stack-fire@2.0.3] and trusts that env
# for loading the relevant platform version
platform-version:
- 1.0.6
#- 2.0.0
#- 2.0.1
#- 2.0.2
#- 2.0.3
#- 2.0.4
# - 2.0.5
# - 2.0.6
# - 2.0.7
# - 2.0.8
- 2.0.9
- 2.0.10
- 2.0.11
- 2.0.12
- 2.0.13
board:
- esp32
- m5stick-c
- m5stack-core-esp32
- m5stack-fire
- m5stack-core2
- odroid_esp32
- esp-wrover-kit
- esp32s3box
- lolin_d32_pro
- ttgo-t-watch
- ttgo-t1
- CoreS3
#- ttgo-lora32-v2
- TDeck
exclude:
- { board: esp32s3box, platform-version: 1.0.6 }
#- { board: esp32s3box, platform-version: 2.0.0 }
#- { board: esp32s3box, platform-version: 2.0.1 }
#- { board: esp32s3box, platform-version: 2.0.2 }
#- { board: esp32s3box, platform-version: 2.0.4 }
- { board: TDeck, platform-version: 1.0.6 }
#- { board: esp-wrover-kit, platform-version: 1.0.6}
- { board: m5stack-core2, platform-version: 1.0.6 } # M5Core2.h broken I2S support with 1.0.6
- { board: CoreS3, platform-version: 1.0.6 } # M5Core2.h broken I2S support with 1.0.6
#- { board: m5stack-core2, platform-version: 2.0.0 } # M5Core2.h broken I2S support with 2.0.0
include:
- platform-version: 1.0.6
#- platform-version: 2.0.0
#- platform-version: 2.0.1
#- platform-version: 2.0.2
#- platform-version: 2.0.3
#- platform-version: 2.0.4
# - platform-version: 2.0.5
# - platform-version: 2.0.6
# - platform-version: 2.0.7
# - platform-version: 2.0.8
# - platform-version: 2.0.9
- platform-version: 2.0.10
- platform-version: 2.0.11
- platform-version: 2.0.12
- platform-version: 2.0.13
- board: esp32
- board: m5stick-c
- board: m5stack-core-esp32
- board: m5stack-fire
- board: m5stack-core2
- board: odroid_esp32
- board: esp-wrover-kit
- board: esp32s3box
- board: lolin_d32_pro
- board: ttgo-t-watch
- board: ttgo-t1
- board: CoreS3
- board: TDeck
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.sha }}
- name: Cache pip
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Cache PlatformIO
uses: actions/cache@v3
with:
path: ~/.platformio
key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }}
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install PlatformIO
run: |
python -m pip install --upgrade pip
pip install --upgrade platformio
# pio upgrade --dev
- name: Run PlatformIO
run: |
cd ${{ env.PROJECT_DIR }}
export pio_ver=${{ matrix.platform-version }}
export pio_env="${pio_ver//./_}"
[[ "${{ env.BRANCH_NAME }}" == "${{ github.event.inputs.master_branch }}" ]] && rm dev_lib_deps.ini || echo "Develop!" && pio system prune -f
pio lib -e ${{ matrix.board }}_$pio_env install --no-save file://$(realpath ../../../)
pio run -e ${{ matrix.board }}_$pio_env