Skip to content

bitrise-io/bitrise-cli

Repository files navigation

Bitrise Platform CLI

A CLI tool to manage all Bitrise platform resources — CI, RM, RDE, and more — from your terminal.

Installation

Quick install (recommended)

curl -fsSL https://app.bitrise.io/cli/install.sh | bash

This downloads the latest release for your OS and architecture, verifies its checksum, and installs the bitrise-cli binary to ~/.local/bin (no sudo). Make sure ~/.local/bin is on your PATH — it is by default on many systems; otherwise add it.

Two environment variables tweak the install:

  • BITRISE_CLI_INSTALL_DIR — install elsewhere, e.g. BITRISE_CLI_INSTALL_DIR=/usr/local/bin (which may need sudo).
  • BITRISE_CLI_VERSION — pin a specific release instead of the latest, e.g. BITRISE_CLI_VERSION=v0.2.0.

Prebuilt binaries are published for macOS and Linux on amd64 and arm64. On Windows, use the manual download below.

Manual download

Grab the archive for your platform from the latest release, extract it, and put bitrise-cli on your PATH. Each release also lists a ready-to-paste curl command. This is the path for Windows (.zip) and for anyone who prefers not to pipe a script to a shell.

Build from source

Requires a Go toolchain — mainly for contributors.

go install github.com/bitrise-io/bitrise-cli@latest

This installs the bitrise-cli binary into $(go env GOPATH)/bin (make sure that directory is on your PATH). Or build from a checkout:

git clone https://github.com/bitrise-io/bitrise-cli.git
cd bitrise-cli
make build       # produces ./bitrise-cli at the repo root

Binary name and the br alias

The shipped binary is named bitrise-cli. If you'd like a shorter command, add a shell alias yourself — e.g. alias br='bitrise-cli'. Note that br is not shipped as the binary name: it collides with broot, which installs a br shell function, so the alias is left to your discretion.

Authentication

Once installed, sign in. The simplest way is through the browser:

bitrise-cli auth login --oauth    # sign in via the browser (auto-refreshed)

This stores a Personal Access Token and keeps it fresh in the background, so you rarely need to sign in again. (Browser sign-in needs the browser on the same machine as the CLI; on a remote/headless host, paste a token instead.)

You can also save a token directly, or sign in with email/password:

bitrise-cli auth login            # prompts for a token
echo "$BITRISE_TOKEN" | bitrise-cli auth login --with-token   # non-interactive
bitrise-cli auth login --email you@example.com                # email/password

The token can also be supplied per-invocation via the BITRISE_TOKEN environment variable. See bitrise-cli auth --help for details.

Commands

This overview is generated from the command definitions — regenerate with make docs. Each entry links to a full reference page (flags, examples, details) under docs/cli.

app — List, inspect, and manage apps

Command Description
app create Register a new app on Bitrise
app list List apps the authenticated user can access
app view Show details of a single app

auth — Manage the Bitrise access token

Command Description
auth login Save a Bitrise access token
auth logout Remove the saved access token
auth status Show whether an access token is configured and where it came from

build — Trigger, list, and inspect builds

Command Description
build abort Abort a running or queued build
build list List builds for an app
build log Print the build log
build trigger Start a new build
build view Show details of a single build
build watch Stream logs for a running build
build yml Print the bitrise.yml a specific build ran with

completion — Generate the autocompletion script for the specified shell

Command Description
completion bash Generate the autocompletion script for bash
completion fish Generate the autocompletion script for fish
completion powershell Generate the autocompletion script for powershell
completion zsh Generate the autocompletion script for zsh

config — Manage CLI configuration (defaults persisted to a YAML file)

Command Description
config get Print the value of a single config key (raw, unmasked)
config list List the current config-file values
config path Print the absolute path of the config file
config set Set a config key and save the file
config unset Remove a config key and save the file

rde — Manage Bitrise Remote Dev Environments (sessions, templates, …)

Command Description
rde claude Create an RDE session and attach to Claude Code
rde image list List machine images
rde machine-type list List machine types compatible with a given image
rde saved-input create Create a new saved input
rde saved-input delete Delete a saved input
rde saved-input list List saved inputs for the authenticated user
rde saved-input update Update a saved input's value and/or secret flag
rde saved-input view Show details of a single saved input
rde session create Create a new RDE session from a template
rde session delete Permanently delete a session
rde session delete-terminated Permanently delete every terminated session in the workspace
rde session diff Compare a session's template snapshot with the current template
rde session download Download a file or directory from a session
rde session exec Run a bash command on a session over SSH
rde session list List RDE sessions in the workspace
rde session logs Print a session's warmup or startup logs
rde session notifications List notifications emitted by a session
rde session open-vnc Open a session's VNC endpoint in the OS-default viewer
rde session restore Restore a terminated session (re-provisions its VM from the persistent disk)
rde session terminate Terminate a running session (preserves it for later restart)
rde session update Update a session's name, description, or auto-terminate duration
rde session upload Upload a local file or directory into a session
rde session view Show details of a single session
rde session vnc Print VNC connection credentials for a session
rde template create Create a new RDE template from a JSON spec file
rde template delete Delete an RDE template
rde template list List RDE templates in the workspace
rde template update Update an existing RDE template from a JSON spec file
rde template view Show details of a single template

stack — List available stacks

Command Description
stack list List available stacks and their machine configurations

step — Search steps and inspect their inputs

Command Description
step inputs List inputs of a step version
step search Find steps by name, description, or tags

user — Create and manage your Bitrise account

Command Description
user create Create a new Bitrise account
user me Show the currently authenticated user

yml — Get, update, or validate the bitrise.yml stored on Bitrise

Command Description
yml get Print the bitrise.yml stored on Bitrise
yml update Upload a new bitrise.yml to Bitrise
yml validate Validate a bitrise.yml file

Other commands

Command Description
api Make an authenticated request to the Bitrise API
version Print version, commit, and build info

Shell completion

Tab-completion is available for all commands, subcommands, flags, and known flag values.

Shell Load now Make permanent
bash source <(bitrise-cli completion bash) add to ~/.bashrc
zsh source <(bitrise-cli completion zsh) add to ~/.zshrc
fish bitrise-cli completion fish | source bitrise-cli completion fish > ~/.config/fish/completions/bitrise-cli.fish
PowerShell bitrise-cli completion powershell | Out-String | Invoke-Expression add to $PROFILE

License

Released under the MIT License.

About

Bitrise Platform CLI

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages