diff options
author | Trae Robrock <trobrock@gmail.com> | 2013-07-16 16:57:08 -0700 |
---|---|---|
committer | Trae Robrock <trobrock@gmail.com> | 2013-07-16 16:58:55 -0700 |
commit | 00ccee1f33c90c8900e8c2efe4dca9bf5db040f9 (patch) | |
tree | 41d2dbba744c7c0478383239a31caba569754508 /plugins/knife_ssh | |
parent | 7f74294d7aa7ab86e18e70a1153c15fa373c5849 (diff) | |
download | zsh-00ccee1f33c90c8900e8c2efe4dca9bf5db040f9.tar.gz zsh-00ccee1f33c90c8900e8c2efe4dca9bf5db040f9.tar.bz2 zsh-00ccee1f33c90c8900e8c2efe4dca9bf5db040f9.zip |
Add knife_ssh command to make connecting to servers managed with chef easier
Diffstat (limited to 'plugins/knife_ssh')
-rw-r--r-- | plugins/knife_ssh/knife_ssh.plugin.zsh | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/plugins/knife_ssh/knife_ssh.plugin.zsh b/plugins/knife_ssh/knife_ssh.plugin.zsh new file mode 100644 index 000000000..ea3361c49 --- /dev/null +++ b/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 |