summaryrefslogtreecommitdiff
path: root/plugins/knife_ssh
diff options
context:
space:
mode:
authoryleo77 <ylep77@gmail.com>2013-08-29 13:41:42 +0800
committeryleo77 <ylep77@gmail.com>2013-08-29 13:41:42 +0800
commitfda5afaebca57250792696e29c2e111f41f6fce4 (patch)
treed52b970bcdec2eb59069081353b6b4d3af6f9893 /plugins/knife_ssh
parent6041e4938cc559b908d83b5664166cc1fd02f31e (diff)
parent434f3bc05c5245d7a27ab0bb1ede5b78acc370a4 (diff)
downloadzsh-fda5afaebca57250792696e29c2e111f41f6fce4.tar.gz
zsh-fda5afaebca57250792696e29c2e111f41f6fce4.tar.bz2
zsh-fda5afaebca57250792696e29c2e111f41f6fce4.zip
Merge remote-tracking branch 'robbyrussell/master'
Diffstat (limited to 'plugins/knife_ssh')
-rw-r--r--plugins/knife_ssh/knife_ssh.plugin.zsh18
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..7fdd42a1e
--- /dev/null
+++ b/plugins/knife_ssh/knife_ssh.plugin.zsh
@@ -0,0 +1,18 @@
+function knife_ssh() {
+ grep -q $1 ~/.knife_comp~ 2> /dev/null || 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 $(<~/.knife_comp~)
+ else
+ echo "Could not find knife" > /dev/stderr;
+ fi
+}
+
+compdef _knife_ssh knife_ssh