|
@@ -4,43 +4,55 @@ on:
|
|
|
push:
|
|
|
paths-ignore:
|
|
|
- "**/**.md"
|
|
|
- - "/keywords.txt"
|
|
|
- - "/library.json"
|
|
|
- - "/library.properties"
|
|
|
- - "/docs"
|
|
|
+ - "LICENSE"
|
|
|
+ - "keywords.txt"
|
|
|
+ - "library.json"
|
|
|
+ - "library.properties"
|
|
|
+ - "portal"
|
|
|
+ - "docs/*"
|
|
|
pull_request:
|
|
|
paths-ignore:
|
|
|
- "**/**.md"
|
|
|
- - "/keywords.txt"
|
|
|
- - "/library.json"
|
|
|
- - "/library.properties"
|
|
|
- - "/docs"
|
|
|
-
|
|
|
-concurrency:
|
|
|
- group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
|
|
- cancel-in-progress: true
|
|
|
-
|
|
|
+ - "LICENSE"
|
|
|
+ - "keywords.txt"
|
|
|
+ - "library.json"
|
|
|
+ - "library.properties"
|
|
|
+ - "portal"
|
|
|
+ - "docs/*"
|
|
|
+
|
|
|
jobs:
|
|
|
arduino:
|
|
|
- name: arduino ${{ matrix.name }}
|
|
|
+ name: Arduino - ${{ matrix.name }}
|
|
|
runs-on: ubuntu-latest
|
|
|
strategy:
|
|
|
fail-fast: false
|
|
|
matrix:
|
|
|
include:
|
|
|
- - name: package_esp32_index.json
|
|
|
+ - name: ESP8266
|
|
|
+ core: esp8266:esp8266
|
|
|
+ board: esp8266:esp8266:huzzah
|
|
|
+ index_url: https://arduino.esp8266.com/stable/package_esp8266com_index.json
|
|
|
+
|
|
|
+ - name: ESP32
|
|
|
core: esp32:esp32
|
|
|
board: esp32:esp32:esp32
|
|
|
index_url: https://espressif.github.io/arduino-esp32/package_esp32_index.json
|
|
|
- - name: package_esp32_dev_index.json
|
|
|
+
|
|
|
+ - name: ESP32 (Dev Branch)
|
|
|
core: esp32:esp32
|
|
|
board: esp32:esp32:esp32
|
|
|
index_url: https://espressif.github.io/arduino-esp32/package_esp32_dev_index.json
|
|
|
- - name: package_esp8266com_index.json
|
|
|
- core: esp8266:esp8266
|
|
|
- board: esp8266:esp8266:huzzah
|
|
|
- index_url: https://arduino.esp8266.com/stable/package_esp8266com_index.json
|
|
|
-
|
|
|
+
|
|
|
+ - name: Pico W | RP2040+W
|
|
|
+ core: rp2040:rp2040
|
|
|
+ board: rp2040:rp2040:rpipicow
|
|
|
+ index_url: https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
|
|
|
+
|
|
|
+ - name: Pico 2W | RP2350+W
|
|
|
+ core: rp2040:rp2040
|
|
|
+ board: rp2040:rp2040:rpipico2w
|
|
|
+ index_url: https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
|
|
|
+
|
|
|
steps:
|
|
|
- name: Checkout
|
|
|
uses: actions/checkout@v4
|
|
@@ -59,14 +71,20 @@ jobs:
|
|
|
- name: Install core
|
|
|
run: arduino-cli core install --additional-urls "${{ matrix.index_url }}" ${{ matrix.core }}
|
|
|
|
|
|
- - name: Install AsyncTCP
|
|
|
- run: ARDUINO_LIBRARY_ENABLE_UNSAFE_INSTALL=true arduino-cli lib install --git-url https://github.com/mathieucarbou/AsyncTCP#v3.2.6
|
|
|
+ - name: Install AsyncTCP (ESP32)
|
|
|
+ if: ${{ matrix.core == 'esp32:esp32' }}
|
|
|
+ run: ARDUINO_LIBRARY_ENABLE_UNSAFE_INSTALL=true arduino-cli lib install --git-url https://github.com/ESP32Async/AsyncTCP#v3.3.7
|
|
|
|
|
|
- - name: Install ESPAsyncTCP
|
|
|
- run: ARDUINO_LIBRARY_ENABLE_UNSAFE_INSTALL=true arduino-cli lib install --git-url https://github.com/mathieucarbou/esphome-ESPAsyncTCP#v2.0.0
|
|
|
+ - name: Install ESPAsyncTCP (ESP8266)
|
|
|
+ if: ${{ matrix.core == 'esp8266:esp8266' }}
|
|
|
+ run: ARDUINO_LIBRARY_ENABLE_UNSAFE_INSTALL=true arduino-cli lib install --git-url https://github.com/ESP32Async/ESPAsyncTCP#v2.0.0
|
|
|
+
|
|
|
+ - name: Install RPAsyncTCP (RP2040)
|
|
|
+ if: ${{ matrix.core == 'rp2040:rp2040' }}
|
|
|
+ run: ARDUINO_LIBRARY_ENABLE_UNSAFE_INSTALL=true arduino-cli lib install --git-url https://github.com/ayushsharma82/RPAsyncTCP#v1.3.2
|
|
|
|
|
|
- name: Install ESPAsyncWebServer
|
|
|
- run: ARDUINO_LIBRARY_ENABLE_UNSAFE_INSTALL=true arduino-cli lib install --git-url https://github.com/mathieucarbou/ESPAsyncWebServer#v3.3.17
|
|
|
+ run: ARDUINO_LIBRARY_ENABLE_UNSAFE_INSTALL=true arduino-cli lib install --git-url https://github.com/ESP32Async/ESPAsyncWebServer#v3.7.3
|
|
|
|
|
|
- name: Build Demo
|
|
|
run: arduino-cli compile --library . --warnings none -b ${{ matrix.board }} "examples/Demo/Demo.ino"
|
|
@@ -74,70 +92,80 @@ jobs:
|
|
|
- name: Build Demo_AP
|
|
|
run: arduino-cli compile --library . --warnings none -b ${{ matrix.board }} "examples/Demo_AP/Demo_AP.ino"
|
|
|
|
|
|
- - name: Build Logging
|
|
|
- run: arduino-cli compile --library . --warnings none -b ${{ matrix.board }} "examples/Logging/Logging.ino"
|
|
|
-
|
|
|
- name: Build HighPerf
|
|
|
run: arduino-cli compile --library . --warnings none -b ${{ matrix.board }} "examples/HighPerf/HighPerf.ino"
|
|
|
|
|
|
+ - name: Build Logging
|
|
|
+ run: arduino-cli compile --library . --warnings none -b ${{ matrix.board }} "examples/Logging/Logging.ino"
|
|
|
+
|
|
|
platformio:
|
|
|
- name: "pio:${{ matrix.env }}:${{ matrix.board }}"
|
|
|
+ name: PlatformIO - ${{ matrix.name }}
|
|
|
runs-on: ubuntu-latest
|
|
|
strategy:
|
|
|
fail-fast: false
|
|
|
matrix:
|
|
|
include:
|
|
|
- - env: ci-arduino-2
|
|
|
- board: esp32dev
|
|
|
- - env: ci-arduino-2
|
|
|
- board: esp32-s3-devkitc-1
|
|
|
+ - name: ESP8266 (Huzzah)
|
|
|
+ env: ci-esp8266
|
|
|
+ board: huzzah
|
|
|
+
|
|
|
+ - name: ESP8266 (D1 Mini)
|
|
|
+ env: ci-esp8266
|
|
|
+ board: d1_mini
|
|
|
|
|
|
- - env: ci-arduino-3
|
|
|
+ - name: ESP32 (Arduino Core v2)
|
|
|
+ env: ci-esp32-arduino-2
|
|
|
board: esp32dev
|
|
|
- - env: ci-arduino-3
|
|
|
- board: esp32-s3-devkitc-1
|
|
|
- - env: ci-arduino-3
|
|
|
- board: esp32-c6-devkitc-1
|
|
|
|
|
|
- - env: ci-arduino-310rc1
|
|
|
+ - name: ESP32
|
|
|
+ env: ci-esp32
|
|
|
board: esp32dev
|
|
|
- - env: ci-arduino-310rc1
|
|
|
+
|
|
|
+ - name: ESP32-S2
|
|
|
+ env: ci-esp32
|
|
|
+ board: esp32-s2-saola-1
|
|
|
+
|
|
|
+ - name: ESP32-S3
|
|
|
+ env: ci-esp32
|
|
|
board: esp32-s3-devkitc-1
|
|
|
- - env: ci-arduino-310rc1
|
|
|
+
|
|
|
+ - name: ESP32-C3
|
|
|
+ env: ci-esp32
|
|
|
+ board: esp32-c3-devkitc-02
|
|
|
+
|
|
|
+ - name: ESP32-C6
|
|
|
+ env: ci-esp32
|
|
|
board: esp32-c6-devkitc-1
|
|
|
-
|
|
|
- - env: ci-esp8266
|
|
|
- board: huzzah
|
|
|
- - env: ci-esp8266
|
|
|
- board: d1_mini
|
|
|
+
|
|
|
+ - name: Pico W | RP2040+W
|
|
|
+ env: ci-rp2040
|
|
|
+ board: rpipicow
|
|
|
+
|
|
|
+ - name: Pico 2W | RP2350+W
|
|
|
+ env: ci-rp2350
|
|
|
+ board: rpipico2w
|
|
|
steps:
|
|
|
- - name: Checkout
|
|
|
- uses: actions/checkout@v4
|
|
|
+ - uses: actions/checkout@v4
|
|
|
|
|
|
- - name: Cache PlatformIO
|
|
|
+ - name: Set up cache
|
|
|
uses: actions/cache@v4
|
|
|
with:
|
|
|
key: ${{ runner.os }}-pio
|
|
|
path: |
|
|
|
- ~/.cache/pip
|
|
|
~/.platformio
|
|
|
-
|
|
|
- - name: Python
|
|
|
+ ~/.cache/pip
|
|
|
+
|
|
|
+ - name: Setup Python
|
|
|
uses: actions/setup-python@v5
|
|
|
with:
|
|
|
python-version: "3.x"
|
|
|
|
|
|
- - name: Build
|
|
|
+ - name: Setup PlatformIO
|
|
|
run: |
|
|
|
python -m pip install --upgrade pip
|
|
|
pip install --upgrade platformio
|
|
|
-
|
|
|
- - run: PLATFORMIO_SRC_DIR="examples/Demo" PIO_BOARD=${{ matrix.board }} pio run -e ${{ matrix.env }}
|
|
|
- - run: PLATFORMIO_SRC_DIR="examples/Demo_AP" PIO_BOARD=${{ matrix.board }} pio run -e ${{ matrix.env }}
|
|
|
- - run: PLATFORMIO_SRC_DIR="examples/Logging" PIO_BOARD=${{ matrix.board }} pio run -e ${{ matrix.env }}
|
|
|
- - run: PLATFORMIO_SRC_DIR="examples/HighPerf" PIO_BOARD=${{ matrix.board }} pio run -e ${{ matrix.env }}
|
|
|
-
|
|
|
- - run: PLATFORMIO_BUILD_FLAGS="-DWSL_HIGH_PERF" PLATFORMIO_SRC_DIR="examples/Demo" PIO_BOARD=${{ matrix.board }} pio run -e ${{ matrix.env }}
|
|
|
- - run: PLATFORMIO_BUILD_FLAGS="-DWSL_HIGH_PERF" PLATFORMIO_SRC_DIR="examples/Demo_AP" PIO_BOARD=${{ matrix.board }} pio run -e ${{ matrix.env }}
|
|
|
- - run: PLATFORMIO_BUILD_FLAGS="-DWSL_HIGH_PERF" PLATFORMIO_SRC_DIR="examples/Logging" PIO_BOARD=${{ matrix.board }} pio run -e ${{ matrix.env }}
|
|
|
- - run: PLATFORMIO_BUILD_FLAGS="-DWSL_HIGH_PERF" PLATFORMIO_SRC_DIR="examples/HighPerf" PIO_BOARD=${{ matrix.board }} pio run -e ${{ matrix.env }}
|
|
|
+
|
|
|
+ - run: PLATFORMIO_SRC_DIR=examples/Demo PIO_BOARD=${{ matrix.board }} pio run -e ${{ matrix.env }}
|
|
|
+ - run: PLATFORMIO_SRC_DIR=examples/Demo_AP PIO_BOARD=${{ matrix.board }} pio run -e ${{ matrix.env }}
|
|
|
+ - run: PLATFORMIO_SRC_DIR=examples/HighPerf PIO_BOARD=${{ matrix.board }} pio run -e ${{ matrix.env }}
|
|
|
+ - run: PLATFORMIO_SRC_DIR=examples/Logging PIO_BOARD=${{ matrix.board }} pio run -e ${{ matrix.env }}
|