Skip to content

feat: automatic database backup with retention (STY-94) - #16

Merged
stysus merged 1 commit into
mainfrom
development
Aug 18, 2026
Merged

feat: automatic database backup with retention (STY-94)#16
stysus merged 1 commit into
mainfrom
development

Conversation

@stysus

@stysus stysus commented Aug 18, 2026

Copy link
Copy Markdown
Owner

STY-94 — Backup database otomatis.\n\n- VACUUM INTO online snapshot + gzip + retention pruning\n- GET /api/admin/backup (on-demand download)\n- Auto backup at startup + every 24h, keep 7\n- Config: BACKUP_DIR, BACKUP_RETENTION, BACKUP_INTERVAL_HOURS\n\nVerified: 733KB -> 179KB gzip, valid SQLite, tests pass.

Backend (manager):
- internal/backup: SQLite VACUUM INTO online snapshot + gzip (BestCompression)
  + Prune retention (neuralwire-*.db.gz)
- GET /api/admin/backup: admin download backup on demand (auth)
- Automatic backup at startup then every BACKUP_INTERVAL_HOURS (default 24h),
  retention BACKUP_RETENTION (default 7)
- Config: BACKUP_DIR/BACKUP_RETENTION/BACKUP_INTERVAL_HOURS; Docker/compose
  point backups at the persistent volume
- NewsRepository.DB() exposes *sql.DB for the backup service

Verified: backup startup works (733KB -> 179KB gzip), on-demand download 200,
gzip valid SQLite, all tests pass.
@stysus
stysus merged commit d56a321 into main Aug 18, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant