Add combined tests

This commit is contained in:
Edward Firmo
2024-04-18 20:06:10 +02:00
parent 52be1226e5
commit 0c634cfc55
2 changed files with 58 additions and 44 deletions

View File

@@ -100,7 +100,7 @@ jobs:
run: find . -name "*.yaml" -exec yamllint -c ./.rules/yamllint.yml {} + run: find . -name "*.yaml" -exec yamllint -c ./.rules/yamllint.yml {} +
build_cores: build_cores:
name: Build Firmware Cores name: Firmware Cores
needs: [code_scan, setup_dependencies] needs: [code_scan, setup_dependencies]
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
@@ -121,14 +121,14 @@ jobs:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@main uses: actions/checkout@main
- name: Build Firmware - name: Firmware
if: steps.matrix.outputs.cache-hit != 'true' if: steps.matrix.outputs.cache-hit != 'true'
uses: barndawgie/build-action@v1.9.0 uses: barndawgie/build-action@v1.9.0
with: with:
yaml_file: ${{ matrix.yaml_file }} yaml_file: ${{ matrix.yaml_file }}
build_advanced: build_advanced:
name: Build Advanced name: Advanced
needs: build_cores needs: build_cores
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
@@ -145,13 +145,13 @@ jobs:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@main uses: actions/checkout@main
- name: Build Advanced Firmware - name: Advanced Firmware
uses: barndawgie/build-action@v1.9.0 uses: barndawgie/build-action@v1.9.0
with: with:
yaml_file: ${{ matrix.yaml_file }} yaml_file: ${{ matrix.yaml_file }}
build_bluetooth_proxy: build_bluetooth_proxy:
name: Build Bluetooth Proxy name: Bluetooth Proxy
needs: build_cores needs: build_cores
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
@@ -166,13 +166,13 @@ jobs:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@main uses: actions/checkout@main
- name: Build Bluetooth Proxy Firmware - name: Bluetooth Proxy Firmware
uses: barndawgie/build-action@v1.9.0 uses: barndawgie/build-action@v1.9.0
with: with:
yaml_file: ${{ matrix.yaml_file }} yaml_file: ${{ matrix.yaml_file }}
build_climate_cool: build_climate_cool:
name: Build Climate Cool name: Climate Cool
needs: build_cores needs: build_cores
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
@@ -189,13 +189,13 @@ jobs:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@main uses: actions/checkout@main
- name: Build Climate Cool Firmware - name: Climate Cool Firmware
uses: barndawgie/build-action@v1.9.0 uses: barndawgie/build-action@v1.9.0
with: with:
yaml_file: ${{ matrix.yaml_file }} yaml_file: ${{ matrix.yaml_file }}
build_climate_heat: build_climate_heat:
name: Build Climate Heat name: Climate Heat
needs: build_cores needs: build_cores
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
@@ -212,13 +212,13 @@ jobs:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@main uses: actions/checkout@main
- name: Build Climate Heat Firmware - name: Climate Heat Firmware
uses: barndawgie/build-action@v1.9.0 uses: barndawgie/build-action@v1.9.0
with: with:
yaml_file: ${{ matrix.yaml_file }} yaml_file: ${{ matrix.yaml_file }}
build_climate_dual: build_climate_dual:
name: Build Climate Dual name: Climate Dual
needs: build_cores needs: build_cores
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
@@ -235,7 +235,51 @@ jobs:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@main uses: actions/checkout@main
- name: Build Climate Dial Firmware - name: Climate Dial Firmware
uses: barndawgie/build-action@v1.9.0
with:
yaml_file: ${{ matrix.yaml_file }}
build_customizations:
name: Customizations
needs:
- build_advanced
- build_climate_heat
runs-on: ubuntu-latest
strategy:
matrix:
include:
- id: idf
yaml_file: ".test/esphome_idf_advanced_climate_heat_customizations.yaml"
- id: ard
yaml_file: ".test/esphome_ard_advanced_climate_heat_customizations.yaml"
steps:
- name: Checkout repository
uses: actions/checkout@main
- name: Customizations Firmware
uses: barndawgie/build-action@v1.9.0
with:
yaml_file: ${{ matrix.yaml_file }}
build_climate_ble_proxy:
name: Climate Cool + Bluetooth Proxy
needs:
- build_climate_cool
- build_bluetooth_proxy
runs-on: ubuntu-latest
strategy:
matrix:
include:
- id: idf
yaml_file: ".test/esphome_idf_climate_cool_bluetooth_proxy.yaml"
steps:
- name: Checkout repository
uses: actions/checkout@main
- name: Customizations Firmware
uses: barndawgie/build-action@v1.9.0 uses: barndawgie/build-action@v1.9.0
with: with:
yaml_file: ${{ matrix.yaml_file }} yaml_file: ${{ matrix.yaml_file }}
@@ -248,7 +292,7 @@ jobs:
steps: steps:
- uses: actions/checkout@main - uses: actions/checkout@main
- name: Build ESPHome Prebuilt Firmware - name: ESPHome Prebuilt Firmware
uses: barndawgie/build-action@v1.9.0 uses: barndawgie/build-action@v1.9.0
with: with:
yaml_file: prebuilt/nspanel_esphome_prebuilt.yaml yaml_file: prebuilt/nspanel_esphome_prebuilt.yaml
@@ -259,7 +303,7 @@ jobs:
cp prebuilt/.esphome/build/nspanel/.pioenvs/nspanel/firmware.bin prebuilt/nspanel_esphome_prebuilt.bin || true cp prebuilt/.esphome/build/nspanel/.pioenvs/nspanel/firmware.bin prebuilt/nspanel_esphome_prebuilt.bin || true
cp prebuilt/.esphome/build/nspanel/.pioenvs/nspanel/firmware-factory.bin prebuilt/nspanel_esphome_prebuilt-factory.bin || true cp prebuilt/.esphome/build/nspanel/.pioenvs/nspanel/firmware-factory.bin prebuilt/nspanel_esphome_prebuilt-factory.bin || true
- name: Build ESPHome Prebuilt Wall Display Firmware - name: ESPHome Prebuilt Wall Display Firmware
uses: barndawgie/build-action@v1.9.0 uses: barndawgie/build-action@v1.9.0
with: with:
yaml_file: prebuilt/wall_display.yaml yaml_file: prebuilt/wall_display.yaml

View File

@@ -1,30 +0,0 @@
---
substitutions:
device_name: nspanel
wifi_ssid: "nspanel"
wifi_password: "NSPanel_HA_Blueprint"
nextion_update_url: "https://github.com/Blackymas/NSPanel_HA_Blueprint/dummy"
packages:
basic_package: !include ../nspanel_esphome.yaml # Core package
# advanced_package: !include ../esphome/nspanel_esphome_advanced.yaml
# addon_climate_heat: !include ../esphome/nspanel_esphome_addon_climate_heat.yaml
# addon_climate_cool: !include ../esphome/nspanel_esphome_addon_climate_cool.yaml
addon_climate_dual: !include ../esphome/nspanel_esphome_addon_climate_dual.yaml
esp32:
framework:
type: esp-idf
version: 5.0.2
platform_version: 6.3.2
bluetooth_proxy:
id: ble_proxy
esp32_ble_tracker:
id: ble_tracker
# Set Wi-Fi power save mode to "LIGHT" as required for Bluetooth on ESP32
wifi:
power_save_mode: LIGHT
...