summaryrefslogtreecommitdiff
path: root/chef/lib/chef/knife
diff options
context:
space:
mode:
Diffstat (limited to 'chef/lib/chef/knife')
-rw-r--r--chef/lib/chef/knife/bootstrap/archlinux-gems.erb10
-rw-r--r--chef/lib/chef/knife/bootstrap/centos5-gems.erb10
-rw-r--r--chef/lib/chef/knife/bootstrap/fedora13-gems.erb10
-rw-r--r--chef/lib/chef/knife/bootstrap/ubuntu10.04-apt.erb10
-rw-r--r--chef/lib/chef/knife/bootstrap/ubuntu10.04-gems.erb10
-rw-r--r--chef/lib/chef/knife/core/bootstrap_context.rb9
6 files changed, 59 insertions, 0 deletions
diff --git a/chef/lib/chef/knife/bootstrap/archlinux-gems.erb b/chef/lib/chef/knife/bootstrap/archlinux-gems.erb
index b23a3ff3df..a496d61344 100644
--- a/chef/lib/chef/knife/bootstrap/archlinux-gems.erb
+++ b/chef/lib/chef/knife/bootstrap/archlinux-gems.erb
@@ -18,6 +18,16 @@ EOP
awk NF /tmp/validation.pem > /etc/chef/validation.pem
rm /tmp/validation.pem
+<% if @chef_config[:encrypted_data_bag_secret] -%>
+(
+cat <<'EOP'
+<%= encrypted_data_bag_secret %>
+EOP
+) > /tmp/encrypted_data_bag_secret
+awk NF /tmp/encrypted_data_bag_secret > /etc/chef/encrypted_data_bag_secret
+rm /tmp/encrypted_data_bag_secret
+<% end -%>
+
(
cat <<'EOP'
log_level :info
diff --git a/chef/lib/chef/knife/bootstrap/centos5-gems.erb b/chef/lib/chef/knife/bootstrap/centos5-gems.erb
index cfaf9876a8..ae95980271 100644
--- a/chef/lib/chef/knife/bootstrap/centos5-gems.erb
+++ b/chef/lib/chef/knife/bootstrap/centos5-gems.erb
@@ -30,6 +30,16 @@ EOP
awk NF /tmp/validation.pem > /etc/chef/validation.pem
rm /tmp/validation.pem
+<% if @chef_config[:encrypted_data_bag_secret] -%>
+(
+cat <<'EOP'
+<%= encrypted_data_bag_secret %>
+EOP
+) > /tmp/encrypted_data_bag_secret
+awk NF /tmp/encrypted_data_bag_secret > /etc/chef/encrypted_data_bag_secret
+rm /tmp/encrypted_data_bag_secret
+<% end -%>
+
(
cat <<'EOP'
<%= config_content %>
diff --git a/chef/lib/chef/knife/bootstrap/fedora13-gems.erb b/chef/lib/chef/knife/bootstrap/fedora13-gems.erb
index b9819f20f2..490dcb9340 100644
--- a/chef/lib/chef/knife/bootstrap/fedora13-gems.erb
+++ b/chef/lib/chef/knife/bootstrap/fedora13-gems.erb
@@ -18,6 +18,16 @@ EOP
awk NF /tmp/validation.pem > /etc/chef/validation.pem
rm /tmp/validation.pem
+<% if @chef_config[:encrypted_data_bag_secret] -%>
+(
+cat <<'EOP'
+<%= encrypted_data_bag_secret %>
+EOP
+) > /tmp/encrypted_data_bag_secret
+awk NF /tmp/encrypted_data_bag_secret > /etc/chef/encrypted_data_bag_secret
+rm /tmp/encrypted_data_bag_secret
+<% end -%>
+
(
cat <<'EOP'
<%= config_content %>
diff --git a/chef/lib/chef/knife/bootstrap/ubuntu10.04-apt.erb b/chef/lib/chef/knife/bootstrap/ubuntu10.04-apt.erb
index 67206dfaae..b0b745d659 100644
--- a/chef/lib/chef/knife/bootstrap/ubuntu10.04-apt.erb
+++ b/chef/lib/chef/knife/bootstrap/ubuntu10.04-apt.erb
@@ -17,6 +17,16 @@ EOP
awk NF /tmp/validation.pem > /etc/chef/validation.pem
rm /tmp/validation.pem
+<% if @chef_config[:encrypted_data_bag_secret] -%>
+(
+cat <<'EOP'
+<%= encrypted_data_bag_secret %>
+EOP
+) > /tmp/encrypted_data_bag_secret
+awk NF /tmp/encrypted_data_bag_secret > /etc/chef/encrypted_data_bag_secret
+rm /tmp/encrypted_data_bag_secret
+<% end -%>
+
<% unless @chef_config[:validation_client_name] == "chef-validator" -%>
[ `grep -qx "validation_client_name \"<%= @chef_config[:validation_client_name] %>\"" /etc/chef/client.rb` ] || echo "validation_client_name \"<%= @chef_config[:validation_client_name] %>\"" >> /etc/chef/client.rb
<% end -%>
diff --git a/chef/lib/chef/knife/bootstrap/ubuntu10.04-gems.erb b/chef/lib/chef/knife/bootstrap/ubuntu10.04-gems.erb
index bfbb51ecb8..1fe5f2e5ba 100644
--- a/chef/lib/chef/knife/bootstrap/ubuntu10.04-gems.erb
+++ b/chef/lib/chef/knife/bootstrap/ubuntu10.04-gems.erb
@@ -25,6 +25,16 @@ EOP
awk NF /tmp/validation.pem > /etc/chef/validation.pem
rm /tmp/validation.pem
+<% if @chef_config[:encrypted_data_bag_secret] -%>
+(
+cat <<'EOP'
+<%= encrypted_data_bag_secret %>
+EOP
+) > /tmp/encrypted_data_bag_secret
+awk NF /tmp/encrypted_data_bag_secret > /etc/chef/encrypted_data_bag_secret
+rm /tmp/encrypted_data_bag_secret
+<% end -%>
+
(
cat <<'EOP'
<%= config_content %>
diff --git a/chef/lib/chef/knife/core/bootstrap_context.rb b/chef/lib/chef/knife/core/bootstrap_context.rb
index f88167c5c2..184b275b82 100644
--- a/chef/lib/chef/knife/core/bootstrap_context.rb
+++ b/chef/lib/chef/knife/core/bootstrap_context.rb
@@ -50,6 +50,10 @@ class Chef
IO.read(@chef_config[:validation_key])
end
+ def encrypted_data_bag_secret
+ IO.read(@chef_config[:encrypted_data_bag_secret])
+ end
+
def config_content
client_rb = <<-CONFIG
log_level :info
@@ -67,6 +71,11 @@ CONFIG
client_rb << %Q{http_proxy "#{knife_config[:bootstrap_proxy]}"\n}
client_rb << %Q{https_proxy "#{knife_config[:bootstrap_proxy]}"\n}
end
+
+ if @chef_config[:encrypted_data_bag_secret]
+ client_rb << %Q{encrypted_data_bag_secret "/etc/chef/encrypted_data_bag_secret"\n}
+ end
+
client_rb
end