From af120ab348f2e1a5a39dec035ed9dcf84189a64e Mon Sep 17 00:00:00 2001 From: Biswakalyan Bhuyan Date: Mon, 3 Oct 2022 21:42:20 +0530 Subject: dotfiles --- zsh/oh-my-zsh/plugins/kubectx/README.md | 26 +++++++++++++++++++++++ zsh/oh-my-zsh/plugins/kubectx/kubectx.plugin.zsh | 13 ++++++++++++ zsh/oh-my-zsh/plugins/kubectx/prod.png | Bin 0 -> 3834 bytes zsh/oh-my-zsh/plugins/kubectx/stage.png | Bin 0 -> 3829 bytes 4 files changed, 39 insertions(+) create mode 100644 zsh/oh-my-zsh/plugins/kubectx/README.md create mode 100644 zsh/oh-my-zsh/plugins/kubectx/kubectx.plugin.zsh create mode 100644 zsh/oh-my-zsh/plugins/kubectx/prod.png create mode 100644 zsh/oh-my-zsh/plugins/kubectx/stage.png (limited to 'zsh/oh-my-zsh/plugins/kubectx') diff --git a/zsh/oh-my-zsh/plugins/kubectx/README.md b/zsh/oh-my-zsh/plugins/kubectx/README.md new file mode 100644 index 0000000..98f1cf0 --- /dev/null +++ b/zsh/oh-my-zsh/plugins/kubectx/README.md @@ -0,0 +1,26 @@ +# kubectx - show active kubectl context + +This plugins adds ```kubectx_prompt_info()``` function. It shows name of the +active kubectl context (```kubectl config current-context```). + +You can use it to customize prompt and know if You are on prod cluster ;) + +_Example_. Add to **.zshrc**: + +``` +RPS1='$(kubectx_prompt_info)' +``` + +### custom ctx names + +One can rename default context name for better readability. + +_Example_. Add to **.zshrc**: +``` +kubectx_mapping[minikube]="mini" +kubectx_mapping[context_name_from_kubeconfig]="$emoji[wolf_face]" +kubectx_mapping[production_cluster]="%{$fg[yellow]%}prod!%{$reset_color%}" +``` + +![staging](stage.png) +![production](prod.png) diff --git a/zsh/oh-my-zsh/plugins/kubectx/kubectx.plugin.zsh b/zsh/oh-my-zsh/plugins/kubectx/kubectx.plugin.zsh new file mode 100644 index 0000000..6096fee --- /dev/null +++ b/zsh/oh-my-zsh/plugins/kubectx/kubectx.plugin.zsh @@ -0,0 +1,13 @@ +typeset -g -A kubectx_mapping + +function kubectx_prompt_info() { + (( $+commands[kubectl] )) || return + + local current_ctx=$(kubectl config current-context 2> /dev/null) + + [[ -n "$current_ctx" ]] || return + + # use value in associative array if it exists + # otherwise fall back to the context name + echo "${kubectx_mapping[$current_ctx]:-${current_ctx:gs/%/%%}}" +} diff --git a/zsh/oh-my-zsh/plugins/kubectx/prod.png b/zsh/oh-my-zsh/plugins/kubectx/prod.png new file mode 100644 index 0000000..0c194a6 Binary files /dev/null and b/zsh/oh-my-zsh/plugins/kubectx/prod.png differ diff --git a/zsh/oh-my-zsh/plugins/kubectx/stage.png b/zsh/oh-my-zsh/plugins/kubectx/stage.png new file mode 100644 index 0000000..ac15b39 Binary files /dev/null and b/zsh/oh-my-zsh/plugins/kubectx/stage.png differ -- cgit v1.2.3-59-g8ed1b