Fix SSE #68
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
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json | |
name: Build (ESP32) | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
- release/* | |
pull_request: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
arduino-esp32: | |
name: ESP32 (arduino-cli) - Release | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install arduino-cli | |
run: curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | BINDIR=/usr/local/bin sh | |
- name: Update core index | |
run: arduino-cli core update-index --additional-urls https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
- name: Install core | |
run: arduino-cli core install --additional-urls https://espressif.github.io/arduino-esp32/package_esp32_index.json esp32:esp32 | |
- name: Install ArduinoJson | |
run: arduino-cli lib install ArduinoJson | |
- name: Install AsyncTCP (ESP32) | |
run: ARDUINO_LIBRARY_ENABLE_UNSAFE_INSTALL=true arduino-cli lib install --git-url https://github.com/ESP32Async/AsyncTCP#v3.3.8 | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Build Examples | |
run: | | |
for i in `ls examples`; do | |
echo "=============================================================" | |
echo "Building examples/$i..." | |
echo "=============================================================" | |
arduino-cli compile --library . --warnings none -b esp32:esp32:esp32 "examples/$i/$i.ino" | |
done | |
arduino-esp32-dev: | |
name: ESP32 (arduino-cli) - Dev | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install arduino-cli | |
run: curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | BINDIR=/usr/local/bin sh | |
- name: Update core index | |
run: arduino-cli core update-index --additional-urls https://espressif.github.io/arduino-esp32/package_esp32_dev_index.json | |
- name: Install core | |
run: arduino-cli core install --additional-urls https://espressif.github.io/arduino-esp32/package_esp32_dev_index.json esp32:esp32 | |
- name: Install ArduinoJson | |
run: arduino-cli lib install ArduinoJson | |
- name: Install AsyncTCP (ESP32) | |
run: ARDUINO_LIBRARY_ENABLE_UNSAFE_INSTALL=true arduino-cli lib install --git-url https://github.com/ESP32Async/AsyncTCP#v3.3.8 | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Build Examples | |
run: | | |
for i in `ls examples`; do | |
echo "=============================================================" | |
echo "Building examples/$i..." | |
echo "=============================================================" | |
arduino-cli compile --library . --warnings none -b esp32:esp32:esp32 "examples/$i/$i.ino" | |
done | |
platformio-esp32-arduino2: | |
name: ESP32 (pio) - Arduino 2 | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
board: | |
- esp32dev | |
- esp32-s2-saola-1 | |
- esp32-s3-devkitc-1 | |
- esp32-c3-devkitc-02 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Cache PlatformIO | |
uses: actions/cache@v4 | |
with: | |
key: ${{ runner.os }}-pio | |
path: | | |
~/.cache/pip | |
~/.platformio | |
- name: Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.x" | |
- name: Install PIO | |
run: | | |
python -m pip install --upgrade pip | |
pip install --upgrade platformio | |
- name: Build Examples | |
run: | | |
for i in `ls examples`; do | |
echo "=============================================================" | |
echo "Building examples/$i..." | |
echo "=============================================================" | |
PLATFORMIO_SRC_DIR=examples/$i PIO_BOARD=${{ matrix.board }} pio run -e ci-arduino-2 | |
done | |
platformio-esp32-arduino-3: | |
name: ESP32 (pio) - Arduino 3 | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
board: | |
- esp32dev | |
- esp32-s2-saola-1 | |
- esp32-s3-devkitc-1 | |
- esp32-c3-devkitc-02 | |
- esp32-c6-devkitc-1 | |
- esp32-h2-devkitm-1 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Cache PlatformIO | |
uses: actions/cache@v4 | |
with: | |
key: ${{ runner.os }}-pio | |
path: | | |
~/.cache/pip | |
~/.platformio | |
- name: Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.x" | |
- name: Install PIO | |
run: | | |
python -m pip install --upgrade pip | |
pip install --upgrade platformio | |
- name: Build Examples | |
run: | | |
for i in `ls examples`; do | |
echo "=============================================================" | |
echo "Building examples/$i..." | |
echo "=============================================================" | |
PLATFORMIO_SRC_DIR=examples/$i PIO_BOARD=${{ matrix.board }} pio run -e ci-arduino-3 | |
done | |
platformio-esp32-arduino-latest: | |
name: ESP32 (pio) - Arduino Latest | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
board: | |
- esp32dev | |
- esp32-s2-saola-1 | |
- esp32-s3-devkitc-1 | |
- esp32-c3-devkitc-02 | |
- esp32-c6-devkitc-1 | |
- esp32-h2-devkitm-1 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Cache PlatformIO | |
uses: actions/cache@v4 | |
with: | |
key: ${{ runner.os }}-pio | |
path: | | |
~/.cache/pip | |
~/.platformio | |
- name: Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.x" | |
- name: Install PIO | |
run: | | |
python -m pip install --upgrade pip | |
pip install --upgrade platformio | |
- name: Build Examples | |
run: | | |
for i in `ls examples`; do | |
echo "=============================================================" | |
echo "Building examples/$i..." | |
echo "=============================================================" | |
PLATFORMIO_SRC_DIR=examples/$i PIO_BOARD=${{ matrix.board }} pio run -e ci-arduino-3-latest | |
done | |
platformio-specific-envs: | |
name: ESP32 (pio) - Specific Envs | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
env: | |
- ci-arduino-3-latest-asynctcp | |
- ci-arduino-3-no-json | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Cache PlatformIO | |
uses: actions/cache@v4 | |
with: | |
key: ${{ runner.os }}-pio | |
path: | | |
~/.cache/pip | |
~/.platformio | |
- name: Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.x" | |
- name: Install PIO | |
run: | | |
python -m pip install --upgrade pip | |
pip install --upgrade platformio | |
- name: Build Examples | |
run: | | |
for i in `ls examples`; do | |
echo "=============================================================" | |
echo "Building examples/$i..." | |
echo "=============================================================" | |
PLATFORMIO_SRC_DIR=examples/$i PIO_BOARD=esp32dev pio run -e ${{ matrix.env }} | |
done |