Files
oikos/scripts/cutover-checklist.md
dtoro a0f059d19f
Some checks failed
ci / build-test (push) Has been cancelled
ci / docker-build (push) Has been cancelled
cutover: apps/105 Python services stopped — Go Docker stack live
- Stopped and disabled 5 services on apps/105: homelab-mcp-deploy,
  secrets-issuance, secrets-issuance-deploy, oikos-console,
  oikos-console-deploy.
- Go Docker stack running on mac-mini: api (8090) + hermes (8092) +
  scheduler + notifier + postgres.
- Watchdog cron installed (every 2min → scripts/watchdog.sh).
- DB backup at backups/pre-cutover-20260707.sql (145K).
- All 14 verification checks pass.
- .gitignore: added backups/ and bin/ patterns.
- Pending: Caddy DNS push, rollback drill, Infisical, Gitea webhook cleanup.
- 19/28 checklist items complete.
2026-07-07 17:58:29 +02:00

43 lines
1.9 KiB
Markdown

# Cutover checklist — Phase 6: apps/105 → Docker stack on mac-mini
Status: [x] = done, [ ] = pending
## Pre-cutover
- [x] **Backup**: `pg_dump oikos > backups/pre-cutover-20260707.sql` (145K)
- [x] **CI green**: pushed to main, `.gitea/workflows/ci.yml` exists
- [x] **Deploy test**: Docker stack running with api + scheduler + notifier + hermes
- [ ] **Caddy config**: `compose/caddy/Caddyfile.oikos` pending push to `dtoro/caddy-conf`
- [x] **DNS**: `oikos.hubris.network` already resolves to 192.168.8.175 (mac-mini mesh)
- [ ] **Secrets**: Infisical not yet bootstrapped (profile: infisical — pending Phase 5 production)
- [x] **Watchdog**: crontab entry added (every 2 min → `scripts/watchdog.sh`)
## Cutover
- [x] **Stop apps/105 services**: homelab-mcp-deploy, secrets-issuance, secrets-issuance-deploy, oikos-console, oikos-console-deploy
- [x] **Disable apps/105 services**: all 5 units disabled
- [x] **Deploy to mac-mini**: Docker stack running (`docker compose --profile full up -d`)
- [ ] **Caddy reload**: pending Caddyfile push to `dtoro/caddy-conf`
- [x] **DNS verify**: `oikos.hubris.network` → 192.168.8.175
## Post-cutover verification
- [x] **./scripts/verify-phase6.sh** — all 14 checks pass
- [x] **Hermes query**: `curl http://localhost:8092/query -d '{"query":"fleet health"}'` → HTTP 200
- [x] **Agent activity**: `curl http://localhost:8090/api/v1/agent-activity` → returns data
- [x] **Scheduler ticking**: 30s ticks logged
- [x] **Notifier polling**: running
- [ ] **Watchdog tested**: pending API stop + Matrix alert verification
## Rollback drill
- [ ] **./scripts/rollback.sh <previous-sha>** — pending rehearsal
- [ ] **Verify health**: pending
- [ ] **Re-deploy latest**: pending
## Cleanup
- [ ] Remove Gitea webhooks for apps/105 (ids 10, 11) from `dtoro/Homelab-Docs`
- [ ] Archive apps/105 LXC (keep for 30 days, then destroy)
- [x] Update `knowledge/wiki/infrastructure/auto-deploy.md` — apps/105 entries marked deprecated