Browse Source

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

Trae Robrock 11 years ago
parent
commit
00ccee1f33
1 changed files with 18 additions and 0 deletions
  1. 18 0
      plugins/knife_ssh/knife_ssh.plugin.zsh

+ 18 - 0
plugins/knife_ssh/knife_ssh.plugin.zsh

@@ -0,0 +1,18 @@
+function knife_ssh() {
+  grep -q $1 ~/.knife_comp~ || rm -f ~/.knife_comp~;
+  ssh $(knife node show $1 | awk '/IP:/{print $2}')
+}
+
+_knife_ssh() {
+  if hash knife 2>/dev/null; then
+    if [[ ! -f ~/.knife_comp~ ]]; then
+      echo "\nGenerating ~/.knife_comp~..." >/dev/stderr
+      knife node list > ~/.knife_comp~
+    fi
+    compadd `cat ~/.knife_comp~`
+  else
+    echo "Could not find knife" > /dev/stderr;
+  fi
+}
+
+compdef _knife_ssh knife_ssh