gsctl

command module
v0.0.0-...-2caf503 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 28, 2023 License: Apache-2.0 Imports: 5 Imported by: 0

README

gsctl - The Giant Swarm CLI (deprecated)

gsctl and the REST API are being phased out. We recommend to familiarize yourself with our Management API and the kubectl gs plugin as a future-proof replacement.

For customers still using the Giant Swarm REST API, gsctl is a cross-platform command line utility to manage clusters.

Usage

Call gsctl without any arguments to get an overview on commands. Some usage examples:

Log in using your Giant Swarm credentials
$ gsctl login demo@example.com -e <giant-swarm-api-endpoint>
Password for demo@example.com at <giant-swarm-api-endpoint>:
Successfully logged in!
Show your clusters
$ gsctl list clusters
ID     NAME                CREATED                 ORGANIZATION
9gxjo  Production Cluster  2016 Apr 30, 15:43 UTC  acme
xl8t1  Staging Cluster     2017 May 11, 09:30 UTC  acme
Create a cluster
$ gsctl create cluster --owner acme --name "Test Cluster" --num-workers 5
Requesting new cluster for organization 'acme'
New cluster with ID 'h8d0j' is launching.

More in the docs

Configure kubectl to access a cluster
$ gsctl create kubeconfig -c h8d0j
Creating new key pair…
New key pair created with ID 153a93201… and expiry of 720 hours
Certificate and key files written to:
/Users/demo/.config/gsctl/certs/h8d0j-ca.crt
/Users/demo/.config/gsctl/certs/h8d0j-153a932010-client.crt
/Users/demo/.config/gsctl/certs/h8d0j-153a932010-client.key
Switched to kubectl context 'giantswarm-xl8t1'

kubectl is set up. Check it using this command:

    kubectl cluster-info

Whenever you want to switch to using this context:

    kubectl config use-context giantswarm-xl8t1

Note: You can launch the context using Kubie by using --kubie switch

Cluster acccess via internal networks

The internal Kubernetes API endpoint allows you to talk to Kubernetes via the internal load balancer. That can be useful for peered networks.

In case you want to use the internal Kubernetes API, pass --internal-api=true to gsctl when creating a kubectl config entry:

gsctl create kubeconfig -c h8d0j --internal-api=true

This will render a kubeconfig with the internal Kubernetes API host name internal-api, resolving to the internal load balancer.

Note: The internal API endpoint is available only on AWS installations.

Install

See the gsctl reference docs

Configuration

See the gsctl reference docs

Changelog

See Releases

Development

See docs/Development.md

Contributing

We welcome contributions! Please read our additional information on how to contribute for details.

Publishing a Release

See docs/Release.md

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Package buildinfo defines variables which are set by the Go linker on build time using ldflags.
Package buildinfo defines variables which are set by the Go linker on build time using ldflags.
Package capabilities provides an service to find out which capabilities/functions a workload cluster on the given installation will provide.
Package capabilities provides an service to find out which capabilities/functions a workload cluster on the given installation will provide.
create/cluster
Package cluster defines the 'create cluster' command.
Package cluster defines the 'create cluster' command.
create/keypair
Package keypair implements the 'create keypair' command.
Package keypair implements the 'create keypair' command.
create/kubeconfig
Package kubeconfig implements the 'create kubeconfig' command.
Package kubeconfig implements the 'create kubeconfig' command.
create/nodepool
Package nodepool implements the "create nodepool" command.
Package nodepool implements the "create nodepool" command.
delete/cluster
Package cluster implements the 'delete cluster' sub-command.
Package cluster implements the 'delete cluster' sub-command.
delete/endpoint
Package endpoint implements the 'delete endpoint' sub-command.
Package endpoint implements the 'delete endpoint' sub-command.
delete/nodepool
Package nodepool implements the "delete nodepool" command.
Package nodepool implements the "delete nodepool" command.
errors
Package errors defines errors that can occur in command/input validation and execution and ways to handle those.
Package errors defines errors that can occur in command/input validation and execution and ways to handle those.
list
Package list holds the 'list *' sub-commands.
Package list holds the 'list *' sub-commands.
list/clusters
Package clusters implements the 'list clusters' sub-command.
Package clusters implements the 'list clusters' sub-command.
list/endpoints
Package endpoints implements the 'list endpoints' sub-command.
Package endpoints implements the 'list endpoints' sub-command.
list/keypairs
Package keypairs implements the 'list keypairs' sub-command.
Package keypairs implements the 'list keypairs' sub-command.
list/nodepools
Package nodepools implements the 'list nodepools' sub-command.
Package nodepools implements the 'list nodepools' sub-command.
list/organizations
Package organizations implements the 'list organizations' sub-command.
Package organizations implements the 'list organizations' sub-command.
list/releases
Package releases implements the 'list releases' sub-command.
Package releases implements the 'list releases' sub-command.
logout
Package logout implements the logout command.
Package logout implements the logout command.
ping
Packe ping implements the ping command.
Packe ping implements the ping command.
scale/cluster
Package cluster implements the 'scale cluster' command.
Package cluster implements the 'scale cluster' command.
show/cluster
Package cluster implements the 'show cluster' command.
Package cluster implements the 'show cluster' command.
show/nodepool
Package nodepool implements the 'show nodepool' command.
Package nodepool implements the 'show nodepool' command.
show/release
Package release implements the 'show release' command.
Package release implements the 'show release' command.
types
Package types defines types to be used in several commands.
Package types defines types to be used in several commands.
update/cluster
Package cluster implements the "update cluster" command.
Package cluster implements the "update cluster" command.
update/nodepool
Package nodepool implements the "update nodepool" command.
Package nodepool implements the "update nodepool" command.
Package nodespec gives us access to provider-specific node specification.
Package nodespec gives us access to provider-specific node specification.
pkg
Package webui provides a method to find the Web UI (happa) URL, based on the installations's API endpoint URL.
Package webui provides a method to find the Web UI (happa) URL, based on the installations's API endpoint URL.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL