Skip to content

The CodSpeed runner, gathering performance data from CI environments

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

CodSpeedHQ/runner

Repository files navigation

CodSpeed CLI

CLI to gather performance data and upload performance reports to CodSpeed

CI Discord CodSpeed Badge

The codspeed CLI is designed to be used both in local in CI environments.

The following CI providers are supported:

Other providers

If you want to use the CLI with another provider, you can open an issue or chat with us on Discord 🚀

You can check out the implementation of the supported providers for reference.

Installation

CODSPEED_RUNNER_VERSION=<insert-version> # refer to https://github.com/CodSpeedHQ/runner/releases for available versions
curl -fsSL https://github.com/CodSpeedHQ/runner/releases/download/$CODSPEED_RUNNER_VERSION/codspeed-runner-installer.sh | bash
source "$HOME/.cargo/env"

Refer to the releases page to see all available versions.

Usage

Note

For now, the CLI only supports Ubuntu 20.04, 22.04, 24.04 and Debian 11, 12.

First, authenticate with your CodSpeed account:

codspeed auth login

Then, run benchmarks with the following command:

codspeed run <my-benchmark-command>

# Example, using https://github.com/CodSpeedHQ/codspeed-rust
codspeed run cargo codspeed run

# Example, using https://github.com/CodSpeedHQ/pytest-codspeed
codspeed run pytest ./tests --codspeed

# Example, using https://github.com/CodSpeedHQ/codspeed-node/tree/main/packages/vitest-plugin
codspeed run pnpm vitest bench
Usage: codspeed run [OPTIONS] [COMMAND]...

Arguments:
  [COMMAND]...  The bench command to run

Options:
      --upload-url <UPLOAD_URL>
          The upload URL to use for uploading the results, useful for on-premises installations
      --token <TOKEN>
          The token to use for uploading the results, if not provided it will be read from the CODSPEED_TOKEN environment variable
      --working-directory <WORKING_DIRECTORY>
          The directory where the command will be executed
  -h, --help
          Print help

Logging level

Use the CODSPEED_LOG environment variable to set the logging level:

CODSPEED_LOG=debug codspeed run ...