sync(restic): pull live esh-docker-vm + irv-ml1 profiles into the repo

Both hosts had live improvements the repo never recorded:
- esh-docker-vm excludes ESPHome's 539 MB of PlatformIO cache (2026-09-14).
- irv-ml1 runs /etc/restic/arbo-checkpoint.sh before the backup, a non-fatal
  SQLite online-backup of arbo's gallery DB. That script is added here too.
The live copies were correct and are the source for the next change. (Also fixes
the fv-ml1 augaman removal time to ~0130 PT.)
This commit is contained in:
vh
2026-09-27 01:38:36 -07:00
parent ad484c3c99
commit c698751bee
5 changed files with 22 additions and 3 deletions
@@ -56,6 +56,14 @@ default:
# sidecars retired fleet-wide; no more offen-scratch volumes exist. # sidecars retired fleet-wide; no more offen-scratch volumes exist.
# Ephemeral / regenerable # Ephemeral / regenerable
- /opt/docker/compose/*/logs - /opt/docker/compose/*/logs
# ESPHome PlatformIO toolchain + build artifacts (added 2026-09-14 with
# the config relocation). The CONFIG is 5 files / 3 KB and is the whole
# point of pulling this dir into coverage; these two subtrees are 539 MB
# of regenerable cache -- a 45x inflation of the /opt/docker source,
# which this profile's own comment budgets at ~12 MB. PlatformIO
# re-downloads them on demand.
- /opt/docker/conf/esphome/.esphome/platformio
- /opt/docker/conf/esphome/.esphome/build
- "**/*.log" - "**/*.log"
- "**/*.log.*" - "**/*.log.*"
- "**/*.pid" - "**/*.pid"
+8
View File
@@ -0,0 +1,8 @@
#!/bin/bash
# Consistent SQLite snapshot of the arbo gallery DB, run before the restic backup.
# Uses SQLite's online-backup API (safe under concurrent writes) to write
# gallery.sqlite.bak INSIDE the arbo_db volume — which is already a restic
# source (/var/lib/docker/volumes), so the consistent copy rides the daily run.
# NON-FATAL by design: a failure here (e.g. container down) must NOT abort the
# host's sole backup, hence the trailing `|| true`.
docker exec arbo python -c 'import sqlite3; s=sqlite3.connect("/data/gallery.sqlite"); d=sqlite3.connect("/data/gallery.sqlite.bak"); s.backup(d); d.close(); s.close()' || true
+4 -1
View File
@@ -20,7 +20,8 @@
# source. Only /opt/docker is backed up (compose files + configs, # source. Only /opt/docker is backed up (compose files + configs,
# once Docker is installed following the fleet convention). # once Docker is installed following the fleet convention).
# #
# No DB dumps needed — this host's workloads don't store relational data. # DB: arbo (catalog engine) keeps a SQLite gallery DB in the arbo_db volume;
# run-before checkpoints it (gallery.sqlite.bak) so the daily volume backup is consistent.
version: "1" version: "1"
@@ -40,6 +41,8 @@ default:
backup: backup:
verbose: 1 verbose: 1
run-before:
- /etc/restic/arbo-checkpoint.sh # consistent SQLite snapshot of the arbo gallery DB
run-after: run-after:
- date +%s > /var/lib/restic/last-success - date +%s > /var/lib/restic/last-success
source: source:
+1 -1
View File
@@ -155,7 +155,7 @@ _As of 2026-09-26 ~1620 PT._
survived the recreate and was then deleted, so the gallery is empty and ready for real survived the recreate and was then deleted, so the gallery is empty and ready for real
enrollments. `/recognize` p50 186 ms (1080p, one face). The detector-latency follow-up enrollments. `/recognize` p50 186 ms (1080p, one face). The detector-latency follow-up
is theirs. Their next release pins the container gid to 10001; nothing is owed by infra-ops. is theirs. Their next release pins the container gid to 10001; nothing is owed by infra-ops.
- **The fv-ml1 instance was REMOVED by Prime on 2026-09-27 (0125 PT)** after the bench. esh-ml1 is the only - **The fv-ml1 instance was REMOVED by Prime on 2026-09-27 (~0130 PT)** after the bench. esh-ml1 is the only
instance: in the house, backed up, 48 ms per face on v0.1.3. instance: in the house, backed up, 48 ms per face on v0.1.3.
- **v0.1.3 live on BOTH hosts (2026-09-27 ~0105 PT).** Speed bench (`docs/pfi/augaman-speed-bench/`), - **v0.1.3 live on BOTH hosts (2026-09-27 ~0105 PT).** Speed bench (`docs/pfi/augaman-speed-bench/`),
server-side one face, v0.1.2 → v0.1.3: esh GPU 144 → 48 ms, fv GPU 75 → 27 ms. CPU mode server-side one face, v0.1.2 → v0.1.3: esh GPU 144 → 48 ms, fv GPU 75 → 27 ms. CPU mode
+1 -1
View File
@@ -16,7 +16,7 @@ first, then re-mirror it here.
| **VRAM** | ~0.74 GB on v0.1.3 (measured after the bench; 0.51 GB on v0.1.2) | | **VRAM** | ~0.74 GB on v0.1.3 (measured after the bench; 0.51 GB on v0.1.2) |
**One instance: esh-ml1.** A second, fixtures-only instance ran on fv-ml1's GPU 1 **One instance: esh-ml1.** A second, fixtures-only instance ran on fv-ml1's GPU 1
(`GPU_ID=1`) from 2026-09-27 0017 to 0125 PT, for the speed comparison in (`GPU_ID=1`) from 2026-09-27 0017 to ~0130 PT, for the speed comparison in
[`docs/pfi/augaman-speed-bench/`](../../docs/pfi/augaman-speed-bench/README.md). [`docs/pfi/augaman-speed-bench/`](../../docs/pfi/augaman-speed-bench/README.md).
**Prime removed it** after v0.1.3 put esh-ml1 at ~48 ms per face: it is in the house **Prime removed it** after v0.1.3 put esh-ml1 at ~48 ms per face: it is in the house
next to the cameras and it holds the verified backup. `GPU_ID` / `CARD_SUFFIX` stay in next to the cameras and it holds the verified backup. `GPU_ID` / `CARD_SUFFIX` stay in