flasher: show current release version + notes (pipeline-driven)

The esp-web-tools manifest carried a frozen version:beta_1 while the rolling
/latest/ bins moved on, so the web flasher always said beta_1. Fix:
- scripts/build/gen-flasher-meta.py emits version.json (tag + notes) + per-release
  manifests (version=tag) into /latest/; release.sh + the CI workflow run it, so
  the metadata rolls with every release.
- the site points the install buttons at the VPS manifests and renders a live
  'What's new in <tag>' block from version.json.
- drop the frozen static site manifests.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Kaj Schittecat
2026-06-13 16:08:10 +02:00
co-authored by Claude Opus 4.8
parent 399b5004e0
commit a405513d84
7 changed files with 81 additions and 28 deletions
+6
View File
@@ -87,6 +87,11 @@ jobs:
done
ls -la dist
- name: Web-flasher metadata (version.json + manifests, roll with release)
env:
TAG: ${{ steps.v.outputs.tag }}
run: python3 scripts/build/gen-flasher-meta.py "$TAG" dist "release-notes/$TAG.txt"
- name: Create / update the GitHub Release
env:
GH_TOKEN: ${{ github.token }}
@@ -117,6 +122,7 @@ jobs:
scp -i ~/.ssh/id_deploy "dist/$n.bin" "dist/$n-merged.bin" "$VPS:$REL/"
scp -i ~/.ssh/id_deploy "dist/$n-merged.bin" "dist/$n.bin" "$VPS:$VPS_PATH/latest/"
done
scp -i ~/.ssh/id_deploy dist/version.json dist/manifest-tdeck.json dist/manifest-heltec-v4-tft.json "$VPS:$VPS_PATH/latest/"
$SSH "$VPS" "cd '$VPS_PATH/releases/TOUCH' && python3 -c \"import os,json; b=sorted(d for d in os.listdir('.') if d.startswith('beta_') and os.path.isdir(d)); open('index.json','w').write(json.dumps([{'name':x,'type':'dir'} for x in b], indent=2))\""
rm -f ~/.ssh/id_deploy
echo "Published $TAG to wadamesh.com"