Skip to content

Running Pipelines

Basic usage

Run a pipeline by name:

Terminal window
pipe deploy

Pipe resolves the name through the alias chain, then Hub, then local files at ~/.pipe/files/.

Variable overrides

Pass variables as positional arguments after the pipeline name:

Terminal window
pipe deploy env=production tag=v1.2.0

These override any values in the pipeline’s vars section. See Variables & Templating for the full precedence chain.

Verbosity levels

FlagLevelBehavior
(none)WarnCompact mode — minimal output, suppresses info noise
-vInfoVerbose — shows step start/finish, variable resolution
-vvDebugDebug — includes internal details, env construction
Terminal window
pipe deploy -v # verbose
pipe deploy -vv # debug

Compact UI

At the default verbosity (no -v flag), Pipe shows a compact status display: a spinner with the current step name, replaced by a success or failure indicator when the step completes. This keeps the terminal clean for pipelines with many steps.

Logs

Run logs are written to ~/.pipe/logs/. Each run produces a log file identified by the run ID.

Log rotation

Control how many log files to keep with the PIPE_LOG_ROTATE environment variable:

Terminal window
export PIPE_LOG_ROTATE=10 # keep last 10 log files

Set to 0 to disable rotation (keep all logs). Unset or invalid values use the default.

State files

Each run saves its state to ~/.pipe/state/<pipeline>/. State files record which steps completed, their exit codes, and outputs (unless marked sensitive). This is what enables --resume — see Resuming Failed Runs.

State rotation

Control how many state files to keep with the PIPE_STATE_ROTATE environment variable:

Terminal window
export PIPE_STATE_ROTATE=5 # keep last 5 state files