Go-live: off-box backup for the license store (Infomaniak, then Litestream) #29
Loading…
Add table
Add a link
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?
Split out of #28 so it survives that issue closing. This is the backup layer, deliberately deferred until go-live — no object-storage spend while the store is sandbox-only.
Prerequisite: #28 (SQLite migration) landed, so there is a
.dbfile to back up.Hard constraint: the license server is a public Infomaniak VPS and stays off the homelab WireGuard mesh. Not Garage. Target is Infomaniak's own object storage over public TLS.
Step 1 — interim, at launch
s3.pub1.infomaniak.cloud, EC2-style creds) or Swiss Backup (S3/SFTP).sqlite3 licenses.db "VACUUM INTO '/tmp/lic-$(date +%F).db'"→aws s3 cpto the bucket, with a retention/rotation lifecycle rule on the bucket./etc/cairn-license/env(0600), never in git. Document the restore runbook.Step 2 — Litestream
litestream replicate) → the same bucket, as a second systemd unit. Gives ~1 s granularity + point-in-time restore.litestream restore) in DEPLOY.md and the wiki.Acceptance
Ref: ADR-0001 (
cairn/adr/0001-license-server-store-sqlite), gated to #26-launch.