Skip to content

Commit b154f81

Browse files
committed
Add EWT manifest generation
1 parent 8c13872 commit b154f81

2 files changed

Lines changed: 28 additions & 1 deletion

File tree

.github/workflows/build.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,13 +85,14 @@ jobs:
8585
working-directory: build
8686
run: cp usb2uart.bin ../output/${{ matrix.device }}-esp-bridge.${{ steps.version.outputs.version }}.bin
8787

88-
- name: Checksums
88+
- name: Generate checksums and EWT manifest
8989
working-directory: output
9090
run: |
9191
md5sum ${{ matrix.device }}-esp-bridge.${{ steps.version.outputs.version }}.bin | cut -d ' ' -f 1 > ${{ matrix.device }}-esp-bridge.${{ steps.version.outputs.version }}.bin.md5
9292
md5sum ${{ matrix.device }}-esp-bridge.${{ steps.version.outputs.version }}.factory.bin | cut -d ' ' -f 1 > ${{ matrix.device }}-esp-bridge.${{ steps.version.outputs.version }}.factory.bin.md5
9393
sha256sum ${{ matrix.device }}-esp-bridge.${{ steps.version.outputs.version }}.bin | cut -d ' ' -f 1 > ${{ matrix.device }}-esp-bridge.${{ steps.version.outputs.version }}.bin.sha256
9494
sha256sum ${{ matrix.device }}-esp-bridge.${{ steps.version.outputs.version }}.factory.bin | cut -d ' ' -f 1 > ${{ matrix.device }}-esp-bridge.${{ steps.version.outputs.version }}.factory.bin.sha256
95+
python3 build-ewt-manifest.py -v ${{ steps.version.outputs.version }} > manifest.json
9596
9697
- name: Upload artifacts
9798
uses: actions/upload-artifact@v4

build_ewt_manifest.py

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
import argparse
2+
3+
parser = argparse.ArgumentParser()
4+
parser.add_argument('-v', help='Version number to use in the manifest. Example: 2025.09.2', required=True, type=str)
5+
6+
version = parser.parse_args().v
7+
8+
manifest = {
9+
"name": "zwa-2.usb=uart-bridge",
10+
"version": version,
11+
"home_assistant_domain": "esphome",
12+
"new_install_prompt_erase": "false",
13+
"builds": [
14+
{
15+
"chipFamily": "ESP32-S3",
16+
"parts": [
17+
{
18+
"path": f"{version}/zwa2-esp-bridge.{version}.factory.bin",
19+
"offset": 0
20+
}
21+
]
22+
}
23+
]
24+
}
25+
26+
print(manifest)

0 commit comments

Comments
 (0)