feat: automatic DB backup before migrations using VERSION file

- Add VERSION file at repo root as single source of truth for app version
- frontend/vite.config.ts reads VERSION file instead of package.json
- backend config.py exposes APP_VERSION read from VERSION (dev) or /app/VERSION (Docker)
- database.py backs up DB to homelab.db.back-{version} before running migrations
  (skipped if DB doesn't exist or backup already exists — fully idempotent)
- Dockerfile.backend and Dockerfile.frontend copy VERSION into the image
- Add test_db_backup.py with 4 tests covering create/skip/idempotent/version cases
This commit is contained in:
Pouzor
2026-04-19 01:21:09 +02:00
parent 0eff7da46e
commit 0019c086cf
7 changed files with 95 additions and 3 deletions
+1
View File
@@ -0,0 +1 @@
1.9