bur-cli
BUR-8Back up one database to encrypted local files (bur backup --only)
Description
Wire the single-database local path in runner.py and cli.py: dump, encrypt, write locally, record the result. This is the first integration of the dump and restore wrappers, age, and storage.
- Produces two artefacts that share the run timestamp:
<app>-<ts>.dump.ageand the paired<app>-<ts>.globals.sql.age, so they restore together. - Free-space guard. Before the local write, check
backup_rootfree space against a conservative floor (rawpg_database_size, deliberately over-provisioned, rather than a predicted compressed size that can't be known before dumping) and abort that DB loudly if there isn't room. Stream to a.partialand handle a full disk (ENOSPC) mid-stream by failing the DB and unlinking the partial. A backup must never fill the VPS disk. - Streaming pipefail is enforced on both streams.
--dry-runwrites nothing.
Acceptance
-
bur backup --only giftringproduces the dump and the matching globals artefact. - a truncated stream fails with a non-zero exit.
- the free-space guard aborts loudly when short, and never fills the disk.
-
--dry-runperforms no writes.
Sub-tickets
0No sub-tickets yet.
Links
No links.
Comments
0No comments yet.