Usage

Core commands for building, shipping, and rolling back.

Command syntax

shipctl <command> [subcommand] [flags]

Run shipctl help <command> for detailed help on any command.

Initialize a project

cd my-app
shipctl init

Creates a shipctl.toml in the current directory with sensible defaults.

Deploy

shipctl deploy --env staging

Dry run

Preview what would change without touching the target:

shipctl deploy --env production --dry-run

Deploy a specific ref

shipctl deploy --env production --ref v1.8.2

Check status

$ shipctl status --env production
ENV          REF      STATE     UPDATED
production   v1.8.2   healthy   3m ago

Rollback

shipctl rollback --env production --to v1.8.1
Tip: omit --to to roll back to the previous successful release.

View logs

shipctl logs --env staging --follow --since 10m

Global flags

FlagDescription
--env, -eTarget environment name
--config, -cPath to a config file (default ./shipctl.toml)
--verbose, -vPrint debug output
--jsonEmit machine-readable JSON
--yes, -ySkip confirmation prompts

Exit codes

CodeMeaning
0Success
1General error
2Invalid arguments or config
3Deploy failed health checks