deploy-sh
deploy-sh
Zero-downtime bash deployment tool. Deploys over SSH, runs health checks, keeps N previous releases for instant rollback. Used in production at dozens of companies.
Installation
bpkg install visionmedia/deploy
Configuration
Create deploy.conf:
[production]
host deploy@prod.example.com
repo git@github.com:myorg/myapp.git
path /var/www/myapp
ref origin/main
keep 5
forward-agent yes
post-deploy "npm install && npm run build && pm2 restart myapp"
Usage
# Deploy to production
deploy production
# Rollback to previous release
deploy production rollback
# List releases
deploy production releases
# Run a command on the server
deploy production exec "pm2 status"