From 5c1c536015ea3e87acc19653faf537c0fb22b7ba Mon Sep 17 00:00:00 2001
From: Ben Hartshorne <ben@parse.com>
Date: Mon, 1 Apr 2013 13:34:59 -0700
Subject: allowing you to override knife paths

---
 plugins/knife/_knife | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

(limited to 'plugins/knife/_knife')

diff --git a/plugins/knife/_knife b/plugins/knife/_knife
index dec491257..ca6347957 100644
--- a/plugins/knife/_knife
+++ b/plugins/knife/_knife
@@ -170,11 +170,13 @@ _chef_environments_remote() {
 
 # 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() {
- local knife_rb="$HOME/.chef/knife.rb"
- if [ -f ./.chef/knife.rb ]; then
-  knife_rb="./.chef/knife.rb"
- fi
- (for i in $( grep cookbook_path $knife_rb | awk 'BEGIN {FS = "[" }; {print $2}' | sed 's/\,//g' | sed "s/'//g" | sed 's/\(.*\)]/\1/' ); do ls $i; done)
+  
+  local knife_rb=${KNIFE_CONF_PATH:-${HOME}/.chef/knife.rb}
+  if [ -f ./.chef/knife.rb ]; then
+    knife_rb="./.chef/knife.rb"
+  fi
+  local cookbook_path=${KNIFE_COOKBOOK_PATH:-$(grep cookbook_path $knife_rb | awk 'BEGIN {FS = "[" }; {print $2}' | sed 's/\,//g' | sed "s/'//g" | sed 's/\(.*\)]/\1/' )}
+  (for i in $cookbook_path; do ls $i; done)
 }
 
 # This function extracts the available cookbook versions on the chef server
-- 
cgit v1.2.3-70-g09d2


From 520b0132e943252409457b550b39d8821663da7a Mon Sep 17 00:00:00 2001
From: Ben Hartshorne <ben@parse.com>
Date: Mon, 1 Apr 2013 13:44:53 -0700
Subject: adding docs about knife path config variables

---
 plugins/knife/_knife | 5 +++++
 1 file changed, 5 insertions(+)

(limited to 'plugins/knife/_knife')

diff --git a/plugins/knife/_knife b/plugins/knife/_knife
index ca6347957..9f5b406af 100644
--- a/plugins/knife/_knife
+++ b/plugins/knife/_knife
@@ -1,5 +1,10 @@
 #compdef knife
 
+# You can override the path to knife.rb and your cookbooks by setting
+# KNIFE_CONF_PATH=/path/to/my/.chef/knife.rb
+# KNIFE_COOKBOOK_PATH=/path/to/my/chef/cookbooks
+# Read around where these are used for more detail.
+
 # These flags should be available everywhere according to man knife
 knife_general_flags=( --help --server-url --key --config --editor --format --log_level --logfile --no-editor --user --print-after --version --yes )
 
-- 
cgit v1.2.3-70-g09d2