For the complete documentation index, see llms.txt. This page is also available as Markdown.

CLI

The Steadybit CLI runs experiments from your CI/CD pipeline and keeps your chaos engineering setup in Git: experiments, templates, schedules, services, service profiles, environments, teams, properties, and integrations. It is a single binary for Linux, macOS, and Windows that calls the API under the hood.

Installation

With Homebrew on macOS or Linux, which also installs the shell completions:

brew install steadybit/tap/steadybit

Alternatively:

  • Download the archive for your platform from the releases and put steadybit on your PATH:

    curl -sL https://github.com/steadybit/cli/releases/latest/download/steadybit_linux_amd64.tar.gz | tar -xz steadybit
    sudo mv steadybit /usr/local/bin/
  • Container image: steadybit/cli, for example docker run --rm -e STEADYBIT_TOKEN steadybit/cli experiment run -k ADM-1 --yes

  • GitHub Actions: uses: steadybit/cli@v6 installs the CLI on the runner.

  • Go: go install github.com/steadybit/cli/v6/cmd/steadybit@latest

Up to version 5, the CLI was an npm package. That package is no longer updated: uninstall it with npm uninstall -g steadybit and install the CLI as above. Commands, flags, and profiles in ~/.steadybit keep working.

The steadybit/run-experiment GitHub Action is deprecated in favor of the CLI, which does everything it does. Each of its inputs has an experiment run flag: see moving from steadybit/run-experiment.

Authentication

The CLI needs an access token. Store it in a profile:

steadybit config profile add

In a pipeline, set the environment variables STEADYBIT_TOKEN and, for an on-prem installation, STEADYBIT_URL instead.

Usage

Run an experiment in a pipeline. The command waits for the run and fails when the run fails, cancels the run when the pipeline is canceled, and writes a JUnit report:

Keep a team's experiments, schedules, services, and custom service profiles in Git:

Teams, environments, and the rest of the tenant's configuration can be kept in Git the same way: see Manage Teams and Environments as Code.

Every command documents its options and examples in --help, for example steadybit experiment run --help. The README covers everything else, including GitLab CI and shell completion.

Last updated

Was this helpful?