From 55b7f22404da7a0cfcdbce467e9581f6b8509320 Mon Sep 17 00:00:00 2001
From: Kenny Woodson <kwoodson@redhat.com>
Date: Thu, 5 Feb 2015 14:18:09 -0500
Subject: Updated tab completion as well as respecting ssh config files.

---
 bin/ossh_zsh_completion | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 bin/ossh_zsh_completion

(limited to 'bin/ossh_zsh_completion')

diff --git a/bin/ossh_zsh_completion b/bin/ossh_zsh_completion
new file mode 100644
index 000000000..f057ca8ce
--- /dev/null
+++ b/bin/ossh_zsh_completion
@@ -0,0 +1,24 @@
+#compdef ossh
+
+_ossh_known_hosts(){
+  if [[ -f ~/.ansible/tmp/multi_ec2_inventory.cache ]]; then
+    print $(/usr/bin/python -c 'import json,os; z = json.loads(open("%s"%os.path.expanduser("~/.ansible/tmp/multi_ec2_inventory.cache")).read()); print "\n".join(["%s.%s" % (host["ec2_tag_Name"],host["ec2_tag_environment"]) for dns, host in z["_meta"]["hostvars"].items()])')
+  fi
+
+}
+_ossh(){
+  local curcontext="$curcontext" state line
+  typeset -A opt_args
+
+#_arguments "*:Hosts:_ossh_known_hosts"
+    _arguments -s : \
+        "*:hosts:->hosts"
+
+    case "$state" in
+        hosts)
+            _values 'hosts' $(_ossh_known_hosts)
+            ;;
+    esac
+
+}
+_ossh "$@"
-- 
cgit v1.2.3