Add RTO-RPO matrix, backup pickup queue tracker, and TestEvidence with Forgejo drill import. Mark T03, T04, T05 done.
82 lines
No EOL
3.7 KiB
Markdown
82 lines
No EOL
3.7 KiB
Markdown
# Backup Pickup Queue
|
||
|
||
**Updated:** 2026-07-07
|
||
**Owner:** Bernd (`disaster-control` tracks; implementation in owner repos)
|
||
**Source:** `history/2026-07-04-forgejo-backup-strategy-assessment.md` pickup queue
|
||
**Review cadence:** Monthly, or when a cross-repo workplan closes
|
||
|
||
When an item reaches `done`, update `AssetRegister.yaml`, `DataRegister.yaml`,
|
||
`BackupPolicy.md`, and `RTO-RPO-Matrix.md` to reflect the new posture.
|
||
|
||
---
|
||
|
||
## Queue
|
||
|
||
| # | Item | Owner repo | Blocker | Status | Last checked | Evidence |
|
||
| --- | --- | --- | --- | --- | --- | --- |
|
||
| 1 | Backup destination + retention decision | `railiance-infra` / T02 | — | **done** | 2026-07-09 | `the-custodian/docs/forgejo-production-decisions.md` — Option A: Nextcloud WebDAV, 14 daily + 4 weekly, age encrypt |
|
||
| 2 | CNPG `ScheduledBackup` on `forgejo-db` | `railiance-platform` | #1 done; Phase 1 uses logical pg_dump per decision (WAL deferred) | **open** | 2026-07-07 | No `ScheduledBackup` CR found; `helm/forgejo-db-cluster.yaml` has storage only |
|
||
| 3 | Scheduled `forgejo dump` → age → upload | `railiance-platform` | #1 done; needs cron + Nextcloud wiring | **open** | 2026-07-07 | Restore proven (T09); no CronJob. Owner shifted to platform per 2026-07-09 decision |
|
||
| 4 | Restore `tools/cmd/railiance-backup` to platform | `railiance-platform` | Relocation cancelled (RAIL-PL-WP-0001-T05); needs re-implementation | **open** | 2026-07-07 | `make backup` references missing `tools/cmd/railiance-backup` |
|
||
| 5 | Gitea pre-cutover snapshot runbook + evidence | `railiance-infra` / `railiance-apps` | No automated Gitea backup today | **open** | 2026-07-07 | Safety contract requires fresh dump before each migration wave; no runbook evidenced |
|
||
| 6 | `apps-pg` backup coverage | `railiance-platform` | CNPG ScheduledBackup not configured | **open** | 2026-07-07 | `railiance-platform/docs/apps-pg.md` — follow-up note; blocks app production-trust gates |
|
||
|
||
---
|
||
|
||
## Status legend
|
||
|
||
| Status | Meaning |
|
||
| --- | --- |
|
||
| `open` | Not started or no implementation evidenced |
|
||
| `in_progress` | Active workplan or PR in flight |
|
||
| `done` | Implemented, verified, registers updated |
|
||
| `deferred` | Explicitly postponed with decision record |
|
||
|
||
---
|
||
|
||
## Promotion gate (from BackupPolicy.md §7)
|
||
|
||
Tier-3 repo cutovers remain blocked until:
|
||
|
||
1. Items **3** and **4** (or equivalent platform lane) deliver automated daily backups.
|
||
2. **7 consecutive days** of successful daily runs.
|
||
3. One restore drill uses a **Nextcloud artifact** (not workstation `/tmp`).
|
||
|
||
Current gate status: **not met** — item 3 open, item 4 open.
|
||
|
||
---
|
||
|
||
## Notes
|
||
|
||
### Item 1 — closed 2026-07-09
|
||
|
||
Operator chose Option A: extend the existing Railiance platform backup lane
|
||
(age + Nextcloud WebDAV). Recorded in `BackupPolicy.md` §7 and
|
||
`RTO-RPO-Matrix.md`.
|
||
|
||
### Item 2 — scope clarification
|
||
|
||
2026-07-09 decision explicitly defers CNPG WAL/PITR to Phase 2. Phase 1 uses
|
||
daily logical `pg_dump` from `forgejo-db` (overlaps item 3). A
|
||
`ScheduledBackup` CR may still be valuable later but is not the Phase 1 gate.
|
||
|
||
### Item 3 — owner correction
|
||
|
||
Assessment originally assigned scheduled `forgejo dump` to `railiance-apps`.
|
||
2026-07-09 decision assigns cron, encrypt, upload, and retention to
|
||
`railiance-platform`. `railiance-apps` constraint: no backup secrets in Git.
|
||
|
||
### Item 4 — re-implementation path
|
||
|
||
The old `railiance-backup` script still exists in `railiance-cluster/tools/cmd/`
|
||
(dev-workstation scope). Platform needs a new or relocated tool covering
|
||
PostgreSQL HA, Valkey, and Forgejo lane uploads. See
|
||
`railiance-platform/workplans/archived/RAIL-PL-WP-0001-platform-baseline.md` T05.
|
||
|
||
---
|
||
|
||
## Review log
|
||
|
||
| Date | Reviewer | Notes |
|
||
| --- | --- | --- |
|
||
| 2026-07-07 | grok | Queue created (DISCTL-WP-0003-T04). Item 1 done. Items 2–6 open. | |