enable PM on ESP repeaters that support it

This commit is contained in:
liquidraver
2026-07-30 17:14:05 +02:00
parent 92f171a3a2
commit aa14944a93
11 changed files with 536 additions and 7 deletions
+29
View File
@@ -9,6 +9,24 @@ env:
python_version: 3.12
toolchains: arm-zephyr-eabi:xtensa-espressif_esp32s3_zephyr-elf:xtensa-espressif_esp32_zephyr-elf:riscv64-zephyr-elf
# Mark the GitHub release as a pre-release AND skip the Mesh America catalog
# publish. Set to "true" for a release that should not reach ordinary users
# through apps.meshamerica.com's browser flasher; set back to "false" for a
# normal release.
#
# Two separate effects, both driven from here so they cannot drift apart:
# - the release is created with prerelease: true, so GitHub does not mark it
# "Latest" and it is excluded from the /releases/latest API.
# - publish-catalog is skipped entirely, so the firmware-dist branch and its
# catalog.json are left ALONE — the configurator keeps offering whatever
# the last non-prerelease build published. Nothing is unpublished or
# rolled back; that branch is simply not force-pushed this time.
# Release artifacts are still built and attached, so a manual download and
# flash works exactly as usual.
#
# 1.16.8: pre-release while ESP32 light sleep is unvalidated on hardware.
prerelease: "true"
jobs:
setup-zephyr:
runs-on: ubuntu-latest
@@ -228,6 +246,10 @@ jobs:
contents: write
outputs:
release_tag: ${{ steps.tag.outputs.release_tag }}
# Re-exported as a job output because the `env` context is NOT available
# in a job-level `if:` — publish-catalog cannot read env.prerelease
# directly and has to gate on this instead.
prerelease: ${{ env.prerelease }}
steps:
- uses: actions/checkout@v6
@@ -326,6 +348,7 @@ jobs:
body_path: ${{ steps.notes.outputs.notes_path }}
target_commitish: ${{ github.sha }}
draft: false
prerelease: ${{ env.prerelease }}
files: firmware/*
# Publish firmware + provider catalog for the Mesh America configurator
@@ -335,8 +358,14 @@ jobs:
# CORS-clean hosts (firmware via jsDelivr, catalog via raw.githubusercontent).
# The stable catalog URL registered with Mesh America is:
# https://raw.githubusercontent.com/<owner>/<repo>/firmware-dist/catalog.json
#
# Skipped entirely on a pre-release (see the `prerelease` env at the top).
# This branch is force-pushed, so skipping is the whole mechanism: the
# previous release's firmware and catalog.json stay exactly as they are and
# the configurator keeps offering that version.
publish-catalog:
needs: create-release
if: needs.create-release.outputs.prerelease != 'true'
runs-on: ubuntu-latest
permissions:
contents: write