Last modified September 11, 2018

gsctl Reference

gsctl is the command line utility to manage your Giant Swarm clusters.


Follow the links below for detailed documentation, where available. You can also always use gsctl <command> --help.

Command Description
create cluster Create a new cluster
create keypair Create and download new key pair
create kubeconfig Create/download new key pair and update kubectl configuration
delete cluster Delete cluster
info Print information on status, configuration, and the installation
list endpoints List endpoints
list clusters List clusters
list organizations List organizations
list keypairs List key pairs
list releases List releases
login Sign in as a user
logout Sign out
ping Check API connection
scale cluster Add or remove worker nodes of a cluster
select endpoint Select an endpoint
show cluster Show cluster details
update organization set-credentials Set provider credentials for an organization
version Print version number

Installing and Updating

gsctl comes as a self-contained binary for Mac, Linux, and Windows. Below you find installation instructions for different platforms. If you want to build gsctl from source, find everything you need in its GitHub repository.

The current gsctl version is 0.13.0. Find details in the release notes.

Homebrew provides the most convenient way to install gsctl and keep it up to date. To install, use this command:

brew tap giantswarm/giantswarm
brew install gsctl

For updating:

brew upgrade gsctl

Execute the commands below to install the latest released version. The same commands work for upgrading from a previously installed version.

curl -O
tar xzf gsctl-0.13.0-darwin-amd64.tar.gz
sudo cp gsctl-0.13.0-darwin-amd64/gsctl /usr/local/bin/

Execute the commands below to install the latest released version. The same commands work for upgrading from a previously installed version.

curl -O
tar xzf gsctl-0.13.0-linux-amd64.tar.gz
sudo cp gsctl-0.13.0-linux-amd64/gsctl /usr/local/bin/

scoop enables convenient installs and updates for Windows PowerShell users. Before you can install gsctl for the first time, execute this:

scoop bucket add giantswarm

To install:

scoop install gsctl

To update:

scoop update gsctl
  • Download the 64 bit or 32 bit version of gsctl for Windows
  • Copy the contained gsctl.exe to a convenient location that's in your %PATH%, or add the gsctl.exe location to your %PATH%


gsctl keeps it’s own settings under $HOME/.config/gsctl/. There is a configuration file called config.yaml. Key pairs are stored in the certs subdirectory.

The following environment variables can be used to affect some behaviour:

  • GSCTL_ENDPOINT: This can be used to specify an API endpoint URL.
  • GSCTL_CAFILE: If your Giant Swarm API endpoint uses a certificate signed by an authority not known to your operating system, this variable can be set to the path of a custom CA (certification authority) bundle. A CA bundle is a text file containing one or more CA certificates in PEM format.
  • GSCTL_CAPATH: Similar to GSCTL_CAFILE, but GSCTL_CAPATH is expected to point to a directory containing one or more PEM files.
  • GSCTL_DISABLE_COLORS: When this variable is set to any non-empty string, all terminal output will be monochrome.
  • GSCTL_DISABLE_CMDLINE_TRACKING: When this variable is set to any non-empty string, command lines won’t be submitted to the API. Otherwise command lines are submitted to learn about the tool’s usage and find ways to improve.

In addition, global command-line options are available.

Known Bugs and Limitations

Check our issues with label kind/bug.


You’ll find info on changes in the release description.


We welcome your feedback on gsctl. If you feel like sharing openly, use the GitHub repository and create an issue, so other users can participate. Otherwise please use the common Giant Swarm support channels.