backlog: relay+mirror moved to Proxmox CT 111 (fuelboard-relay), live push verified

This commit is contained in:
FuelBoard Contributor
2026-08-16 18:55:07 +01:00
parent e0e5b36503
commit 49503bef99
+23 -13
View File
@@ -13,20 +13,30 @@ Status: TODO / IN PROGRESS / DONE / BLOCKED.
## P1 — Soon ## P1 — Soon
- [ ] **Move relay + mirror off the Mac mini (plan for 2026-08-16)** — dedicated - [x] **Move relay + mirror off the Mac mini (DONE 2026-08-16)** — dedicated
Debian 13 LXC on Proxmox via community-scripts/ProxmoxVE `ct/debian.sh` Debian 13 LXC on Proxmox via community-scripts/ProxmoxVE `ct/debian.sh`
(CT ~110, hostname `fuelboard-relay`, 1 core/1 GB/8 GB, static IP (CT **111**, hostname **`fuelboard-relay`**, 1 core/512 MB/2 GB, static IP
~192.168.1.150, plain LXC — NO Docker layer). Scope: relay AND mirror both **192.168.1.113**, plain LXC — NO Docker layer). Scope: relay AND mirror
move (full Mac independence; relay binds loopback only, GitHub is the only both moved (full Mac independence; relays bind **loopback only**, GitHub is
public surface). Steps: user creates CT on pve → install Python (trixie = the only public surface). What landed: Python 3.13.5 (trixie) boots both
3.13 vs Mac 3.14 — verify relay boots) + relay source + `.env` (GOV.UK relays (relay 8788 demo/CSV + relay-api 8789 `source: api`, 8,024 stations,
token) → copy deploy key `~/.ssh/fuelboard_deploy` + `github-fuelboard-data` ~2 min first sync, 0 failures); source at `/root/workspace/fuelboard-{relay,relay-api}`
ssh config → systemd `fuelboard-relay.service` (Restart=always, (venvs + pip, `.env` chmod 600); deploy key `fuelboard_deploy` +
127.0.0.1:8789/8788) + `fuelboard-mirror.timer` (10:00 + 16:00) + service → `github-fuelboard-data` ssh config + `fuelboard-data` clone at
relocate `mirror_push.py` (RELAY line → localhost on CT) + fuelboard-data `/root/workspace/fuelboard-data` (origin = ssh alias, green + synced);
clone → verify one live push → remove Mac launchd `mirror_push.py``/root/scripts/mirror_push.py` (RELAY line already
`com.apt.fuelboard-{relay,mirror}`. Open: confirm IP; logs move to `127.0.0.1:8789`); systemd `fuelboard-relay.service` +
journalctl. `fuelboard-relay-api.service` (Restart=always, `--host 127.0.0.1`) +
`fuelboard-mirror.service` (oneshot) + `.timer` (10:00 + 16:00, Persistent,
armed — next Mon 10:00); first live push VERIFIED from outside
(commit `735a292`, latest.json `data_updated 16:50:53Z`); Mac launchd
`com.apt.fuelboard-{relay,relay-api,mirror}` unloaded + plists parked in
`~/Library/LaunchAgents/fuelboard-migrated-to-ct/`; editor 8790 + IPA 8765
stay on the Mac; price watchdog `relay_price_watchdog.py` now fetches via
SSH (`~/.ssh/fuelboard_ct``/root/scripts/watchdog_fetch.py`). Logs via
`journalctl -u fuelboard-*` on the CT; SSH into CT: `ssh -i ~/.ssh/fuelboard_ct root@192.168.1.113`.
**Open: rootfs is 2 GB (1.1 GB free) — mirror retention ~940 MB will get
tight; run `pct resize 111 rootfs 8G` on pve when convenient.**
- [x] **Siri: "Cheapest [fuel] near me"**`AppShortcutsProvider` + `CheapestFuelIntent` - [x] **Siri: "Cheapest [fuel] near me"**`AppShortcutsProvider` + `CheapestFuelIntent`
(App Intents, iOS 16+), dialog + price-card snippet, cached full-UK dump first (App Intents, iOS 16+), dialog + price-card snippet, cached full-UK dump first