Skip to content

Commit

Permalink
Add zsh completion script (finally)
Browse files Browse the repository at this point in the history
Signed-off-by: Ahmet Alp Balkan <[email protected]>
  • Loading branch information
ahmetb committed Apr 26, 2017
1 parent a19b953 commit 5933a7b
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 9 deletions.
12 changes: 3 additions & 9 deletions Formula/kubectx.rb
Original file line number Diff line number Diff line change
@@ -1,21 +1,15 @@
class Kubectx < Formula
desc "Tool that can switch between kubectl contexts easily and create aliases"
homepage "https://github.com/ahmetb/kubectx"
url "https://github.com/ahmetb/kubectx/archive/v0.1.tar.gz"
sha256 "841817f928af25061b1b6794400394c3e6e807e8a1c48c179f1fd8bdd553ca79"
url "https://github.com/ahmetb/kubectx/archive/v0.2.0.tar.gz"
sha256 "9fb6557416e4be3ef7e9701527f89fa73a1a0545a3cafbe6bed7527061c6cfb7"

bottle :unneeded

def install
bin.install "kubectx"
bash_completion.install "completion/kubectx.bash" => "kubectx"
end

def caveats; <<-EOS.undent
To install zsh completion, add this to your .zshrc:
[ -f /usr/local/etc/bash_completion.d/kubectx ] && source /usr/local/etc/bash_completion.d/kubectx
EOS
zsh_completion.install "completion/kubectx.zsh" => "_kubectx"
end

test do
Expand Down
12 changes: 12 additions & 0 deletions completion/kubectx.zsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#compdef kubectx

KUBECTX="${HOME}/.kube/kubectx"
PREV=""
if [ -f "$KUBECTX" ]; then
# show '-' only if there's a saved previous context
PREV=$(cat "${KUBECTX}")
_arguments "1: :((-\:Back\ to\ ${PREV} \
$(kubectl config get-contexts | awk '{print $2}' | tail -n +2)))"
else
_arguments "1: :($(kubectl config get-contexts | awk '{print $2}' | tail -n +2))"
fi

0 comments on commit 5933a7b

Please sign in to comment.