--- name: deploy description: "Deploys with pre-flight checks and health verification. Triggers: deploy, deployment, ship, release, push to prod." effort: medium disable-model-invocation: true argument-hint: "[environment]" allowed-tools: Bash, Read hooks: PostToolUse: - matcher: "Bash" hooks: - type: command command: "echo 'Reminder: verify health checks pass after deployment'" scripts: - scripts/pre_deploy_check.py --- # Deploy Application $ARGUMENTS Deploy application to target environment. ## Project context - Docker config: !`cat docker-compose.yml 2>/dev/null || cat Dockerfile 2>/dev/null || echo "no-docker"` ## Usage ``` /deploy [environment] ``` ## What This Command Does 1. **Validates** deployment prerequisites 2. **Runs** pre-deployment checks 3. **Executes** deployment 4. **Verifies** deployment success ## Environments | Environment | Description | |-------------|-------------| | `dev` | Development environment | | `staging` | Staging/QA environment | | `prod` | Production environment | ## Pre-Deployment Checklist Run automated pre-deployment checks: ```bash python3 ${CLAUDE_SKILL_DIR}/scripts/pre_deploy_check.py [environment] ``` Returns JSON with pass/fail for each check: - `git_clean` - no uncommitted changes - `branch` - on main/master for production - `docker` - services running (if applicable) - `env_file` - .env or .env.$ENV exists - `build_artifacts` - dist/build present - `tests_ran` - test result artifacts found Manual verification: - [ ] Tests passing - [ ] Build successful - [ ] Environment variables set - [ ] Secrets configured - [ ] Database migrations ready - [ ] Rollback plan documented ## Deployment Strategies | Strategy | Use Case | |----------|----------| | Rolling | Zero-downtime, gradual | | Blue-Green | Instant switch, easy rollback | | Canary | Risk mitigation, gradual traffic | | Recreate | Simple, allows downtime | ## Output Format ```markdown ## Deployment Report ### Status: Success / Failed ### Details - **Environment**: [env] - **Version**: [version] - **Started**: [timestamp] - **Completed**: [timestamp] ### Steps 1. [Step 1] - Done 2. [Step 2] - Done 3. [Step 3] - Failed (if failed) ### Health Check - [endpoint]: [status] ### Rollback If needed: `[rollback command]` ``` ## PRODUCTION SAFETY - Always deploy to staging first - Verify health checks pass - Have rollback plan ready - Monitor after deployment ## MANDATORY: Documentation Update After deployment, update documentation: ### Required Updates | Change Type | Update | |-------------|--------| | New release | CHANGELOG, release notes | | Config changes | Deployment docs, procedures | | New features | User documentation | | Infrastructure | `kb/procedures/deployment-*.md` | ### Post-Deployment Checklist - [ ] Deployment successful - [ ] Health checks passing - [ ] **CHANGELOG updated** - [ ] **Deployment docs updated** - [ ] Release notes created (if applicable)