chef 10.16.6 → 10.18.0.rc.1
Sign up to get free protection for your applications and to get access to all the features.
- data/distro/common/html/chef-client.8.html +4 -4
- data/distro/common/html/chef-expander.8.html +4 -4
- data/distro/common/html/chef-expanderctl.8.html +4 -4
- data/distro/common/html/chef-server-webui.8.html +4 -4
- data/distro/common/html/chef-server.8.html +4 -4
- data/distro/common/html/chef-solo.8.html +4 -4
- data/distro/common/html/chef-solr.8.html +4 -4
- data/distro/common/html/knife-bootstrap.1.html +4 -4
- data/distro/common/html/knife-client.1.html +4 -4
- data/distro/common/html/knife-configure.1.html +4 -4
- data/distro/common/html/knife-cookbook-site.1.html +4 -4
- data/distro/common/html/knife-cookbook.1.html +4 -4
- data/distro/common/html/knife-data-bag.1.html +4 -4
- data/distro/common/html/knife-environment.1.html +4 -4
- data/distro/common/html/knife-exec.1.html +4 -4
- data/distro/common/html/knife-index.1.html +4 -4
- data/distro/common/html/knife-node.1.html +4 -4
- data/distro/common/html/knife-role.1.html +4 -4
- data/distro/common/html/knife-search.1.html +4 -4
- data/distro/common/html/knife-ssh.1.html +4 -4
- data/distro/common/html/knife-status.1.html +4 -4
- data/distro/common/html/knife-tag.1.html +4 -4
- data/distro/common/html/knife.1.html +4 -4
- data/distro/common/html/shef.1.html +4 -4
- data/distro/common/man/man1/knife-bootstrap.1 +1 -1
- data/distro/common/man/man1/knife-client.1 +1 -1
- data/distro/common/man/man1/knife-configure.1 +1 -1
- data/distro/common/man/man1/knife-cookbook-site.1 +1 -1
- data/distro/common/man/man1/knife-cookbook.1 +1 -1
- data/distro/common/man/man1/knife-data-bag.1 +1 -1
- data/distro/common/man/man1/knife-environment.1 +1 -1
- data/distro/common/man/man1/knife-exec.1 +1 -1
- data/distro/common/man/man1/knife-index.1 +1 -1
- data/distro/common/man/man1/knife-node.1 +1 -1
- data/distro/common/man/man1/knife-role.1 +1 -1
- data/distro/common/man/man1/knife-search.1 +1 -1
- data/distro/common/man/man1/knife-ssh.1 +1 -1
- data/distro/common/man/man1/knife-status.1 +1 -1
- data/distro/common/man/man1/knife-tag.1 +1 -1
- data/distro/common/man/man1/knife.1 +1 -1
- data/distro/common/man/man1/shef.1 +1 -1
- data/distro/common/man/man8/chef-client.8 +1 -1
- data/distro/common/man/man8/chef-expander.8 +1 -1
- data/distro/common/man/man8/chef-expanderctl.8 +1 -1
- data/distro/common/man/man8/chef-server-webui.8 +1 -1
- data/distro/common/man/man8/chef-server.8 +1 -1
- data/distro/common/man/man8/chef-solo.8 +1 -1
- data/distro/common/man/man8/chef-solr.8 +1 -1
- data/lib/chef/api_client.rb +22 -0
- data/lib/chef/cookbook/chefignore.rb +1 -1
- data/lib/chef/cookbook/cookbook_version_loader.rb +1 -3
- data/lib/chef/encrypted_data_bag_item.rb +135 -6
- data/lib/chef/formatters/doc.rb +2 -2
- data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +1 -0
- data/lib/chef/knife/bootstrap/archlinux-gems.erb +6 -19
- data/lib/chef/knife/bootstrap/centos5-gems.erb +15 -24
- data/lib/chef/knife/bootstrap/chef-full.erb +9 -22
- data/lib/chef/knife/bootstrap/fedora13-gems.erb +5 -19
- data/lib/chef/knife/bootstrap/ubuntu10.04-apt.erb +4 -16
- data/lib/chef/knife/bootstrap/ubuntu10.04-gems.erb +7 -24
- data/lib/chef/knife/bootstrap/ubuntu12.04-gems.erb +5 -19
- data/lib/chef/knife/bootstrap.rb +3 -3
- data/lib/chef/knife/client_reregister.rb +5 -4
- data/lib/chef/knife/cookbook_create.rb +178 -28
- data/lib/chef/knife/cookbook_site_install.rb +1 -1
- data/lib/chef/knife/core/bootstrap_context.rb +2 -2
- data/lib/chef/knife/ssh.rb +31 -15
- data/lib/chef/mixin/recipe_definition_dsl_core.rb +1 -1
- data/lib/chef/platform.rb +8 -0
- data/lib/chef/provider/log.rb +1 -1
- data/lib/chef/provider/package/yum-dump.py +20 -0
- data/lib/chef/provider/package/yum.rb +41 -0
- data/lib/chef/resource/log.rb +10 -1
- data/lib/chef/resource.rb +3 -2
- data/lib/chef/rest.rb +10 -5
- data/lib/chef/version.rb +1 -1
- data/spec/data/cookbooks/chefignore +2 -0
- data/spec/functional/knife/ssh_spec.rb +59 -1
- data/spec/stress/win32/security_spec.rb +4 -4
- data/spec/support/matchers/leak.rb +1 -1
- data/spec/unit/api_client_spec.rb +90 -17
- data/spec/unit/cookbook/chefignore_spec.rb +2 -1
- data/spec/unit/encrypted_data_bag_item_spec.rb +177 -6
- data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +20 -0
- data/spec/unit/knife/bootstrap_spec.rb +69 -28
- data/spec/unit/knife/client_reregister_spec.rb +23 -22
- data/spec/unit/knife/cookbook_site_install_spec.rb +12 -2
- data/spec/unit/knife/core/bootstrap_context_spec.rb +7 -0
- data/spec/unit/knife/data_bag_create_spec.rb +5 -0
- data/spec/unit/knife/data_bag_edit_spec.rb +13 -0
- data/spec/unit/knife/data_bag_from_file_spec.rb +15 -1
- data/spec/unit/knife/ssh_spec.rb +93 -1
- data/spec/unit/provider/package/yum_spec.rb +79 -11
- data/spec/unit/resource/log_spec.rb +9 -0
- metadata +854 -850
@@ -10,23 +10,16 @@ if [ ! -f /usr/bin/chef-client ]; then
|
|
10
10
|
fi
|
11
11
|
|
12
12
|
mkdir -p /etc/chef
|
13
|
-
|
14
|
-
|
13
|
+
|
14
|
+
awk NF > /etc/chef/validation.pem <<'EOP'
|
15
15
|
<%= validation_key %>
|
16
16
|
EOP
|
17
|
-
) > /tmp/validation.pem
|
18
|
-
awk NF /tmp/validation.pem > /etc/chef/validation.pem
|
19
|
-
rm /tmp/validation.pem
|
20
17
|
chmod 0600 /etc/chef/validation.pem
|
21
18
|
|
22
19
|
<% if @chef_config[:encrypted_data_bag_secret] -%>
|
23
|
-
|
24
|
-
cat <<'EOP'
|
20
|
+
awk NF > /etc/chef/encrypted_data_bag_secret <<'EOP'
|
25
21
|
<%= encrypted_data_bag_secret %>
|
26
22
|
EOP
|
27
|
-
) > /tmp/encrypted_data_bag_secret
|
28
|
-
awk NF /tmp/encrypted_data_bag_secret > /etc/chef/encrypted_data_bag_secret
|
29
|
-
rm /tmp/encrypted_data_bag_secret
|
30
23
|
chmod 0600 /etc/chef/encrypted_data_bag_secret
|
31
24
|
<% end -%>
|
32
25
|
|
@@ -35,16 +28,13 @@ chmod 0600 /etc/chef/encrypted_data_bag_secret
|
|
35
28
|
mkdir -p /etc/chef/ohai/hints
|
36
29
|
|
37
30
|
<% @chef_config[:knife][:hints].each do |name, hash| -%>
|
38
|
-
|
39
|
-
cat <<'EOP'
|
31
|
+
cat > /etc/chef/ohai/hints/<%= name %>.json <<'EOP'
|
40
32
|
<%= hash.to_json %>
|
41
33
|
EOP
|
42
|
-
) > /etc/chef/ohai/hints/<%= name %>.json
|
43
34
|
<% end -%>
|
44
35
|
<% end -%>
|
45
36
|
|
46
|
-
|
47
|
-
cat <<'EOP'
|
37
|
+
cat > /etc/chef/client.rb <<'EOP'
|
48
38
|
log_level :info
|
49
39
|
log_location STDOUT
|
50
40
|
chef_server_url "<%= @chef_config[:chef_server_url] %>"
|
@@ -64,12 +54,9 @@ http_proxy "<%= knife_config[:bootstrap_proxy] %>"
|
|
64
54
|
https_proxy "<%= knife_config[:bootstrap_proxy] %>"
|
65
55
|
<% end -%>
|
66
56
|
EOP
|
67
|
-
) > /etc/chef/client.rb
|
68
57
|
|
69
|
-
|
70
|
-
cat <<'EOP'
|
58
|
+
cat > /etc/chef/first-boot.json <<'EOP'
|
71
59
|
<%= first_boot.to_json %>
|
72
60
|
EOP
|
73
|
-
) > /etc/chef/first-boot.json
|
74
61
|
|
75
62
|
<%= start_chef %>'
|
@@ -2,6 +2,11 @@ bash -c '
|
|
2
2
|
<%= "export http_proxy=\"#{knife_config[:bootstrap_proxy]}\"" if knife_config[:bootstrap_proxy] -%>
|
3
3
|
|
4
4
|
if [ ! -f /usr/bin/chef-client ]; then
|
5
|
+
tmp_dir=$(mktemp -d) || exit 1
|
6
|
+
pushd "$tmp_dir"
|
7
|
+
|
8
|
+
yum install -y wget
|
9
|
+
|
5
10
|
wget <%= "--proxy=on " if knife_config[:bootstrap_proxy] %>http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
|
6
11
|
rpm -Uvh epel-release-5-4.noarch.rpm
|
7
12
|
wget <%= "--proxy=on " if knife_config[:bootstrap_proxy] %>http://rpm.aegisco.com/aegisco/rhel/aegisco-rhel.rpm
|
@@ -9,11 +14,11 @@ if [ ! -f /usr/bin/chef-client ]; then
|
|
9
14
|
|
10
15
|
yum install -y ruby ruby-devel gcc gcc-c++ automake autoconf make
|
11
16
|
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
+
wget <%= "--proxy=on " if knife_config[:bootstrap_proxy] %>http://production.cf.rubygems.org/rubygems/rubygems-1.6.2.tgz -O - | tar zxf -
|
18
|
+
(cd rubygems-1.6.2 && ruby setup.rb --no-format-executable)
|
19
|
+
|
20
|
+
popd
|
21
|
+
rm -r "$tmp_dir"
|
17
22
|
fi
|
18
23
|
|
19
24
|
gem update --system
|
@@ -23,23 +28,15 @@ gem install chef --no-rdoc --no-ri --verbose <%= bootstrap_version_string %>
|
|
23
28
|
|
24
29
|
mkdir -p /etc/chef
|
25
30
|
|
26
|
-
|
27
|
-
cat <<'EOP'
|
31
|
+
awk NF > /etc/chef/validation.pem <<'EOP'
|
28
32
|
<%= validation_key %>
|
29
33
|
EOP
|
30
|
-
) > /tmp/validation.pem
|
31
|
-
awk NF /tmp/validation.pem > /etc/chef/validation.pem
|
32
|
-
rm /tmp/validation.pem
|
33
34
|
chmod 0600 /etc/chef/validation.pem
|
34
35
|
|
35
36
|
<% if @chef_config[:encrypted_data_bag_secret] -%>
|
36
|
-
|
37
|
-
cat <<'EOP'
|
37
|
+
awk NF > /etc/chef/encrypted_data_bag_secret <<'EOP'
|
38
38
|
<%= encrypted_data_bag_secret %>
|
39
39
|
EOP
|
40
|
-
) > /tmp/encrypted_data_bag_secret
|
41
|
-
awk NF /tmp/encrypted_data_bag_secret > /etc/chef/encrypted_data_bag_secret
|
42
|
-
rm /tmp/encrypted_data_bag_secret
|
43
40
|
chmod 0600 /etc/chef/encrypted_data_bag_secret
|
44
41
|
<% end -%>
|
45
42
|
|
@@ -48,24 +45,18 @@ chmod 0600 /etc/chef/encrypted_data_bag_secret
|
|
48
45
|
mkdir -p /etc/chef/ohai/hints
|
49
46
|
|
50
47
|
<% @chef_config[:knife][:hints].each do |name, hash| -%>
|
51
|
-
|
52
|
-
cat <<'EOP'
|
48
|
+
cat > /etc/chef/ohai/hints/<%= name %>.json <<'EOP'
|
53
49
|
<%= hash.to_json %>
|
54
50
|
EOP
|
55
|
-
) > /etc/chef/ohai/hints/<%= name %>.json
|
56
51
|
<% end -%>
|
57
52
|
<% end -%>
|
58
53
|
|
59
|
-
|
60
|
-
cat <<'EOP'
|
54
|
+
cat > /etc/chef/client.rb <<'EOP'
|
61
55
|
<%= config_content %>
|
62
56
|
EOP
|
63
|
-
) > /etc/chef/client.rb
|
64
57
|
|
65
|
-
|
66
|
-
cat <<'EOP'
|
58
|
+
cat > /etc/chef/first-boot.json <<'EOP'
|
67
59
|
<%= first_boot.to_json %>
|
68
60
|
EOP
|
69
|
-
) > /etc/chef/first-boot.json
|
70
61
|
|
71
62
|
<%= start_chef %>'
|
@@ -16,32 +16,25 @@ version_string="-v <%= chef_version %>"
|
|
16
16
|
if ! exists /usr/bin/chef-client; then
|
17
17
|
if exists wget; then
|
18
18
|
bash <(wget <%= "--proxy=on " if knife_config[:bootstrap_proxy] %> ${install_sh} -O -) ${version_string}
|
19
|
+
elif exists curl; then
|
20
|
+
bash <(curl -L <%= "--proxy \"#{knife_config[:bootstrap_proxy]}\" " if knife_config[:bootstrap_proxy] %> ${install_sh}) ${version_string}
|
19
21
|
else
|
20
|
-
|
21
|
-
|
22
|
-
fi
|
22
|
+
echo "Neither wget nor curl found. Please install one and try again." >&2
|
23
|
+
exit 1
|
23
24
|
fi
|
24
25
|
fi
|
25
26
|
|
26
27
|
mkdir -p /etc/chef
|
27
28
|
|
28
|
-
|
29
|
-
cat <<'EOP'
|
29
|
+
awk NF > /etc/chef/validation.pem <<'EOP'
|
30
30
|
<%= validation_key %>
|
31
31
|
EOP
|
32
|
-
) > /tmp/validation.pem
|
33
|
-
awk NF /tmp/validation.pem > /etc/chef/validation.pem
|
34
|
-
rm /tmp/validation.pem
|
35
32
|
chmod 0600 /etc/chef/validation.pem
|
36
33
|
|
37
34
|
<% if @chef_config[:encrypted_data_bag_secret] -%>
|
38
|
-
|
39
|
-
cat <<'EOP'
|
35
|
+
awk NF > /etc/chef/encrypted_data_bag_secret <<'EOP'
|
40
36
|
<%= encrypted_data_bag_secret %>
|
41
37
|
EOP
|
42
|
-
) > /tmp/encrypted_data_bag_secret
|
43
|
-
awk NF /tmp/encrypted_data_bag_secret > /etc/chef/encrypted_data_bag_secret
|
44
|
-
rm /tmp/encrypted_data_bag_secret
|
45
38
|
chmod 0600 /etc/chef/encrypted_data_bag_secret
|
46
39
|
<% end -%>
|
47
40
|
|
@@ -50,24 +43,18 @@ chmod 0600 /etc/chef/encrypted_data_bag_secret
|
|
50
43
|
mkdir -p /etc/chef/ohai/hints
|
51
44
|
|
52
45
|
<% @chef_config[:knife][:hints].each do |name, hash| -%>
|
53
|
-
|
54
|
-
cat <<'EOP'
|
46
|
+
cat > /etc/chef/ohai/hints/<%= name %>.json <<'EOP'
|
55
47
|
<%= hash.to_json %>
|
56
48
|
EOP
|
57
|
-
) > /etc/chef/ohai/hints/<%= name %>.json
|
58
49
|
<% end -%>
|
59
50
|
<% end -%>
|
60
51
|
|
61
|
-
|
62
|
-
cat <<'EOP'
|
52
|
+
cat > /etc/chef/client.rb <<'EOP'
|
63
53
|
<%= config_content %>
|
64
54
|
EOP
|
65
|
-
) > /etc/chef/client.rb
|
66
55
|
|
67
|
-
|
68
|
-
cat <<'EOP'
|
56
|
+
cat > /etc/chef/first-boot.json <<'EOP'
|
69
57
|
<%= first_boot.to_json %>
|
70
58
|
EOP
|
71
|
-
) > /etc/chef/first-boot.json
|
72
59
|
|
73
60
|
<%= start_chef %>'
|
@@ -10,23 +10,15 @@ gem install chef --no-rdoc --no-ri --verbose <%= bootstrap_version_string %>
|
|
10
10
|
|
11
11
|
mkdir -p /etc/chef
|
12
12
|
|
13
|
-
|
14
|
-
cat <<'EOP'
|
13
|
+
awk NF > /etc/chef/validation.pem <<'EOP'
|
15
14
|
<%= validation_key %>
|
16
15
|
EOP
|
17
|
-
) > /tmp/validation.pem
|
18
|
-
awk NF /tmp/validation.pem > /etc/chef/validation.pem
|
19
|
-
rm /tmp/validation.pem
|
20
16
|
chmod 0600 /etc/chef/validation.pem
|
21
17
|
|
22
18
|
<% if @chef_config[:encrypted_data_bag_secret] -%>
|
23
|
-
|
24
|
-
cat <<'EOP'
|
19
|
+
awk NF > /etc/chef/encrypted_data_bag_secret <<'EOP'
|
25
20
|
<%= encrypted_data_bag_secret %>
|
26
21
|
EOP
|
27
|
-
) > /tmp/encrypted_data_bag_secret
|
28
|
-
awk NF /tmp/encrypted_data_bag_secret > /etc/chef/encrypted_data_bag_secret
|
29
|
-
rm /tmp/encrypted_data_bag_secret
|
30
22
|
chmod 0600 /etc/chef/encrypted_data_bag_secret
|
31
23
|
<% end -%>
|
32
24
|
|
@@ -35,24 +27,18 @@ chmod 0600 /etc/chef/encrypted_data_bag_secret
|
|
35
27
|
mkdir -p /etc/chef/ohai/hints
|
36
28
|
|
37
29
|
<% @chef_config[:knife][:hints].each do |name, hash| -%>
|
38
|
-
|
39
|
-
cat <<'EOP'
|
30
|
+
cat > /etc/chef/ohai/hints/<%= name %>.json <<'EOP'
|
40
31
|
<%= hash.to_json %>
|
41
32
|
EOP
|
42
|
-
) > /etc/chef/ohai/hints/<%= name %>.json
|
43
33
|
<% end -%>
|
44
34
|
<% end -%>
|
45
35
|
|
46
|
-
|
47
|
-
cat <<'EOP'
|
36
|
+
cat > /etc/chef/client.rb <<'EOP'
|
48
37
|
<%= config_content %>
|
49
38
|
EOP
|
50
|
-
) > /etc/chef/client.rb
|
51
39
|
|
52
|
-
|
53
|
-
cat <<'EOP'
|
40
|
+
cat > /etc/chef/first-boot.json <<'EOP'
|
54
41
|
<%= first_boot.to_json %>
|
55
42
|
EOP
|
56
|
-
) > /etc/chef/first-boot.json
|
57
43
|
|
58
44
|
<%= start_chef %>'
|
@@ -10,23 +10,15 @@ fi
|
|
10
10
|
apt-get update
|
11
11
|
apt-get install -y chef
|
12
12
|
|
13
|
-
|
14
|
-
cat <<'EOP'
|
13
|
+
awk NF > /etc/chef/validation.pem <<'EOP'
|
15
14
|
<%= validation_key %>
|
16
15
|
EOP
|
17
|
-
) > /tmp/validation.pem
|
18
|
-
awk NF /tmp/validation.pem > /etc/chef/validation.pem
|
19
|
-
rm /tmp/validation.pem
|
20
16
|
chmod 0600 /etc/chef/validation.pem
|
21
17
|
|
22
18
|
<% if @chef_config[:encrypted_data_bag_secret] -%>
|
23
|
-
|
24
|
-
cat <<'EOP'
|
19
|
+
awk NF > /etc/chef/encrypted_data_bag_secret <<'EOP'
|
25
20
|
<%= encrypted_data_bag_secret %>
|
26
21
|
EOP
|
27
|
-
) > /tmp/encrypted_data_bag_secret
|
28
|
-
awk NF /tmp/encrypted_data_bag_secret > /etc/chef/encrypted_data_bag_secret
|
29
|
-
rm /tmp/encrypted_data_bag_secret
|
30
22
|
chmod 0600 /etc/chef/encrypted_data_bag_secret
|
31
23
|
<% end -%>
|
32
24
|
|
@@ -35,11 +27,9 @@ chmod 0600 /etc/chef/encrypted_data_bag_secret
|
|
35
27
|
mkdir -p /etc/chef/ohai/hints
|
36
28
|
|
37
29
|
<% @chef_config[:knife][:hints].each do |name, hash| -%>
|
38
|
-
|
39
|
-
cat <<'EOP'
|
30
|
+
cat > /etc/chef/ohai/hints/<%= name %>.json <<'EOP'
|
40
31
|
<%= hash.to_json %>
|
41
32
|
EOP
|
42
|
-
) > /etc/chef/ohai/hints/<%= name %>.json
|
43
33
|
<% end -%>
|
44
34
|
<% end -%>
|
45
35
|
|
@@ -56,10 +46,8 @@ echo 'http_proxy "knife_config[:bootstrap_proxy]"' >> /etc/chef/client.rb
|
|
56
46
|
echo 'https_proxy "knife_config[:bootstrap_proxy]"' >> /etc/chef/client.rb
|
57
47
|
<% end -%>
|
58
48
|
|
59
|
-
|
60
|
-
cat <<'EOP'
|
49
|
+
cat > /etc/chef/first-boot.json <<'EOP'
|
61
50
|
<%= first_boot.to_json %>
|
62
51
|
EOP
|
63
|
-
) > /etc/chef/first-boot.json
|
64
52
|
|
65
53
|
<%= start_chef %>'
|
@@ -4,11 +4,8 @@ bash -c '
|
|
4
4
|
if [ ! -f /usr/bin/chef-client ]; then
|
5
5
|
apt-get update
|
6
6
|
apt-get install -y ruby ruby1.8-dev build-essential wget libruby-extras libruby1.8-extras
|
7
|
-
|
8
|
-
|
9
|
-
tar zxf rubygems-1.6.2.tgz
|
10
|
-
cd rubygems-1.6.2
|
11
|
-
ruby setup.rb --no-format-executable
|
7
|
+
wget <%= "--proxy=on " if knife_config[:bootstrap_proxy] %>http://production.cf.rubygems.org/rubygems/rubygems-1.6.2.tgz -O - | tar zxf -
|
8
|
+
(cd rubygems-1.6.2 && ruby setup.rb --no-format-executable)
|
12
9
|
fi
|
13
10
|
|
14
11
|
gem update --no-rdoc --no-ri
|
@@ -17,23 +14,15 @@ gem install chef --no-rdoc --no-ri --verbose <%= bootstrap_version_string %>
|
|
17
14
|
|
18
15
|
mkdir -p /etc/chef
|
19
16
|
|
20
|
-
|
21
|
-
cat <<'EOP'
|
17
|
+
awk NF > /etc/chef/validation.pem <<'EOP'
|
22
18
|
<%= validation_key %>
|
23
19
|
EOP
|
24
|
-
) > /tmp/validation.pem
|
25
|
-
awk NF /tmp/validation.pem > /etc/chef/validation.pem
|
26
|
-
rm /tmp/validation.pem
|
27
20
|
chmod 0600 /etc/chef/validation.pem
|
28
21
|
|
29
22
|
<% if @chef_config[:encrypted_data_bag_secret] -%>
|
30
|
-
|
31
|
-
cat <<'EOP'
|
23
|
+
awk NF > /etc/chef/encrypted_data_bag_secret <<'EOP'
|
32
24
|
<%= encrypted_data_bag_secret %>
|
33
25
|
EOP
|
34
|
-
) > /tmp/encrypted_data_bag_secret
|
35
|
-
awk NF /tmp/encrypted_data_bag_secret > /etc/chef/encrypted_data_bag_secret
|
36
|
-
rm /tmp/encrypted_data_bag_secret
|
37
26
|
chmod 0600 /etc/chef/encrypted_data_bag_secret
|
38
27
|
<% end -%>
|
39
28
|
|
@@ -42,24 +31,18 @@ chmod 0600 /etc/chef/encrypted_data_bag_secret
|
|
42
31
|
mkdir -p /etc/chef/ohai/hints
|
43
32
|
|
44
33
|
<% @chef_config[:knife][:hints].each do |name, hash| -%>
|
45
|
-
|
46
|
-
cat <<'EOP'
|
34
|
+
cat > /etc/chef/ohai/hints/<%= name %>.json <<'EOP'
|
47
35
|
<%= hash.to_json %>
|
48
36
|
EOP
|
49
|
-
) > /etc/chef/ohai/hints/<%= name %>.json
|
50
37
|
<% end -%>
|
51
38
|
<% end -%>
|
52
39
|
|
53
|
-
|
54
|
-
cat <<'EOP'
|
40
|
+
cat > /etc/chef/client.rb <<'EOP'
|
55
41
|
<%= config_content %>
|
56
42
|
EOP
|
57
|
-
) > /etc/chef/client.rb
|
58
43
|
|
59
|
-
|
60
|
-
cat <<'EOP'
|
44
|
+
cat > /etc/chef/first-boot.json <<'EOP'
|
61
45
|
<%= first_boot.to_json %>
|
62
46
|
EOP
|
63
|
-
) > /etc/chef/first-boot.json
|
64
47
|
|
65
48
|
<%= start_chef %>'
|
@@ -12,23 +12,15 @@ gem install chef --no-rdoc --no-ri --verbose <%= bootstrap_version_string %>
|
|
12
12
|
|
13
13
|
mkdir -p /etc/chef
|
14
14
|
|
15
|
-
|
16
|
-
cat <<'EOP'
|
15
|
+
awk NF > /etc/chef/validation.pem <<'EOP'
|
17
16
|
<%= validation_key %>
|
18
17
|
EOP
|
19
|
-
) > /tmp/validation.pem
|
20
|
-
awk NF /tmp/validation.pem > /etc/chef/validation.pem
|
21
|
-
rm /tmp/validation.pem
|
22
18
|
chmod 0600 /etc/chef/validation.pem
|
23
19
|
|
24
20
|
<% if @chef_config[:encrypted_data_bag_secret] -%>
|
25
|
-
|
26
|
-
cat <<'EOP'
|
21
|
+
awk NF > /etc/chef/encrypted_data_bag_secret <<'EOP'
|
27
22
|
<%= encrypted_data_bag_secret %>
|
28
23
|
EOP
|
29
|
-
) > /tmp/encrypted_data_bag_secret
|
30
|
-
awk NF /tmp/encrypted_data_bag_secret > /etc/chef/encrypted_data_bag_secret
|
31
|
-
rm /tmp/encrypted_data_bag_secret
|
32
24
|
chmod 0600 /etc/chef/encrypted_data_bag_secret
|
33
25
|
<% end -%>
|
34
26
|
|
@@ -37,24 +29,18 @@ chmod 0600 /etc/chef/encrypted_data_bag_secret
|
|
37
29
|
mkdir -p /etc/chef/ohai/hints
|
38
30
|
|
39
31
|
<% @chef_config[:knife][:hints].each do |name, hash| -%>
|
40
|
-
|
41
|
-
cat <<'EOP'
|
32
|
+
cat > /etc/chef/ohai/hints/<%= name %>.json <<'EOP'
|
42
33
|
<%= hash.to_json %>
|
43
34
|
EOP
|
44
|
-
) > /etc/chef/ohai/hints/<%= name %>.json
|
45
35
|
<% end -%>
|
46
36
|
<% end -%>
|
47
37
|
|
48
|
-
|
49
|
-
cat <<'EOP'
|
38
|
+
cat > /etc/chef/client.rb <<'EOP'
|
50
39
|
<%= config_content %>
|
51
40
|
EOP
|
52
|
-
) > /etc/chef/client.rb
|
53
41
|
|
54
|
-
|
55
|
-
cat <<'EOP'
|
42
|
+
cat > /etc/chef/first-boot.json <<'EOP'
|
56
43
|
<%= first_boot.to_json %>
|
57
44
|
EOP
|
58
|
-
) > /etc/chef/first-boot.json
|
59
45
|
|
60
46
|
<%= start_chef %>'
|
data/lib/chef/knife/bootstrap.rb
CHANGED
@@ -200,13 +200,13 @@ class Chef
|
|
200
200
|
ssh = Chef::Knife::Ssh.new
|
201
201
|
ssh.ui = ui
|
202
202
|
ssh.name_args = [ server_name, ssh_command ]
|
203
|
-
ssh.config[:ssh_user] = config[:ssh_user]
|
203
|
+
ssh.config[:ssh_user] = Chef::Config[:knife][:ssh_user] || config[:ssh_user]
|
204
204
|
ssh.config[:ssh_password] = config[:ssh_password]
|
205
205
|
ssh.config[:ssh_port] = Chef::Config[:knife][:ssh_port] || config[:ssh_port]
|
206
206
|
ssh.config[:ssh_gateway] = Chef::Config[:knife][:ssh_gateway] || config[:ssh_gateway]
|
207
|
-
ssh.config[:identity_file] = config[:identity_file]
|
207
|
+
ssh.config[:identity_file] = Chef::Config[:knife][:identity_file] || config[:identity_file]
|
208
208
|
ssh.config[:manual] = true
|
209
|
-
ssh.config[:host_key_verify] = config[:host_key_verify]
|
209
|
+
ssh.config[:host_key_verify] = Chef::Config[:knife][:host_key_verify] || config[:host_key_verify]
|
210
210
|
ssh.config[:on_error] = :raise
|
211
211
|
ssh
|
212
212
|
end
|
@@ -43,14 +43,15 @@ class Chef
|
|
43
43
|
exit 1
|
44
44
|
end
|
45
45
|
|
46
|
-
client = Chef::ApiClient.
|
47
|
-
|
46
|
+
client = Chef::ApiClient.reregister(@client_name)
|
47
|
+
Chef::Log.debug("Updated client data: #{client.inspect}")
|
48
|
+
key = client.private_key
|
48
49
|
if config[:file]
|
49
50
|
File.open(config[:file], "w") do |f|
|
50
|
-
f.print(key
|
51
|
+
f.print(key)
|
51
52
|
end
|
52
53
|
else
|
53
|
-
ui.msg key
|
54
|
+
ui.msg key
|
54
55
|
end
|
55
56
|
end
|
56
57
|
end
|