| name | deploy |
| description | Deploys application code to Elastic Beanstalk environments, manages versions, rollbacks, and deployment strategies. Use when user says "deploy", "push to EB", "eb deploy", "release", "rollback", "revert", "deploy to production", "CI/CD", "create version", ".ebignore", "deployment strategy", "eb codesource", "CodeCommit", "eb local", or "test locally". For environment creation use environment skill. |
| compatibility | Requires EB CLI (awsebcli) and AWS CLI with configured credentials. |
| license | MIT |
| allowed-tools | ["Bash"] |
| metadata | {"author":"shinmc","version":"1.0.0"} |
Deploy to Elastic Beanstalk
Deploy application code, manage versions, rollback, and configure deployment strategies using the EB CLI.
When to Use
- Deploy code to an environment
- Rollback to a previous version
- Configure deployment strategies (rolling, immutable, etc.)
- Create application versions without deploying
- Set up CI/CD integration
- Configure
.ebignore
- Configure CodeCommit as deploy source
- Test Docker app locally before deploying
When NOT to Use
- Creating new environments → use
environment skill
- Checking status after deploy → use
status skill
- Viewing deployment logs → use
logs skill
- Changing configuration settings → use
config skill
Pre-Deploy Checklist
eb status
eb health
If health is Red or environment is Updating, do NOT deploy. Fix issues first.
Quick Deploy
eb deploy
Deploy to specific environment:
eb deploy <env-name>
Deploy with Version Label
eb deploy --label "v1.2.3"
eb deploy --label "v1.2.3" --message "Release v1.2.3 - Bug fixes"
Deploy Staged Changes Only
eb deploy --staged
Deploy Existing Version
eb deploy --version <version-label>
Create Version Without Deploying
eb deploy --process
Monitor Deployment
eb events --follow
Post-Deploy Verification
eb status
eb health
eb events
eb open
Look for:
- "New application version was deployed" — success
- "Environment health has transitioned from Ok to ..." — health degradation
- "Rolling back to version" — automatic rollback triggered
Rollback
eb appversion
eb deploy --version <previous-version>
eb status
eb health
Deployment Strategies
- AllAtOnce (Default) — Fastest, causes downtime
- Rolling — Updates in batches, maintains capacity
- RollingWithAdditionalBatch — Maintains full capacity
- Immutable — Safest, deploys to new instances
- TrafficSplitting — Canary deployments
- Blue/Green — CNAME swap (see
environment skill)
Configure via eb config:
aws:elasticbeanstalk:command:
DeploymentPolicy: Rolling
BatchSize: '30'
BatchSizeType: Percentage
.ebignore File
node_modules/
.venv/
__pycache__/
dist/
build/
.env
.env.local
.idea/
.vscode/
.git/
Code Source (CodeCommit Integration)
eb codesource
eb codesource codecommit
eb codesource local
Note: CodeCommit integration is not available in all AWS Regions.
Local Testing (Docker)
Test Docker-based apps locally before deploying. Requires Docker installed. Linux/macOS only.
eb local run
eb local run --port 8080
eb local status
eb local open
eb local logs
eb local setenv KEY=value
eb local printenv
CI/CD Integration
eb deploy --nohang
eb status --wait
eb health
Composability
- Check status after deploy: Use
status skill
- View deployment logs: Use
logs skill
- Change deployment config: Use
config skill
- Create new environment: Use
environment skill
- Manage app versions: Use
app skill
Additional Resources