itermkube
itermkube copied to clipboard
Kubernetes Context in iTerm2's Status Bar
Kubernetes Context in iTerm2's Status Bar
This guide demonstrates displaying the current Kubernetes context in iTerm2's Status Bar.
Note: This requires iTerm2 3.3+.

Install iTerm2 Shell Integration
iTerm2 > Install Shell Integration
This will add a line to your .bash_profile:
test -e "${HOME}/.iterm2_shell_integration.bash" && source "${HOME}/.iterm2_shell_integration.bash"
Add the kubecontext user variable
Before .iterm2_shell_integration.bash is loaded, add this function:
function iterm2_print_user_vars() {
iterm2_set_user_var kubecontext $(kubectl config current-context)
}
The above command can be slow if the internet connection is slow. An alternative is to use this function:
function iterm2_print_user_vars() {
iterm2_set_user_var kubecontext $(awk '/^current-context:/{print $2;exit;}' <~/.kube/config)
}
If you want to display the current namespace in your Status Bar as well, add this function instead:
function iterm2_print_user_vars() {
iterm2_set_user_var kubecontext $(kubectl config current-context):$(kubectl config view --minify --output 'jsonpath={..namespace}')
}
Add kubecontext Status Bar component
iTerm2>Preferences>Profiles>Session>Configure Status Bar- Drag a new
Interpolated Stringcomponent toActive Components. - Select the new component and click
Configure Component. - Set
String Valueto\(user.kubecontext)