summaryrefslogtreecommitdiff
path: root/plugins/knife_ssh
diff options
context:
space:
mode:
authorTuowen Zhao <ztuowen@gmail.com>2020-01-02 15:46:19 -0500
committerTuowen Zhao <ztuowen@gmail.com>2020-01-02 15:46:19 -0500
commitff9208623b3573c736ae9118947aaf0c7e752998 (patch)
tree45977b00446155003d486c04c3b891a5b7c88441 /plugins/knife_ssh
parent1456610ebd292625fdc34fa3167c9c0f67d85228 (diff)
parentca627655dbd1d110dbea34ec4a8c1964a1da83d2 (diff)
downloadzsh-ff9208623b3573c736ae9118947aaf0c7e752998.tar.gz
zsh-ff9208623b3573c736ae9118947aaf0c7e752998.tar.bz2
zsh-ff9208623b3573c736ae9118947aaf0c7e752998.zip
Merge branch 'master' of https://github.com/ohmyzsh/ohmyzsh
Diffstat (limited to 'plugins/knife_ssh')
-rw-r--r--plugins/knife_ssh/README.md14
-rw-r--r--plugins/knife_ssh/knife_ssh.plugin.zsh8
2 files changed, 18 insertions, 4 deletions
diff --git a/plugins/knife_ssh/README.md b/plugins/knife_ssh/README.md
new file mode 100644
index 000000000..cb836b7f3
--- /dev/null
+++ b/plugins/knife_ssh/README.md
@@ -0,0 +1,14 @@
+# knife_ssh plugin
+
+This plugin adds a `knife_ssh` function as well as completion for it, to allow
+connecting via ssh to servers managed with [Chef](https://www.chef.io/).
+
+To use it, add `knife_ssh` to the plugins array in your zshrc file:
+```zsh
+plugins=(... knife_ssh)
+```
+
+The plugin creates a cache of the Chef node list via `knife`, and stores it
+in `$HOME/.knife_comp~`, when first triggering knife_ssh completion.
+
+**Requirements:** `knife` has to be installed.
diff --git a/plugins/knife_ssh/knife_ssh.plugin.zsh b/plugins/knife_ssh/knife_ssh.plugin.zsh
index 7fdd42a1e..dc425a33e 100644
--- a/plugins/knife_ssh/knife_ssh.plugin.zsh
+++ b/plugins/knife_ssh/knife_ssh.plugin.zsh
@@ -1,17 +1,17 @@
function knife_ssh() {
- grep -q $1 ~/.knife_comp~ 2> /dev/null || rm -f ~/.knife_comp~;
+ 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
+ echo "\nGenerating ~/.knife_comp~..." >&2
knife node list > ~/.knife_comp~
fi
- compadd $(<~/.knife_comp~)
+ compadd $(< ~/.knife_comp~)
else
- echo "Could not find knife" > /dev/stderr;
+ echo "Could not find knife" >&2
fi
}