Skip to main content

Overview

The deployment-procedures skill teaches deployment principles and decision-making for safe production releases. It covers platform selection, pre-deployment verification, rollback strategies, and zero-downtime deployment patterns.

What This Skill Provides

  • Platform Selection: Choosing the right deployment platform
  • Pre-Deployment Checklist: Critical verifications before deploying
  • 5-Phase Deployment Process: Prepare, Backup, Deploy, Verify, Confirm
  • Rollback Strategies: When and how to rollback deployments
  • Zero-Downtime Patterns: Rolling, Blue-Green, Canary deployments
  • Emergency Procedures: Handling service outages
  • Decision-Making Framework: Principles over scripts

Philosophy

Learn to THINK, not memorize scripts. Every deployment is unique. Understand the WHY behind each step and adapt procedures to your platform.

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

Platform-Specific Methods

PlatformDeployment Method
Vercel/NetlifyGit push, auto-deploy
Railway/RenderGit push or CLI
VPS + PM2SSH + manual steps
DockerImage push + orchestration
Kuberneteskubectl apply

Pre-Deployment Principles

The 4 Verification Categories

CategoryWhat to Check
Code QualityTests passing, linting clean, reviewed
BuildProduction build works, no warnings
EnvironmentEnv vars set, secrets current
SafetyBackup 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

The 5-Phase Deployment Process

1. PREPARE
   └── Verify code, build, env vars

2. BACKUP
   └── Save current state before changing

3. DEPLOY
   └── Execute with monitoring open

4. VERIFY
   └── Health check, logs, key flows

5. CONFIRM or ROLLBACK
   └── All good? Confirm. Issues? Rollback.

Phase Principles

PhasePrinciple
PrepareNever deploy untested code
BackupCan’t rollback without backup
DeployWatch it happen, don’t walk away
VerifyTrust but verify
ConfirmHave rollback trigger ready

Use Cases

When to Use This Skill

  • Planning a production deployment
  • Setting up deployment pipelines
  • Handling deployment failures
  • Implementing rollback procedures
  • Choosing deployment strategies

Example Scenarios

  1. First Deploy: “Help me deploy this Next.js app to Vercel”
  2. Rollback: “The deployment broke production, how do I rollback?”
  3. Zero-Downtime: “Deploy without taking the site offline”
  4. Emergency: “Service is down after deployment”

Post-Deployment Verification

What to Verify

CheckWhy
Health endpointService is running
Error logsNo new errors
Key user flowsCritical features work
PerformanceResponse times acceptable

Verification Window

  • First 5 minutes: Active monitoring
  • 15 minutes: Confirm stable
  • 1 hour: Final verification
  • Next day: Review metrics

Rollback Principles

When to Rollback

SymptomAction
Service downRollback immediately
Critical errorsRollback
Performance >50% degradedConsider rollback
Minor issuesFix forward if quick

Rollback Strategy by Platform

PlatformRollback Method
Vercel/NetlifyRedeploy previous commit
Railway/RenderRollback in dashboard
VPS + PM2Restore backup, restart
DockerPrevious image tag
K8skubectl rollout undo

Rollback Principles

  1. Speed over perfection: Rollback first, debug later
  2. Don’t compound errors: One rollback, not multiple changes
  3. Communicate: Tell team what happened
  4. Post-mortem: Understand why after stable

Zero-Downtime Deployment

Strategies

StrategyHow It Works
RollingReplace instances one by one
Blue-GreenSwitch traffic between environments
CanaryGradual traffic shift

Selection Principles

ScenarioStrategy
Standard releaseRolling
High-risk changeBlue-green (easy rollback)
Need validationCanary (test with real traffic)

Emergency Procedures

Service Down Priority

  1. Assess: What’s the symptom?
  2. Quick fix: Restart if unclear
  3. Rollback: If restart doesn’t help
  4. Investigate: After stable

Investigation Order

CheckCommon Issues
LogsErrors, exceptions
ResourcesDisk full, memory
NetworkDNS, firewall
DependenciesDatabase, APIs

Anti-Patterns to Avoid

❌ Don’t✅ Do
Deploy on FridayDeploy early in week
Rush deploymentFollow the process
Skip stagingAlways test first
Deploy without backupBackup before deploy
Walk away after deployMonitor for 15+ min
Multiple changes at onceOne change at a time

Best Practices

  1. Small, frequent deploys over big releases
  2. Feature flags for risky changes
  3. Automate repetitive steps
  4. Document every deployment
  5. Review what went wrong after issues
  6. Test rollback before you need it
  • server-management: Server operations and monitoring
  • clean-code: Code quality before deployment
  • lint-and-validate: Pre-deployment validation
  • bash-linux: Server commands and scripts
  • powershell-windows: Windows deployment scripts

Which Agents Use This Skill

  • devops-engineer: Primary user for all deployment operations

Decision Checklist

Before deploying:
  • Platform-appropriate procedure?
  • Backup strategy ready?
  • Rollback plan documented?
  • Monitoring configured?
  • Team notified?
  • Time to monitor after?

Tools Available

  • Read, Glob, Grep: For checking deployment configs
  • Bash: For deployment commands

Remember: Every deployment is a risk. Minimize risk through preparation, not speed.

Build docs developers (and LLMs) love