knife_ssh.plugin.zsh 446 Bytes
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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