/rollback-deploy
Rollback deployment to previous version with safety checks, database considerations, and monitoring
$ npx -y skills add davila7/claude-code-templates --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/rollback-deploy
Context preview
What this command does when you run it.
Rollback deployment to previous version with safety checks, database considerations, and monitoring
Command definition
rollback-deploy.mdallowed-tools: Read, Edit, Bash
argument-hint: [target-version] | --previous | --emergency | --validate-first | --with-db
description: Rollback deployment to previous version with safety checks, database considerations, and monitoring
Deployment Rollback
Rollback deployment to previous version: $ARGUMENTS
Current Deployment State
- Current version: !`curl -s https://api.example.com/version 2>/dev/null || kubectl get deployments -o wide 2>/dev/null | head -3 || echo "Version detection needed"`
- Available versions: !`git tag --sort=-version:refname | head -5`
- Container status: !`docker ps --format "table {{.Names}}\t{{.Image}}\t{{.Status}}" 2>/dev/null | head -5 || echo "No containers"`
- K8s deployments: !`kubectl get deployments 2>/dev/null || echo "No K8s access"`
- Health status: !`curl -sf https://api.example.com/health 2>/dev/null && echo "✅ Healthy" || echo "❌ Unhealthy"`
Emergency Rollback Protocol
Systematic rollback procedure: $ARGUMENTS
1. **Incident Assessment and Decision**
- Assess the severity and impact of the current deployment issues
- Determine if rollback is necessary or if forward fix is better
- Identify affected systems, users, and business functions
- Consider data integrity and consistency implications
- Document the decision rationale and timeline
2. **Emergency Response Setup**
# Activate incident response team
# Set up communication channels
# Notify stakeholders immediately
# Example emergency notification
echo "🚨 ROLLBACK INITIATED
Issue: Critical performance degradation after v1.3.0 deployment
Action: Rolling back to v1.2.9
ETA: 15 minutes
Impact: Temporary service interruption possible
Status channel: #incident-rollback-202401"
3. **Pre-Rollback Safety Checks**
# Verify current production version
curl -s https://api.example.com/version
kubectl get deployments -o wide
# Check system status
curl -s https://api.example.com/health | jq .
# Identify target rollback version
git tag --sort=-version:refname | head -5
# Verify rollback target exists and is deployable
git show v1.2.9 --stat
4. **Database Considerations**
# Check for database migrations since last version
./check-migrations.sh v1.2.9 v1.3.0
# If migrations exist, plan database rollback
# WARNING: Database rollbacks can cause data loss
# Consider forward fix instead if migrations are present
# Create database backup before rollback
./backup-database.sh "pre-rollback-$(date +%Y%m%d-%H%M%S)"
5. **Traffic Management Preparation**
# Prepare to redirect traffic
# Option 1: Maintenance page
./enable-maintenance-mode.sh
# Option 2: Load balancer management
./drain-traffic.sh --gradual
# Option 3: Circuit breaker activation
./activate-circuit-breaker.sh
6. **Container/Kubernetes Rollback**
# Kubernetes rollback
kubectl rollout history deployment/app-deployment
kubectl rollout undo deployment/app-deployment
# Or rollback to specific revision
kubectl rollout undo deployment/app-deployment --to-revision=3
# Monitor rollback progress
kubectl rollout status deployment/app-deployment --timeout=300s
# Verify pods are running
kubectl get pods -l app=your-app
7. **Docker Swarm Rollback**
# List service history
docker service ps app-service --no-trunc
# Rollback to previous version
docker service update --rollback app-service
# Or update to specific image
docker service update --image app:v1.2.9 app-service
# Monitor rollback
docker service ps app-service
8. **Traditional Deployment Rollback**
# Blue-Green deployment rollback
./switch-to-blue.sh # or green, depending on current
# Rolling deployment rollback
./deploy-version.sh v1.2.9 --rolling
# Symlink-based rollback
ln -sfn /releases/v1.2.9 /current
sudo systemctl restart app-service
9. **Load Balancer and CDN Updates**
# Update load balancer to point to old version
aws elbv2 modify-target-group --target-group-arn $TG_ARN --targets Id=old-instance
# Clear CDN cache if needed
aws cloudfront create-invalidation --distribution-id $DIST_ID --paths \"/*\"
# Update DNS if necessary (last resort, has propagation delay)
# aws route53 change-resource-record-sets ...
10. **Configuration Rollback**
Read more
allowed-tools: Read, Edit, Bash argument-hint: [target-version] | --previous | --emergency | --validate-first | --with-db description: Rollback deployment to previous version with safety checks, database considerations, and monitoring
Deployment Rollback
Rollback deployment to previous version: $ARGUMENTS
Current Deployment State
- Current version: !`curl -s https://api.example.com/version 2>/dev/null || kubectl get deployments -o wide 2>/dev/null | head -3 || echo "Version detection needed"`
- Available versions: !`git tag --sort=-version:refname | head -5`
- Container status: !`docker ps --format "table {{.Names}}\t{{.Image}}\t{{.Status}}" 2>/dev/null | head -5 || echo "No containers"`
- K8s deployments: !`kubectl get deployments 2>/dev/null || echo "No K8s access"`
- Health status: !`curl -sf https://api.example.com/health 2>/dev/null && echo "✅ Healthy" || echo "❌ Unhealthy"`
Emergency Rollback Protocol
Systematic rollback procedure: $ARGUMENTS
1. **Incident Assessment and Decision**
- Assess the severity and impact of the current deployment issues
- Determine if rollback is necessary or if forward fix is better
- Identify affected systems, users, and business functions
- Consider data integrity and consistency implications
- Document the decision rationale and timeline
2. **Emergency Response Setup**
# Activate incident response team # Set up communication channels # Notify stakeholders immediately # Example emergency notification echo "🚨 ROLLBACK INITIATED Issue: Critical performance degradation after v1.3.0 deployment Action: Rolling back to v1.2.9 ETA: 15 minutes Impact: Temporary service interruption possible Status channel: #incident-rollback-202401"
3. **Pre-Rollback Safety Checks**
# Verify current production version curl -s https://api.example.com/version kubectl get deployments -o wide # Check system status curl -s https://api.example.com/health | jq . # Identify target rollback version git tag --sort=-version:refname | head -5 # Verify rollback target exists and is deployable git show v1.2.9 --stat
4. **Database Considerations**
# Check for database migrations since last version ./check-migrations.sh v1.2.9 v1.3.0 # If migrations exist, plan database rollback # WARNING: Database rollbacks can cause data loss # Consider forward fix instead if migrations are present # Create database backup before rollback ./backup-database.sh "pre-rollback-$(date +%Y%m%d-%H%M%S)"
5. **Traffic Management Preparation**
# Prepare to redirect traffic # Option 1: Maintenance page ./enable-maintenance-mode.sh # Option 2: Load balancer management ./drain-traffic.sh --gradual # Option 3: Circuit breaker activation ./activate-circuit-breaker.sh
6. **Container/Kubernetes Rollback**
# Kubernetes rollback kubectl rollout history deployment/app-deployment kubectl rollout undo deployment/app-deployment # Or rollback to specific revision kubectl rollout undo deployment/app-deployment --to-revision=3 # Monitor rollback progress kubectl rollout status deployment/app-deployment --timeout=300s # Verify pods are running kubectl get pods -l app=your-app
7. **Docker Swarm Rollback**
# List service history docker service ps app-service --no-trunc # Rollback to previous version docker service update --rollback app-service # Or update to specific image docker service update --image app:v1.2.9 app-service # Monitor rollback docker service ps app-service
8. **Traditional Deployment Rollback**
# Blue-Green deployment rollback ./switch-to-blue.sh # or green, depending on current # Rolling deployment rollback ./deploy-version.sh v1.2.9 --rolling # Symlink-based rollback ln -sfn /releases/v1.2.9 /current sudo systemctl restart app-service
9. **Load Balancer and CDN Updates**
# Update load balancer to point to old version aws elbv2 modify-target-group --target-group-arn $TG_ARN --targets Id=old-instance # Clear CDN cache if needed aws cloudfront create-invalidation --distribution-id $DIST_ID --paths \"/*\" # Update DNS if necessary (last resort, has propagation delay) # aws route53 change-resource-record-sets ...
10. **Configuration Rollback**
Ready-to-use configurations for Anthropic's Claude Code. A comprehensive collection of AI agents, custom commands, settings, hooks, external integrations (MCPs), and project templates to enhance your development workflow.
Repo: davila7/claude-code-templates
Other commands on claude-code-templates.
- /cleanup-cache
Clean system caches (npm, Homebrew, Yarn, browsers, Python/ML) to free disk space
Open command - /create-blog-article
Create an SEO-optimized blog article for a Claude Code component with AI-generated cover image
Open command - /lint
Run Python code linting and formatting tools.
Open command - /test
Run Python tests with pytest, unittest, or other testing frameworks.
Open command - /worktree-check
Check current worktree status, branch, and assigned task
Open command - /worktree-cleanup
Clean up merged worktrees and their branches
Open command

