Last modified September 15, 2022

kubectl-gs reference

kubectl-gs is a CLI and a kubectl plugin (invoked as kubectl gs) for the Giant Swarm Management API.

Note: Management API support is under active development. Supported functionality depends on the provider and the workload cluster release used. Please pay attention to the compatibility information given on the individual command reference pages.


CommandDescriptionProvider info
loginEnsure an authenticated kubectl contextall providers
get appsList apps or get details on a single appall providers
get catalogsList catalogs or get details on a single catalogall providers
get clustersList clusters or get details on a single clusteronly AWS, Azure
get nodepoolsList node pools or get details on a single node poolonly AWS, Azure
get organizationsList organizations or get details on a single organizationall providers
get releasesList releases or get details on a single releaseall providers
gitopsGathers GitOps related subcommandN/A
template appCreate manifests for an appall providers
template catalogCreate manifests for a catalogall providers
template clusterCreate manifests for a clusteronly AWS, Azure
template nodepoolCreate manifests for a node poolonly AWS, Azure
template organizationCreate manifest for an organizationall providers
update appUpdate given Appall providers
update clusterSchedule a cluster updateonly AWS, Azure
helpGet help for a commandprovider independent

Deprecated commands:


--v, --versionVersion for kubectl gs.

Global flags

--asUsername to impersonate for the operation. User could be a regular user or a service account in a namespace.
--as-groupGroup to impersonate for the operation, this flag can be repeated to specify multiple groups.
--as-uidUID to impersonate for the operation.
--cache-dirDefault cache directory.
--certificate-authorityPath to a cert file for the certificate authority.
--client-certificatePath to a client certificate file for TLS.
--client-keyPath to a client key file for TLS.
--clusterThe name of the kubeconfig cluster to use.
--contextThe name of the kubeconfig context to use.
--debugToggle debug mode, for seeing full error output.
--disable-version-checkDisable self-update version check.
-h, --helpHelp for kubectl gs.
--insecure-skip-tls-verifyIf true, the server’s certificate will not be checked for validity. This will make your HTTPS connections insecure.
--kubeconfigPath to the kubeconfig file to use for CLI requests.
-n, --namespaceIf present, the namespace scope for this CLI request.
--request-timeoutThe length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don’t timeout requests. (default “0”)
-s, --serverThe address and port of the Kubernetes API server
--tls-server-nameServer name to use for server certificate validation. If it is not provided, the hostname used to contact the server is used
--tokenBearer token for authentication to the API server
--userThe name of the kubeconfig user to use

Installing and updating

With Krew, simply install and upgrade the gs plug-in:

kubectl krew install gs
kubectl krew upgrade gs

Find out more details in our installation docs.


Otherwise, your Giant Swarm support staff is available for you in case you run into an issue. Also feel free to check our frequently asked questions on kubectl-gs.


See the GitHub project for source code, issues and pull requests.

As a Giant Swarm customer, feel free to use your Slack channel to give feedback, ask questions and suggest improvements for kubectl-gs.