Scheduled daily DB backup and a tested restore procedure #57
Labels
No labels
area/ai
area/backend
area/frontend
area/infra
area/scheduler
area/wled
good-first-issue
priority/high
priority/low
priority/medium
type/bug
type/chore
type/ci-cd
type/docs
type/feature
type/qa
v1.0.0
v1.1.0
v1.2.0
v2.0.0
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
rbrooks/Iris-WLED#57
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
From the 2026-07-15 review follow-ups. Backups currently run only before bulk operations (yearly generation, bulk approve, import, sync). Ordinary-day corruption or a bad manual edit is unprotected, and the restore path has never been exercised.
services/backup.pyand the existingBACKUP_RETAIN_COUNTpruning — consider a separate retention knob for dailies vs pre-bulk-op backupsVACUUM INTO) rather than a file copy while the app is live, to avoid copying a mid-write DBdata/iris.db→ start; note the alembic version expectations)Acceptance: a fresh backup exists every morning; a documented restore has been performed successfully at least once.
Picking this up on
fix/57-daily-backupoff main (scheduler chain, after #59/#9 which are merged). Will switch backup to SQLite's online-backup/VACUUM INTO(safe while live) as the issue asks — bonus, that should also fix the Windows-onlytest_backup.pyfile-lock flake.