Edited Sep 28, 5:45 PM by Jonas Weber
Production deploys pause on Fridays after 3pm unless the change fixes an active incident.
Before you deploy
- CI is green on
main - Migrations reviewed by a second engineer
- Risky changes are behind a feature flag
- Changelog entry added
Deploy to staging
terminalbash
1# Build and push the image2pnpm build3docker build -t registry.acme.dev/app:$(git rev-parse --short HEAD) .4docker push registry.acme.dev/app:$(git rev-parse --short HEAD)56# Roll out to staging7./scripts/deploy.sh stagingPromote to production
- Run the smoke suite against staging:
pnpm test:smoke --env staging. - Post the release notes in the team channel and tag the on-call engineer.
- Run
./scripts/deploy.sh productionand watch the error rate for 15 minutes.
Rollback
Run ./scripts/rollback.sh production to return to the previous image, then open an incident doc so the follow-up is tracked.
Comments