diff options
author | Roger Gonzalez <rogergonzalez21@gmail.com> | 2019-12-29 14:58:33 -0300 |
---|---|---|
committer | Roger Gonzalez <rogergonzalez21@gmail.com> | 2019-12-29 14:58:33 -0300 |
commit | efb336a23b65a9a2d56889396b13c1757bdaf354 (patch) | |
tree | 234e40115f79a84c8a755df6fb932cc6797e36e1 /.config/fisher/github.com/matchai/spacefish/functions/__sf_section_kubecontext.fish |
Initial commit
Diffstat (limited to '.config/fisher/github.com/matchai/spacefish/functions/__sf_section_kubecontext.fish')
-rw-r--r-- | .config/fisher/github.com/matchai/spacefish/functions/__sf_section_kubecontext.fish | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/.config/fisher/github.com/matchai/spacefish/functions/__sf_section_kubecontext.fish b/.config/fisher/github.com/matchai/spacefish/functions/__sf_section_kubecontext.fish new file mode 100644 index 00000000..effb614c --- /dev/null +++ b/.config/fisher/github.com/matchai/spacefish/functions/__sf_section_kubecontext.fish @@ -0,0 +1,45 @@ +# +# Kubernetes (kubectl) +# +# Kubernetes is an open-source system for deployment, scaling, +# and management of containerized applications. +# Link: https://kubernetes.io/ + +function __sf_section_kubecontext -d "Display the kubernetes context" + # ------------------------------------------------------------------------------ + # Configuration + # ------------------------------------------------------------------------------ + + __sf_util_set_default SPACEFISH_KUBECONTEXT_SHOW true + __sf_util_set_default SPACEFISH_KUBECONTEXT_NAMESPACE_SHOW true + __sf_util_set_default SPACEFISH_KUBECONTEXT_PREFIX "at " + __sf_util_set_default SPACEFISH_KUBECONTEXT_SUFFIX $SPACEFISH_PROMPT_DEFAULT_SUFFIX + # Additional space is added because ☸️ is wider than other symbols + # See: https://github.com/denysdovhan/spaceship-prompt/pull/432 + __sf_util_set_default SPACEFISH_KUBECONTEXT_SYMBOL "☸️ " + __sf_util_set_default SPACEFISH_KUBECONTEXT_COLOR cyan + + + # ------------------------------------------------------------------------------ + # Section + # ------------------------------------------------------------------------------ + + # Show current kubecontext + [ $SPACEFISH_KUBECONTEXT_SHOW = false ]; and return + # Ensure the kubectl command is available + type -q kubectl; or return + + set -l kube_context (kubectl config current-context 2>/dev/null) + [ -z $kube_context ]; and return + + if test "$SPACEFISH_KUBECONTEXT_NAMESPACE_SHOW" = "true" -a "$kube_context" != "default" + set kube_namespace (kubectl config view --minify --output 'jsonpath={..namespace}' 2>/dev/null) + set kube_context "$kube_context ($kube_namespace)" + end + + __sf_lib_section \ + $SPACEFISH_KUBECONTEXT_COLOR \ + $SPACEFISH_KUBECONTEXT_PREFIX \ + "$SPACEFISH_KUBECONTEXT_SYMBOL""$kube_context" \ + $SPACEFISH_KUBECONTEXT_SUFFIX +end |