@deployit/cli v1.0.41
š Deployit CLI Tool
A powerful CLI tool to deploy multiple apps with one command, using Git, PM2, and Node.js.
⨠Features
- Multi-App Deployment: Deploy multiple apps at once by selecting apps and ports.
- Git Sync: Optionally sync the latest remote repo before deploying.
- PM2 Process Manager: Restart or reload apps with zero downtime.
- Dry Run Mode: Simulate the entire deployment without making changes.
- Config File Support: Use
.deployrc.jsonfor easy setups. - Interactive Mode: Automatically prompts for missing options.
- Rollback on Failure: Automatically reverts to the previous working Git commit if a deployment fails.
- App Health Check: Pings the app after deployment to verify it's running.
- CI/CD Friendly: Usable in GitHub Actions or any CI pipeline.
š¦ Installation
Use directly with npx (no install needed):
npx deployit --project MyProject --app app1,app2 --port 3000,3001 --env dev --sync trueOr install globally:
pnpm add -g @deployit/cliThen:
deployit --project MyProject --app app1,app2 --port 3000,3001 --env prodāļø Usage
One-Line Command
npx deployit --project MyProject --app web,public --port 1440,1441 --env dev --sync true --dry-run false --health-check| Option | Description |
|---|---|
| --project | Name of the project |
| --app | Comma-separated list of apps |
| --port | Comma-separated list of ports |
| --env | Environment: dev or prod |
| --sync | Git sync before deployment: true or false |
| --dry-run | Simulate deployment without executing |
| --health-check | Perform a health check after app deployment |
š ļø Interactive Mode
If you run without enough arguments, the CLI will ask interactively:
npx deployitYou'll be prompted to enter project name, apps, ports, and environment.
š ļø .deployrc.json Config (Optional)
Create a .deployrc.json in your project root:
{
"project": "MyProject",
"app": ["web", "public"],
"env": "dev",
"ports": {
"web": 1440,
"public": 1441
}
}Then simply run:
npx deployitā
It will auto-read .deployrc.json!
š How It Works
- (Optional) Git Sync
- Save current Git commit hash
- Cleanup old PM2 apps
- Build your apps
- Start apps using PM2
- Health check the apps (optional)
- If any step fails, automatically rollback to the saved Git commit
šØ Exit Codes
| Situation | Exit Code |
|---|---|
| Success | 0 |
| App Build Failure | 1 |
| Invalid Arguments/Config | 2 |
| Git Sync Failure | 3 |
š License
MIT Ā© Deployit
7 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago