Commit Graph

4 Commits

Author SHA1 Message Date
Ryan Moon
19135b0520 feat: provision k8s namespace and secrets during customer setup
Some checks failed
Build & Release / build (push) Has been cancelled
- k8s.ts: add createNamespace, deleteNamespace, createSecret, createDockerRegistrySecret
- customers.ts: create namespace + DOCR pull secret + app secrets (DATABASE_URL, JWT_SECRET, REDIS_URL) before pushing ArgoCD chart
- customers.ts: delete namespace on deprovision, search name field too
- git.ts: use DOCR OCI chart URL and helm parameters for customer ArgoCD apps
- Add 'namespace' and 'secrets' steps to provisioning step tracker
2026-04-03 18:54:12 -05:00
Ryan Moon
4bd1918e3b feat: add JWT auth with db-backed users
Some checks failed
Build & Release / build (push) Has been cancelled
- users table created on startup via migrate()
- POST /api/auth/setup to create first user (blocked once any user exists)
- POST /api/auth/login returns httpOnly JWT cookie (7d expiry)
- POST /api/auth/logout clears cookie
- GET /api/auth/me for auth check
- All /api/customers routes require valid JWT
- Frontend shows login form when unauthenticated
- Fix type errors in k8s, do, and pgbouncer services
2026-04-03 07:41:36 -05:00
Ryan Moon
6e68cb83c0 feat: restrict customer DB user permissions on provision
Some checks failed
Build & Release / build (push) Failing after 1m3s
2026-04-03 06:25:51 -05:00
Ryan Moon
8287fbf5b8 feat: initial lunarfront-manager app 2026-04-03 06:23:56 -05:00