From 1ced49b85a859b399728ce32ef77399874f5172b Mon Sep 17 00:00:00 2001
From: Cameron Johnston <cwjohnston@gmail.com>
Date: Sun, 18 Dec 2011 22:15:00 -0700
Subject: adding support for chef environments in knife plugin

---
 plugins/knife/_knife | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

(limited to 'plugins/knife')

diff --git a/plugins/knife/_knife b/plugins/knife/_knife
index 7f8c95ee5..32ff9fc99 100644
--- a/plugins/knife/_knife
+++ b/plugins/knife/_knife
@@ -26,7 +26,7 @@ _knife() {
   
   case $state in
   knifecmd)
-    compadd -Q "$@" bootstrap client configure cookbook "cookbook site" "data bag" exec index node recipe role search ssh status windows $cloudproviders
+    compadd -Q "$@" bootstrap client configure cookbook "cookbook site" "data bag" exec environment index node recipe role search ssh status windows $cloudproviders
   ;;
   knifesubcmd)
     case $words[2] in
@@ -42,6 +42,9 @@ _knife() {
     cookbook)
       compadd -Q "$@" test list create download delete "metadata from" show "bulk delete" metadata upload
     ;;
+  environment)
+      compadd -Q "$@" list create delete edit show "from file"
+      ;;
     node)
      compadd -Q "$@" "from file" create show edit delete list run_list "bulk delete"
     ;;
@@ -161,6 +164,10 @@ _chef_data_bags_remote() {
  (knife data bag list | grep \" | awk '{print $1}' | awk -F"," '{print $1}' | awk -F"\"" '{print $2}')
 }
 
+_chef_environments_remote() {
+  (knife environment list | awk '{print $1}')
+}
+
 # The chef_x_local functions use the knife config to find the paths of relevant objects x to be uploaded to the server
 _chef_cookbooks_local() {
  (for i in $( grep cookbook_path $HOME/.chef/knife.rb | awk 'BEGIN {FS = "[" }; {print $2}' | sed 's/\,//g' | sed "s/'//g" | sed 's/\(.*\)]/\1/' ); do ls $i; done)
-- 
cgit v1.2.3-70-g09d2