chef-provisioner 0.1.13 → 0.1.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/chef-provisioner/chef.rb +10 -7
- data/lib/chef-provisioner/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ecb8bfebb997694ef4e8309ede6dc11e82610c45
|
4
|
+
data.tar.gz: e7e5a1eca22af3a6d1edc4c8d0f32edad1a63716
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a1220865fb0d598a00165b2e6c775b48af2d65813bbe1a5f000924b0f324558acb454fae7d605cc90ee05dfafd4827fb7bd3e5ca761b8c98410734ac987dbaa2
|
7
|
+
data.tar.gz: 28f97e54d8333efa74a68e04bf07e1b67012eb47a5aff5c9d9c22b72aff4fba19dbb4601acdeaa386210f44d9b8a5d1b623d701b1c8d27baeae7c7039392f7a4
|
@@ -18,21 +18,24 @@ module ChefProvisioner
|
|
18
18
|
|
19
19
|
def init_server(name, environment: '_default', attributes:{}, run_list:[], force: false)
|
20
20
|
nuke(name) if force
|
21
|
-
key = create_client(name)
|
22
|
-
create_node(name, environment, attributes: attributes, run_list: run_list)
|
21
|
+
key = create_client(name)
|
22
|
+
create_node(name, environment, key, attributes: attributes, run_list: run_list)
|
23
23
|
key
|
24
24
|
end
|
25
25
|
|
26
26
|
def create_client(name)
|
27
|
-
client = ChefAPI::
|
27
|
+
client = ChefAPI::Connection.new.clients.create(name: name)
|
28
28
|
client.private_key
|
29
29
|
rescue => e
|
30
30
|
puts "Failed to create client #{name}"
|
31
31
|
puts e.message
|
32
32
|
end
|
33
33
|
|
34
|
-
def create_node(name, environment, attributes:{}, run_list:[])
|
35
|
-
|
34
|
+
def create_node(name, environment, key, attributes:{}, run_list:[])
|
35
|
+
client_connection = ChefAPI::Connection.new do |connection|
|
36
|
+
connection.key = key
|
37
|
+
end
|
38
|
+
node = client_connection.nodes.create(name: name, run_list: run_list)
|
36
39
|
node.chef_environment = environment
|
37
40
|
node.automatic = attributes['automatic'] || {}
|
38
41
|
node.default = attributes['default'] || {}
|
@@ -45,14 +48,14 @@ module ChefProvisioner
|
|
45
48
|
end
|
46
49
|
|
47
50
|
def delete_client(name)
|
48
|
-
ChefAPI::
|
51
|
+
ChefAPI::Connection.new.clients.destroy(name)
|
49
52
|
rescue => e
|
50
53
|
puts "Failed to delete client #{name}"
|
51
54
|
puts e.message
|
52
55
|
end
|
53
56
|
|
54
57
|
def delete_node(name)
|
55
|
-
ChefAPI::
|
58
|
+
ChefAPI::Connection.new.nodes.destroy(name)
|
56
59
|
rescue => e
|
57
60
|
puts "Failed to delete node #{name}"
|
58
61
|
puts e.message
|