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