CLI
The speedctl command line tool is used to interact with Speedscale from your own terminal. speedctl
is the Speedscale
programmable API and the primary way to perform setup actions like installing the Speedscale Operator, generating manifests, etc.
If you are running Speedscale on a local desktop or in Docker Desktop, the CLI is required. For all other users it is highly recommended because it allows programmatic interaction with Speedscale cloud.
- MacOS
- Linux
- Windows
Start by installing the Speedscale CLI-based API (speedctl
) via Homebrew:
brew install speedscale/tap/speedctl
Or via the install script:
sh -c "$(curl -Lfs https://downloads.speedscale.com/speedctl/install)"
You can inspect the install script to see what it does. Root permission is not required to execute this script.
Install a specific version by passing it to the install script:
sh -c "$(curl -Lfs https://downloads.speedscale.com/speedctl/install)" -s v2.3.86
To install non interactively (like in CI/CD) set the SPEEDSCALE_API_KEY
environment variable to your API key
Optionally skip the install script and install manually:
# Download speedctl binary on your machine
curl "https://downloads.speedscale.com/speedctl/speedctl-darwin-$(case $(uname -m) in x86_64) echo 'amd64';; arm | arm64 | aarch64) echo 'arm64';; esac)" -o speedctl
# Create speedscale directory and move the binary to the directory
mkdir ~/.speedscale
mv ./speedctl ~/.speedscale
# Give execute permission to the binary
chmod +x ~/.speedscale/speedctl
Don't forget to add speedctl
to your $PATH
variable in your shell's rcfile:
# substitute your shell's rcfile
echo "export PATH=\$PATH:$HOME/.speedscale" >> ~/.zshrc
Linux users should install the CLI via the install script:
sh -c "$(curl -Lfs https://downloads.speedscale.com/speedctl/install)"
You can inspect the install script to see what it does. Root permission is not required to execute this script.
Install a specific version by passing it to the install script:
sh -c "$(curl -Lfs https://downloads.speedscale.com/speedctl/install)" -s v2.3.86
To install non interactively (like in CI/CD) set the SPEEDSCALE_API_KEY
environment variable to your API key
Optionally skip the install script and install manually:
# Download speedctl binary on your machine
curl "https://downloads.speedscale.com/speedctl/speedctl-linux-$(case $(uname -m) in x86_64) echo 'amd64';; arm | arm64 | aarch64) echo 'arm64';; esac)" -o speedctl
# Create speedscale directory and move the binary to the directory
mkdir ~/.speedscale
mv ./speedctl ~/.speedscale
# Give execute permission to the binary
chmod +x ~/.speedscale/speedctl
Don't forget to add speedctl
to your $PATH
variable in your shell's rcfile:
# substitute your shell's rcfile
echo "export PATH=\$PATH:$HOME/.speedscale" >> ~/.zshrc
Open PowerShell and create a Speedscale directory.
mkdir -f $env:userprofile\.speedscale
Download speedctl
into the Speedscale directory.
curl.exe -L "https://downloads.speedscale.com/speedctl/speedctl.exe" -o $env:userprofile\.speedscale\speedctl.exe
If this is your first time using speedctl
you may need to add the Speedscale
directory to your Path environment variable so it is accessible without knowing
the full path.
To add the Speedscale directory to your path, right click on the Windows button and click System.
Click Advanced system settings on the right.
Click Environment Variables.
Under System variables select Path and click Edit.
Create a New entry in the list with the Speedscale directory. If you are unsure of the exact path run this command from PowerShell.
echo $env:userprofile\.speedscale
Click OK and restart PowerShell.