Skip to content

Commit 8e04d60

Browse files
committed
verify: upload factory/ota bins as artifacts for test-flashing
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XpCz2RvuxV5uV8bFwCEpkL
1 parent 87dd18c commit 8e04d60

1 file changed

Lines changed: 21 additions & 7 deletions

File tree

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1-
# Verification-only build for the valar-core rewire branch. Compiles the rewired
1+
# Verification build for the valar-core rewire branch. Compiles the rewired
22
# board configs (which pull valar-core + scheduling from valar-motion as remote
3-
# packages) on GitHub runners, which have the full network access needed for the
4-
# ESP-IDF toolchain download. No release/attach — this only proves it builds.
3+
# packages) on GitHub runners, and uploads the factory + OTA binaries as
4+
# downloadable artifacts so a board can be flashed for testing. This is NOT a
5+
# release — it attaches nothing to any release and does not touch main.
56
name: Verify rewire build
67

78
on:
@@ -15,15 +16,28 @@ jobs:
1516
strategy:
1617
fail-fast: false
1718
matrix:
18-
config:
19-
- firmware/VAL3000/Ropener-VAL3000-rewired.yml
20-
- firmware/VAL3100/Ropener-VAL3100-rewired.yml
19+
include:
20+
- config: firmware/VAL3000/Ropener-VAL3000-rewired.yml
21+
asset: Ropener-VAL3000
22+
- config: firmware/VAL3100/Ropener-VAL3100-rewired.yml
23+
asset: Ropener-VAL3100
2124
steps:
2225
- uses: actions/checkout@v4
2326
- uses: actions/setup-python@v5
2427
with:
2528
python-version: '3.11'
2629
- name: Install ESPHome
2730
run: pip install esphome
28-
- name: Compile ${{ matrix.config }}
31+
- name: Compile ${{ matrix.asset }}
2932
run: esphome compile "${{ matrix.config }}"
33+
- name: Collect binaries
34+
run: |
35+
mkdir -p dist
36+
FACTORY=$(find . -path "*/.pioenvs/*/firmware.factory.bin" | head -1)
37+
cp "$FACTORY" "dist/${{ matrix.asset }}.factory.bin"
38+
OTA=$(find . -path "*/.pioenvs/*/firmware.ota.bin" | head -1)
39+
cp "$OTA" "dist/${{ matrix.asset }}.ota.bin" 2>/dev/null || true
40+
- uses: actions/upload-artifact@v4
41+
with:
42+
name: ${{ matrix.asset }}
43+
path: dist/*.bin

0 commit comments

Comments
 (0)