mirror of
https://github.com/alexhopeoconnor/WiFiManager.git
synced 2026-10-04 02:48:13 +10:00
69 lines
2.1 KiB
YAML
69 lines
2.1 KiB
YAML
name: Build
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- device-framework
|
|
tags:
|
|
- "v*"
|
|
pull_request:
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
documentation:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- run: bash -n scripts/*.sh tools/check-ota-partitions.sh tools/portal-hardware tools/lib/*.sh tools/tests/*.sh
|
|
- run: |
|
|
for spec in tests/portal-contract/tests/*.js; do
|
|
node --check "$spec"
|
|
done
|
|
- run: ./tools/tests/test-portal-hardware-cli.sh
|
|
- run: ./tools/check-ota-partitions.sh
|
|
- run: ./scripts/check-docs.sh
|
|
|
|
compile-tests:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- platform: esp8266
|
|
examples: true
|
|
ota_fixtures: true
|
|
unity: true
|
|
- platform: esp32
|
|
examples: true
|
|
ota_fixtures: false
|
|
unity: true
|
|
- platform: esp32-current
|
|
examples: false
|
|
# Keep current A/B OTA builds in their own worker. PlatformIO uses
|
|
# one package-name directory for tool-esptoolpy, so mixing legacy
|
|
# 3.0.5 and current 3.3.11 graphs in a single cache is not a
|
|
# meaningful compatibility test.
|
|
ota_fixtures: true
|
|
unity: true
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.11'
|
|
- run: python -m pip install --upgrade platformio==6.1.19
|
|
- run: ./scripts/test.sh compile --platform ${{ matrix.platform }}
|
|
- if: matrix.unity
|
|
run: ./scripts/test.sh unity --platform ${{ matrix.platform }}
|
|
- if: matrix.platform == 'esp32-current'
|
|
run: ./scripts/test.sh packages --platform esp32-current
|
|
- if: matrix.examples
|
|
run: ./scripts/test.sh examples --platform ${{ matrix.platform }}
|
|
- if: matrix.ota_fixtures
|
|
run: ./scripts/test.sh ota-fixtures --platform ${{ matrix.platform }}
|