59 lines
2.0 KiB
Markdown
59 lines
2.0 KiB
Markdown
|
|
# Production Release Checklist
|
||
|
|
|
||
|
|
Use this checklist before every production deployment.
|
||
|
|
|
||
|
|
## Code
|
||
|
|
|
||
|
|
- [ ] Working tree is clean.
|
||
|
|
- [ ] Latest commit is the intended release commit.
|
||
|
|
- [ ] `npm ci` succeeds from a clean install.
|
||
|
|
- [ ] `npm run typecheck` passes.
|
||
|
|
- [ ] `npm run build` passes.
|
||
|
|
- [ ] `npm run payload:migrate:status` shows all migrations as `Yes` on the release database.
|
||
|
|
- [ ] `payload_migrations` has no `batch = -1` dev marker before exporting/importing the database.
|
||
|
|
- [ ] No new user-facing fallback copy was introduced without a CMS field.
|
||
|
|
|
||
|
|
## Environment
|
||
|
|
|
||
|
|
- [ ] `NEXT_PUBLIC_SITE_URL` is the final public domain.
|
||
|
|
- [ ] `PAYLOAD_SECRET` is set and is not `change-me` or the example value.
|
||
|
|
- [ ] `DATABASE_URI` points to the production PostgreSQL database.
|
||
|
|
- [ ] `PAYLOAD_DB_PUSH=false` is set.
|
||
|
|
- [ ] `PAYLOAD_RUN_MIGRATIONS_ON_START=false` is set unless a one-off controlled migration boot is intentionally planned.
|
||
|
|
- [ ] Upload directories `media/` and `files/` are persistent and backed up.
|
||
|
|
|
||
|
|
## CMS Data
|
||
|
|
|
||
|
|
- [ ] English and Chinese homepage content render.
|
||
|
|
- [ ] Product list and at least one product detail page render in both locales.
|
||
|
|
- [ ] Downloads list and one download detail page render.
|
||
|
|
- [ ] News list and one news detail page render.
|
||
|
|
- [ ] Reviews page tabs render, with local media covers where present.
|
||
|
|
- [ ] Support page and video tutorials render, with local media covers.
|
||
|
|
- [ ] Dealers page map visibility matches CMS setting.
|
||
|
|
|
||
|
|
## Smoke Routes
|
||
|
|
|
||
|
|
Run:
|
||
|
|
|
||
|
|
```bash
|
||
|
|
npm run smoke -- "$NEXT_PUBLIC_SITE_URL"
|
||
|
|
```
|
||
|
|
|
||
|
|
Required manual spot checks:
|
||
|
|
|
||
|
|
- `/en`
|
||
|
|
- `/zh`
|
||
|
|
- `/en/products/dmp-a10`
|
||
|
|
- `/en/reviews?tab=reviews`
|
||
|
|
- `/en/support`
|
||
|
|
- `/en/support/tutorial`
|
||
|
|
- `/admin`
|
||
|
|
- `/api/health`
|
||
|
|
|
||
|
|
## Launch Notes
|
||
|
|
|
||
|
|
- Keep old production database and upload volume snapshots until the new release has passed smoke checks and editorial QA.
|
||
|
|
- If schema push or migration prompts appear during app startup, stop. Production startup should not be running schema push or migrations.
|
||
|
|
- If media thumbnails are missing, verify the upload volume before changing CMS records.
|