Documentation ¶
Index ¶
- Constants
- Variables
- func ContextName(cluster *infrastructure.KubernetesCluster) string
- func IsConfigNotFoundError(err error) bool
- func ReloginNeeded(err error) error
- func RemoveClusterFromKubeConfig(client *api.Client, clusterContext string) error
- func SetContextOrganization(kubeconfigPath string, contextName string, organization string) error
- func SetContextProject(kubeconfigPath string, contextName string, project string) error
- type ClusterCmd
- type Cmd
- type Config
- type LoginCmd
- type LogoutCmd
- type OIDCCmd
- type PrintAccessTokenCmd
- type SetOrgCmd
- type SetProjectCmd
- type WhoAmICmd
Constants ¶
View Source
const OIDCCmdName = "auth oidc"
Variables ¶
View Source
var (
// ErrConfigNotFound describes a missing nctl config in the kubeconfig
ErrConfigNotFound configError = "nctl config not found"
)
Functions ¶
func ContextName ¶
func ContextName(cluster *infrastructure.KubernetesCluster) string
func IsConfigNotFoundError ¶ added in v1.1.0
IsConfigNotFoundError returns true if the nctl config could not be found in the kubconfig context
func ReloginNeeded ¶ added in v1.1.0
ReloginNeeded returns an error which outputs the given err with a message saying that a re-login is needed.
func RemoveClusterFromKubeConfig ¶ added in v1.1.0
func SetContextOrganization ¶ added in v1.2.3
SetContextOrganization sets the given organization in the given context of the kubeconfig
Types ¶
type ClusterCmd ¶
type Cmd ¶
type Cmd struct { Login LoginCmd `cmd:"" help:"Login to nineapis.ch."` Logout LogoutCmd `cmd:"" help:"Logout from nineapis.ch."` Cluster ClusterCmd `cmd:"" help:"Authenticate with Kubernetes Cluster."` OIDC OIDCCmd `cmd:"" help:"Perform interactive OIDC login." hidden:""` SetProject SetProjectCmd `cmd:"" help:"Set the default project to be used."` SetOrg SetOrgCmd `cmd:"" help:"Set the organization to be used."` Whoami WhoAmICmd `cmd:"" help:"Show who you are logged in as, your active organization and all your available organizations."` PrintAccessToken PrintAccessTokenCmd `cmd:"" help:"Print short-lived access token to authenticate against the API to stdout and exit."` }
type Config ¶ added in v1.1.0
Config is used to store information in the kubeconfig context created
func ReadConfig ¶ added in v1.1.0
type LoginCmd ¶
type LoginCmd struct { APIURL string `help:"The URL of the Nine API" default:"https://nineapis.ch" env:"NCTL_API_URL" name:"api-url"` APIToken string `` /* 140-byte string literal not displayed */ Organization string `` /* 207-byte string literal not displayed */ IssuerURL string `help:"Issuer URL is the OIDC issuer URL of the API." default:"https://auth.nine.ch/auth/realms/pub"` ClientID string `help:"Client ID is the OIDC client ID of the API." default:"nineapis.ch-f178254"` }
type LogoutCmd ¶ added in v1.2.2
type LogoutCmd struct { APIURL string `help:"The URL of the Nine API" default:"https://nineapis.ch" env:"NCTL_API_URL" name:"api-url"` IssuerURL string `help:"Issuer URL is the OIDC issuer URL of the API." default:"https://auth.nine.ch/auth/realms/pub"` ClientID string `help:"Client ID is the OIDC client ID of the API." default:"nineapis.ch-f178254"` }
type PrintAccessTokenCmd ¶ added in v1.5.0
type PrintAccessTokenCmd struct{}
type SetOrgCmd ¶ added in v1.2.0
type SetOrgCmd struct { Organization string `arg:"" help:"Name of the organization to login to." default:""` APIURL string `help:"The URL of the Nine API" default:"https://nineapis.ch" env:"NCTL_API_URL" name:"api-url"` IssuerURL string `help:"Issuer URL is the OIDC issuer URL of the API." default:"https://auth.nine.ch/auth/realms/pub"` ClientID string `help:"Client ID is the OIDC client ID of the API." default:"nineapis.ch-f178254"` }
type SetProjectCmd ¶ added in v1.1.0
type SetProjectCmd struct {
Name string `arg:"" predictor:"resource_name" help:"Name of the default project to be used."`
}
type WhoAmICmd ¶ added in v1.2.0
type WhoAmICmd struct { APIURL string `help:"The URL of the Nine API" default:"https://nineapis.ch" env:"NCTL_API_URL" name:"api-url"` IssuerURL string `help:"Issuer URL is the OIDC issuer URL of the API." default:"https://auth.nine.ch/auth/realms/pub"` ClientID string `help:"Client ID is the OIDC client ID of the API." default:"nineapis.ch-f178254"` }
Click to show internal directories.
Click to hide internal directories.