chef-provisioning-azure 0.2 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 26141bfd34a60cbcca1f67c7ad5e812a680460a2
|
4
|
+
data.tar.gz: 83399cb5d0df2d81245787aaf2815b61dcd9a5c0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 563c5947d6cf351e69ef06591dba95d8d0b1ade40ad438a1347b9c228f8950096a57c526a8d08466a2bc245b8ec912e994e0694b9f2a46ec48bccf1303ea89ed
|
7
|
+
data.tar.gz: 1ac137365d67e200a3bee5a4594e78d855adb5085997e0bff8fbbf2414f746cdd01f5218ba86dbeef5fde2e911b3df4707250bd9ea8cf431c40917636ed46eef
|
@@ -82,22 +82,40 @@ module AzureDriver
|
|
82
82
|
|
83
83
|
image_id = machine_options[:image_id] || default_image_for_location(location)
|
84
84
|
|
85
|
-
params = {
|
86
|
-
vm_name: machine_spec.name,
|
87
|
-
vm_user: default_ssh_username,
|
88
|
-
image: image_id,
|
89
|
-
# This is only until SSH keys are added
|
90
|
-
password: machine_options[:password],
|
91
|
-
location: location
|
92
|
-
}
|
93
|
-
|
94
85
|
Chef::Log.debug "Azure bootstrap options: #{bootstrap_options.inspect}"
|
86
|
+
|
87
|
+
# If the cloud service exists already, need to add a role to it - otherwise create virtual machine (including cloud service)
|
88
|
+
cloud_service = azure_cloud_service_service.get_cloud_service(bootstrap_options[:cloud_service_name])
|
89
|
+
|
90
|
+
if cloud_service
|
91
|
+
action_handler.report_progress "Cloud Service #{bootstrap_options[:cloud_service_name]} already exists, adding role."
|
92
|
+
params = {
|
93
|
+
vm_name: machine_spec.name,
|
94
|
+
vm_user: default_ssh_username,
|
95
|
+
image: image_id,
|
96
|
+
# This is only until SSH keys are added
|
97
|
+
password: machine_options[:password],
|
98
|
+
cloud_service_name: bootstrap_options[:cloud_service_name]
|
99
|
+
}
|
100
|
+
|
101
|
+
action_handler.report_progress "Creating #{machine_spec.name} with image #{image_id} in #{bootstrap_options[:cloud_service_name]}..."
|
102
|
+
vm = azure_vm_service.add_role(params, bootstrap_options)
|
103
|
+
else
|
104
|
+
params = {
|
105
|
+
vm_name: machine_spec.name,
|
106
|
+
vm_user: default_ssh_username,
|
107
|
+
image: image_id,
|
108
|
+
# This is only until SSH keys are added
|
109
|
+
password: machine_options[:password],
|
110
|
+
location: location
|
111
|
+
}
|
112
|
+
|
113
|
+
action_handler.report_progress "Creating #{machine_spec.name} with image #{image_id} in #{location}..."
|
114
|
+
vm = azure_vm_service.create_virtual_machine(params, bootstrap_options)
|
115
|
+
end
|
95
116
|
|
96
|
-
action_handler.report_progress "Creating #{machine_spec.name} with image #{image_id} in #{location}..."
|
97
|
-
vm = azure_vm_service.create_virtual_machine(params, bootstrap_options)
|
98
117
|
machine_spec.location['vm_name'] = vm.vm_name
|
99
|
-
action_handler.report_progress "Created #{vm.vm_name} in #{location}..."
|
100
|
-
|
118
|
+
action_handler.report_progress "Created #{vm.vm_name} in #{location}..."
|
101
119
|
end
|
102
120
|
|
103
121
|
# (see Chef::Provisioning::Driver#ready_machine)
|
@@ -160,6 +178,10 @@ module AzureDriver
|
|
160
178
|
@vm_service ||= Azure::VirtualMachineManagementService.new
|
161
179
|
end
|
162
180
|
|
181
|
+
def azure_cloud_service_service
|
182
|
+
@cloud_service_service ||= Azure::CloudServiceManagementService.new
|
183
|
+
end
|
184
|
+
|
163
185
|
def default_ssh_username
|
164
186
|
'ubuntu'
|
165
187
|
end
|
@@ -212,7 +234,10 @@ module AzureDriver
|
|
212
234
|
remote_host = tcp_endpoint[:vip]
|
213
235
|
|
214
236
|
# TODO: not this... replace with SSH key ASAP, only for getting this thing going...
|
215
|
-
ssh_options = {
|
237
|
+
ssh_options = {
|
238
|
+
password: machine_options[:password],
|
239
|
+
port: tcp_endpoint[:public_port] # use public port from Cloud Service endpoint
|
240
|
+
}
|
216
241
|
|
217
242
|
options = {}
|
218
243
|
options[:prefix] = 'sudo ' if machine_spec.location[:sudo] || username != 'root'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: chef-provisioning-azure
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Ewart
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-02-
|
11
|
+
date: 2015-02-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: chef
|