Skip to content

Support OTA and model level commands #45

Support OTA and model level commands

Support OTA and model level commands #45

name: Build for ESP8266 and ESP32
on:
workflow_dispatch:
pull_request:
branches: [ master ]
paths:
- src/**
- examples/**
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
example: [examples/ACUnit, examples/AirQualitySensor/AirQualitySensor, examples/Blinds, examples/ContactSensor, examples/DimSwitch, examples/doorbell, examples/Fan, examples/GarageDoor, examples/Light/Light, examples/Lock/Lock, examples/Lock/Lock_with_feedback, examples/MotionSensor, examples/PowerSensor, examples/Relay/MultiRelays_advance, examples/Relay/Relay, examples/Speaker, examples/Switch/MultiSwitch_advance, examples/Switch/MultiSwitch_beginner, examples/Switch/MultiSwitch_intermediate, examples/Switch/Switch, examples/Thermostat, examples/TV, examples/OTAUpdate, examples/Health]
steps:
- name: Step 1 - Checkout Repo
uses: actions/checkout@v4
- name: Step 2 - Cache pip
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: ${{ runner.os }}-pip-
- name: Step 3 - Cache PlatformIO
uses: actions/cache@v3
with:
path: ~/.platformio
key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }}
- name: Step 4 - Set up Python
uses: actions/setup-python@v3
- name: Step 5 - Install PlatformIO
run: |
python -m pip install --upgrade pip
pip install --upgrade platformio
- name: Step 6 - Install library dependencies
run: |
pio pkg install -l "bblanchon/ArduinoJson" -l "links2004/WebSockets" -g
- name: Step 7 - Run build test using PlatformIO
run: pio ci --lib="." -b esp12e -b esp32dev
env:
PLATFORMIO_CI_SRC: ${{ matrix.example }}