Phase 12 · Deploy to production
The final gate: take the staging-verified app live without losing anything if it goes wrong. Phase 12 is not a sequential step you grind through — it’s a trigger you pull when staging is verified and you’re ready. Every move here keeps a rollback one command away.
Phase 12 — production cutover, rollback always ready
When to pull the trigger
Section titled “When to pull the trigger”Phase 12 can fire on three paths depending on your risk tolerance. Pick one — don’t drift between them.
| Path | When to use | Flow |
|---|---|---|
| Fast launch | Need production ASAP | Core phases on staging → go live → harden + polish on staging → redeploy |
| Hardened launch | Want everything right first | All phases on staging → go live → final verification |
| Iterative | Prefer gradual refinement | Core phases → go live → polish on staging, redeploy after each batch |
Prerequisites
Section titled “Prerequisites”Confirm every item before any deploy step runs:
- Staging deploy complete — app live on staging, schema verified, 24–48h monitoring passed.
- Superadmin setup done on staging — branding, SMTP, payments, and legal pages all configured.
- Server setup verified on the production account (it may be a different host from staging — server setup runs on each).
- Production database created (empty) in the hosting panel.
- Production
.envtemplate prepared in your secrets manager / project vault — placeholders only, never committed. - Production TLS certificate ready (origin cert or Let’s Encrypt).
- Rollback plan reviewed, emergency contacts documented, and stakeholders notified of the deploy window.
Database strategy — decide first
Section titled “Database strategy — decide first”How you seed the production database decides how much work you repeat.
| Option | Pros | Cons |
|---|---|---|
| Fresh installer | Clean DB, no URL/encryption issues | Redo all superadmin config (1–2h) |
| Copy staging DB | Skip admin config (~10 min) | Must find/replace staging→production URLs; watch app-key-encrypted columns |
| Hybrid | Best of both | Fresh install, then selectively import settings/plans; needs SQL comfort |
For a first production deploy, Fresh installer is safest — it avoids encryption-key mismatches and URL find/replace errors. Use Copy staging DB once the process is routine.
Pages in this phase
Section titled “Pages in this phase”Start with Pre-flight — never skip it.