Harden production deployment workflow
This commit is contained in:
@@ -23,3 +23,13 @@ This project is being tightened toward launch as a CMS-first Eversolo brand site
|
||||
- Prefer compact admin groups, list-style arrays, and explicit per-locale documents for user-facing content.
|
||||
- Re-run `npm run generate:types`, `npm run build`, and the smoke check after schema or cache changes.
|
||||
- After restarting a local preview, check both `/en` and `/zh` for homepage, product detail, downloads, news, dealers, support, and admin access.
|
||||
|
||||
## Deployment Discipline
|
||||
|
||||
- Production uses migrations only. `PAYLOAD_DB_PUSH` must be `false`.
|
||||
- Production startup does not auto-run migrations by default. Run `npm run payload:migrate` as an explicit release step.
|
||||
- The local release database must not contain Payload's `dev` migration marker (`batch = -1`) before it is exported.
|
||||
- Local database exports must be paired with the same `media/` and `files/` directories.
|
||||
- Backfill scripts are manual release tools. They should be run before export, verified, and then treated as data already present in the production dump.
|
||||
- Production startup should fail fast if required secrets are missing instead of booting with development defaults.
|
||||
- `/api/health` should return `200` before traffic is switched to the deployment.
|
||||
|
||||
Reference in New Issue
Block a user