00ccee1f33c90c8900e8c2efe4dca9bf5db040f9

Author
Trae Robrock <trobrock@gmail.com>
Committer
Trae Robrock <trobrock@gmail.com>
Date

Message

Add knife_ssh command to make connecting to servers managed with chef easier

Diff

 1diff --git a/plugins/knife_ssh/knife_ssh.plugin.zsh b/plugins/knife_ssh/knife_ssh.plugin.zsh
 2new file mode 100644
 3index 0000000000000000000000000000000000000000..ea3361c491467727f568398f659ee676f8dce2c8
 4--- /dev/null
 5+++ b/plugins/knife_ssh/knife_ssh.plugin.zsh
 6@@ -0,0 +1,18 @@
 7+function knife_ssh() {
 8+  grep -q $1 ~/.knife_comp~ || rm -f ~/.knife_comp~;
 9+  ssh $(knife node show $1 | awk '/IP:/{print $2}')
10+}
11+
12+_knife_ssh() {
13+  if hash knife 2>/dev/null; then
14+    if [[ ! -f ~/.knife_comp~ ]]; then
15+      echo "\nGenerating ~/.knife_comp~..." >/dev/stderr
16+      knife node list > ~/.knife_comp~
17+    fi
18+    compadd `cat ~/.knife_comp~`
19+  else
20+    echo "Could not find knife" > /dev/stderr;
21+  fi
22+}
23+
24+compdef _knife_ssh knife_ssh