Skip to main content

Kubernetes

What

Display the currently active Kubernetes context name and namespace name.

Sample Configuration

{
"type": "kubectl",
"style": "powerline",
"powerline_symbol": "",
"foreground": "#000000",
"background": "#ebcc34",
"template": " ﴱ {{.Context}}{{if .Namespace}} :: {{.Namespace}}{{end}} ",
"properties": {
"context_aliases": {
"arn:aws:eks:eu-west-1:1234567890:cluster/posh": "posh"
}
}
}

Properties

NameTypeDefaultDescription
display_errorbooleanfalseshow the error context when failing to retrieve the kubectl information
parse_kubeconfigbooleantrueparse kubeconfig files instead of calling out to kubectl to improve performance
context_aliasesobjectcustom context namespace
cache_timeoutint0in minutes - how long is the context cached

Template (info)

default template
{{ .Context }}{{ if .Namespace }} :: {{ .Namespace }}{{ end }}

Properties

NameTypeDescription
.Contextstringthe current kubectl context
.Namespacestringthe current kubectl context namespace
.Userstringthe current kubectl context user
.Clusterstringthe current kubectl context cluster
tip

It is common for the Kubernetes "default" namespace to be used when no namespace is provided. If you want your prompt to render an empty current namespace using the word "default", you can use something like this for the template:

{{.Context}} :: {{if .Namespace}}{{.Namespace}}{{else}}default{{end}}