Target
| Komponen | Domain / worker |
|---|---|
| Web + API | https://app.sertifikasitrainer.com |
| API path | /api/* |
| Renderer browser | Worker terpisah (render.sertifikasitrainer.com) |
Alur deploy
Pastikan secret shared terisi
BETTER_AUTH_SECRET, DEEPSEEK_API_KEY, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEYPush secrets ke Worker
.env (+ .env.production.local jika ada) → .cloudflare/worker-secrets.json → wrangler secret bulkApa yang dilakukan deploy-prod.sh
- Migrate database (dari
DATABASE_URLdi.env.production.localatau legacy.env.production) - Build frontend (
apps/web) - Deploy renderer browser worker
- Deploy API worker
- Deploy web worker
scripts/deploy-prod.shWrangler config:
apps/api/wrangler.jsonc, apps/web/wrangler.jsonc
DATABASE_URL production
Buat.env.production.local:
.env.production (format catatan psql=...).
Hyperdrive
KalauSYNC_HYPERDRIVE=1 (default), deploy mencoba sync connection string dari apps/api/.env ke Hyperdrive binding di wrangler.