Deployment Procedures
> Deployment principles and decision-making for safe production releases.
> Learn to THINK, not memorize scripts.
⚠️ How to Use This Skill
This skill teaches deployment principles, not bash scripts to copy.
Every deployment is uniqueUnderstand the WHY behind each stepAdapt procedures to your platform
1. Platform Selection
Decision Tree
What are you deploying?
│
├── Static site / JAMstack
│ └── Vercel, Netlify, Cloudflare Pages
│
├── Simple web app
│ ├── Managed → Railway, Render, Fly.io
│ └── Control → VPS + PM2/Docker
│
├── Microservices
│ └── Container orchestration
│
└── Serverless
└── Edge functions, Lambda
Each Platform Has Different Procedures
| Platform | Deployment Method |
|---|
| Vercel/Netlify | Git push, auto-deploy |
| Railway/Render | Git push or CLI |
| VPS + PM2 | SSH + manual steps |
| Docker | Image push + orchestration |
| Kubernetes | kubectl apply |
2. Pre-Deployment Principles
The 4 Verification Categories
| Category | What to Check |
|---|
| Code Quality | Tests passing, linting clean, reviewed |
| Build | Production build works, no warnings |
| Environment | Env vars set, secrets current |
| Safety | Backup done, rollback plan ready |
Pre-Deployment Checklist
[ ] All tests passing[ ] Code reviewed and approved[ ] Production build successful[ ] Environment variables verified[ ] Database migrations ready (if any)[ ] Rollback plan documented[ ] Team notified[ ] Monitoring ready
3. Deployment Workflow Principles
The 5-Phase Process
1. PREPARE
└── Verify code, build, env varsBACKUP
└── Save current state before changingDEPLOY
└── Execute with monitoring openVERIFY
└── Health check, logs, key flowsCONFIRM or ROLLBACK
└── All good? Confirm. Issues? Rollback.
Phase Principles
| Phase | Principle |
|---|
| Prepare | Never deploy untested code |
| Backup | Can't rollback without backup |
| Deploy | Watch it happen, don't walk away |
| Verify | Trust but verify |
| Confirm | Have rollback trigger ready |
4. Post-Deployment Verification
What to Verify
| Check | Why |
|---|
| Health endpoint | Service is running |
| Error logs | No new errors |
| Key user flows | Critical features work |
| Performance | Response times acceptable |
Verification Window
First 5 minutes: Active monitoring15 minutes: Confirm stable1 hour: Final verificationNext day: Review metrics
5. Rollback Principles
When to Rollback
| Symptom | Action |
|---|
| Service down | Rollback immediately |
| Critical errors | Rollback |
| Performance >50% degraded | Consider rollback |
| Minor issues | Fix forward if quick |
Rollback Strategy by Platform
| Platform | Rollback Method |
|---|
| Vercel/Netlify | Redeploy previous commit |
| Railway/Render | Rollback in dashboard |
| VPS + PM2 | Restore backup, restart |
| Docker | Previous image tag |
| K8s | kubectl rollout undo |
Rollback Principles
Speed over perfection: Rollback first, debug laterDon't compound errors: One rollback, not multiple changesCommunicate: Tell team what happenedPost-mortem: Understand why after stable
6. Zero-Downtime Deployment
Strategies
| Strategy | How It Works |
|---|
| Rolling | Replace instances one by one |
| Blue-Green | Switch traffic between environments |
| Canary | Gradual traffic shift |
Selection Principles
| Scenario | Strategy |
|---|
| Standard release | Rolling |
| High-risk change | Blue-green (easy rollback) |
| Need validation | Canary (test with real traffic) |
7. Emergency Procedures
Service Down Priority
Assess: What's the symptom?Quick fix: Restart if unclearRollback: If restart doesn't helpInvestigate: After stableInvestigation Order
| Check | Common Issues |
|---|
| Logs | Errors, exceptions |
| Resources | Disk full, memory |
| Network | DNS, firewall |
| Dependencies | Database, APIs |
8. Anti-Patterns
| ❌ Don't | ✅ Do |
|---|
| Deploy on Friday | Deploy early in week |
| Rush deployment | Follow the process |
| Skip staging | Always test first |
| Deploy without backup | Backup before deploy |
| Walk away after deploy | Monitor for 15+ min |
| Multiple changes at once | One change at a time |
9. Decision Checklist
Before deploying:
[ ] Platform-appropriate procedure?[ ] Backup strategy ready?[ ] Rollback plan documented?[ ] Monitoring configured?[ ] Team notified?[ ] Time to monitor after?
10. Best Practices
Small, frequent deploys over big releasesFeature flags for risky changesAutomate repetitive stepsDocument every deploymentReview what went wrong after issuesTest rollback before you need it
> Remember: Every deployment is a risk. Minimize risk through preparation, not speed.