chef-provisioning-azurerm 0.3.5 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/lib/chef/provider/azure_network_interface.rb +8 -8
- data/lib/chef/provider/azure_public_ip_address.rb +5 -5
- data/lib/chef/provider/azure_resource_group.rb +8 -8
- data/lib/chef/provider/azure_resource_template.rb +19 -16
- data/lib/chef/provider/azure_storage_account.rb +10 -8
- data/lib/chef/provider/azure_virtual_network.rb +4 -4
- data/lib/chef/provisioning/azurerm/azure_resource.rb +1 -1
- data/lib/chef/provisioning/azurerm/credentials.rb +1 -1
- data/lib/chef/provisioning/azurerm/driver.rb +1 -1
- data/lib/chef/provisioning/azurerm/version.rb +1 -1
- data/lib/chef/resource/azure_storage_account.rb +2 -2
- data/lib/chef/resource/azure_virtual_network.rb +1 -1
- metadata +50 -81
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 42463ec1cf6179ddd12dc6b5187c71e7ff369bfb
|
4
|
+
data.tar.gz: 09e49c85dfc2c180cd4ff3a1f67f47fbf5ac49a2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 55994c329df15108b24a815e386d9e430d83779508e30e420474a602151674e36bb5aaf529a2c1fb8056668988f29625e949fe00c71654c594e50f853e1b6b84
|
7
|
+
data.tar.gz: ecbfab9b582c27d63c3cace35fbf7350c835e4ddfeb1edb071050b7278a301fa40f879ce9b5225e9f235ce1b9d6bf023a71838521367c78a17a14e5c32c5fed7
|
data/CHANGELOG.md
CHANGED
@@ -1,4 +1,12 @@
|
|
1
1
|
# chef-provisioning-azurerm Changelog
|
2
|
+
## [0.4.0] - 2016-10-02
|
3
|
+
- BREAKING CHANGE: No longer assume ARM template_source points to a location within the Chef Repo, users must now specify the complete path to the file (@stuartpreston)
|
4
|
+
- Removing gem dependency on json, chef-provisioning in attempt to maintain compat with <2.0 versions (@stuartpreston)
|
5
|
+
- Align with latest Azure SDK for Ruby (@stuartpreston)
|
6
|
+
- AzureOperationError no longer has a body property (@stuartpreston)
|
7
|
+
- Add custom_domain property to fix Storage resource (@bgxavier)
|
8
|
+
- Chef VM Extension now supports chef_environment property (@andrimarjonsson)
|
9
|
+
|
2
10
|
## [0.3.5] - 2016-05-10
|
3
11
|
- Removing gem dependency on inifile, assume chef-provisioning has this covered (@stuartpreston)
|
4
12
|
|
@@ -45,10 +45,10 @@ class Chef
|
|
45
45
|
|
46
46
|
def does_network_interface_exist
|
47
47
|
network_interface_list = try_azure_operation('enumerating network interfaces') do
|
48
|
-
network_management_client.network_interfaces.list(new_resource.resource_group)
|
48
|
+
network_management_client.network_interfaces.list(new_resource.resource_group)
|
49
49
|
end
|
50
50
|
|
51
|
-
network_interface_list.
|
51
|
+
network_interface_list.value.each do |network_interface|
|
52
52
|
return true if network_interface.name == new_resource.name
|
53
53
|
end
|
54
54
|
false
|
@@ -57,7 +57,7 @@ class Chef
|
|
57
57
|
def destroy_network_interface
|
58
58
|
action_handler.report_progress 'Destroying network interface...'
|
59
59
|
try_azure_operation 'destroying network interface' do
|
60
|
-
network_management_client.network_interfaces.delete(new_resource.resource_group, new_resource.name)
|
60
|
+
network_management_client.network_interfaces.delete(new_resource.resource_group, new_resource.name)
|
61
61
|
end
|
62
62
|
end
|
63
63
|
|
@@ -65,7 +65,7 @@ class Chef
|
|
65
65
|
network_interface_params = create_network_interface_params
|
66
66
|
action_handler.report_progress 'Creating or Updating network interface...'
|
67
67
|
try_azure_operation 'Creating or Updating network interface' do
|
68
|
-
network_management_client.network_interfaces.create_or_update(new_resource.resource_group, new_resource.name, network_interface_params)
|
68
|
+
network_management_client.network_interfaces.create_or_update(new_resource.resource_group, new_resource.name, network_interface_params)
|
69
69
|
end
|
70
70
|
end
|
71
71
|
|
@@ -135,10 +135,10 @@ class Chef
|
|
135
135
|
|
136
136
|
def get_public_ip(resource_group, resource_name)
|
137
137
|
result = try_azure_operation('getting public IP') do
|
138
|
-
network_management_client.public_ip_addresses.get(resource_group, resource_name)
|
138
|
+
network_management_client.public_ip_addresses.get(resource_group, resource_name)
|
139
139
|
end
|
140
140
|
|
141
|
-
public_ip = result
|
141
|
+
public_ip = result
|
142
142
|
public_ip.id
|
143
143
|
end
|
144
144
|
|
@@ -148,9 +148,9 @@ class Chef
|
|
148
148
|
end
|
149
149
|
|
150
150
|
result = try_azure_operation('getting subnet') do
|
151
|
-
network_management_client.subnets.get(resource_group_name, vnet_name, subnet_name)
|
151
|
+
network_management_client.subnets.get(resource_group_name, vnet_name, subnet_name)
|
152
152
|
end
|
153
|
-
subnet = result
|
153
|
+
subnet = result
|
154
154
|
|
155
155
|
subnet.id
|
156
156
|
end
|
@@ -26,8 +26,8 @@ class Chef
|
|
26
26
|
end
|
27
27
|
|
28
28
|
def public_ip_address_exists
|
29
|
-
public_ip_address_list = network_management_client.public_ip_addresses.list(new_resource.resource_group)
|
30
|
-
public_ip_address_list.
|
29
|
+
public_ip_address_list = network_management_client.public_ip_addresses.list(new_resource.resource_group)
|
30
|
+
public_ip_address_list.value.each do |public_ip_address|
|
31
31
|
return true if public_ip_address.name == new_resource.name
|
32
32
|
end
|
33
33
|
|
@@ -50,13 +50,13 @@ class Chef
|
|
50
50
|
public_ip_address.properties = public_ip_address_properties
|
51
51
|
|
52
52
|
try_azure_operation('creating or updating public ip') do
|
53
|
-
network_management_client.public_ip_addresses.create_or_update(new_resource.resource_group, new_resource.name, public_ip_address)
|
53
|
+
network_management_client.public_ip_addresses.create_or_update(new_resource.resource_group, new_resource.name, public_ip_address)
|
54
54
|
end
|
55
55
|
end
|
56
56
|
|
57
57
|
def destroy_public_ip_address
|
58
|
-
try_azure_operation('
|
59
|
-
network_management_client.public_ip_addresses.delete(new_resource.resource_group, new_resource.name)
|
58
|
+
try_azure_operation('destroying public ip') do
|
59
|
+
network_management_client.public_ip_addresses.delete(new_resource.resource_group, new_resource.name)
|
60
60
|
end
|
61
61
|
end
|
62
62
|
|
@@ -15,21 +15,21 @@ class Chef
|
|
15
15
|
resource_group = Azure::ARM::Resources::Models::ResourceGroup.new
|
16
16
|
resource_group.location = new_resource.location
|
17
17
|
resource_group.tags = new_resource.tags
|
18
|
-
result = resource_management_client.resource_groups.create_or_update(new_resource.name, resource_group)
|
19
|
-
Chef::Log.debug("result: #{result.
|
18
|
+
result = resource_management_client.resource_groups.create_or_update(new_resource.name, resource_group)
|
19
|
+
Chef::Log.debug("result: #{result.inspect}")
|
20
20
|
rescue ::MsRestAzure::AzureOperationError => operation_error
|
21
|
-
Chef::Log.error operation_error.body
|
22
|
-
raise
|
21
|
+
Chef::Log.error operation_error.response.body
|
22
|
+
raise operation_error.response.inspect
|
23
23
|
end
|
24
24
|
end
|
25
25
|
end
|
26
26
|
|
27
27
|
action :destroy do
|
28
28
|
converge_by("destroy Resource Group #{new_resource.name}") do
|
29
|
-
resource_group_exists = resource_management_client.resource_groups.check_existence(new_resource.name)
|
30
|
-
if resource_group_exists
|
31
|
-
result = resource_management_client.resource_groups.delete(new_resource.name)
|
32
|
-
Chef::Log.debug("result: #{result.
|
29
|
+
resource_group_exists = resource_management_client.resource_groups.check_existence(new_resource.name)
|
30
|
+
if resource_group_exists
|
31
|
+
result = resource_management_client.resource_groups.delete(new_resource.name)
|
32
|
+
Chef::Log.debug("result: #{result.inspect}")
|
33
33
|
else
|
34
34
|
action_handler.report_progress "Resource Group #{new_resource.name} was not found."
|
35
35
|
end
|
@@ -12,13 +12,12 @@ class Chef
|
|
12
12
|
action :deploy do
|
13
13
|
converge_by("deploy or re-deploy Resource Manager template '#{new_resource.name}'") do
|
14
14
|
begin
|
15
|
-
result = resource_management_client.deployments.
|
16
|
-
|
17
|
-
Chef::Log.debug("result: #{result.body.inspect}")
|
15
|
+
result = resource_management_client.deployments.begin_create_or_update_async(new_resource.resource_group, new_resource.name, deployment).value!
|
16
|
+
Chef::Log.debug("result: #{result.response.body}")
|
18
17
|
follow_deployment_until_end_state
|
19
18
|
rescue ::MsRestAzure::AzureOperationError => operation_error
|
20
|
-
Chef::Log.error operation_error.body
|
21
|
-
raise
|
19
|
+
Chef::Log.error operation_error.response.body
|
20
|
+
raise operation_error.response.inspect
|
22
21
|
end
|
23
22
|
end
|
24
23
|
end
|
@@ -33,8 +32,8 @@ class Chef
|
|
33
32
|
end
|
34
33
|
|
35
34
|
def template
|
36
|
-
template_src_file =
|
37
|
-
|
35
|
+
template_src_file = new_resource.template_source
|
36
|
+
Chef::Log.error "Cannot find file: #{template_src_file}" unless ::File.file?(template_src_file)
|
38
37
|
template = JSON.parse(::IO.read(template_src_file))
|
39
38
|
if new_resource.chef_extension
|
40
39
|
machines = template['resources'].select { |h| h['type'] == 'Microsoft.Compute/virtualMachines' }
|
@@ -58,6 +57,7 @@ class Chef
|
|
58
57
|
chef_server_url = Chef::Config[:chef_server_url]
|
59
58
|
validation_client_name = Chef::Config[:validation_client_name]
|
60
59
|
validation_key_content = ::File.read(Chef::Config[:validation_key])
|
60
|
+
chef_environment = new_resource.chef_extension[:environment].empty? ? '_default' : new_resource.chef_extension[:environment]
|
61
61
|
machine_name = "\'#{machine_name}\'" unless machine_name[0] == '['
|
62
62
|
<<-EOH
|
63
63
|
{
|
@@ -76,12 +76,13 @@ class Chef
|
|
76
76
|
"bootstrap_options": {
|
77
77
|
"chef_node_name" : "[concat(#{machine_name.delete('[]')},'.','#{new_resource.resource_group}')]",
|
78
78
|
"chef_server_url" : "#{chef_server_url}",
|
79
|
-
"validation_client_name" : "#{validation_client_name}"
|
79
|
+
"validation_client_name" : "#{validation_client_name}",
|
80
|
+
"environment" : "#{chef_environment}"
|
80
81
|
},
|
81
82
|
"runlist": "#{new_resource.chef_extension[:runlist]}"
|
82
83
|
},
|
83
84
|
"protectedSettings": {
|
84
|
-
|
85
|
+
"validation_key": "#{validation_key_content.gsub("\n", '\\n')}"
|
85
86
|
}
|
86
87
|
}
|
87
88
|
}
|
@@ -102,11 +103,13 @@ class Chef
|
|
102
103
|
|
103
104
|
def list_outstanding_deployment_operations
|
104
105
|
end_operation_states = 'Failed,Succeeded'
|
105
|
-
deployment_operations = resource_management_client.deployment_operations.list(new_resource.resource_group, new_resource.name)
|
106
|
-
deployment_operations.
|
106
|
+
deployment_operations = resource_management_client.deployment_operations.list(new_resource.resource_group, new_resource.name)
|
107
|
+
deployment_operations.each do |val|
|
107
108
|
resource_provisioning_state = val.properties.provisioning_state
|
108
|
-
|
109
|
-
|
109
|
+
unless val.properties.target_resource.nil?
|
110
|
+
resource_name = val.properties.target_resource.resource_name
|
111
|
+
resource_type = val.properties.target_resource.resource_type
|
112
|
+
end
|
110
113
|
end_operation_state_reached = end_operation_states.split(',').include?(resource_provisioning_state)
|
111
114
|
unless end_operation_state_reached
|
112
115
|
action_handler.report_progress "Resource #{resource_type} '#{resource_name}' provisioning status is #{resource_provisioning_state}\n"
|
@@ -115,9 +118,9 @@ class Chef
|
|
115
118
|
end
|
116
119
|
|
117
120
|
def deployment_state
|
118
|
-
deployments = resource_management_client.deployments.get(new_resource.resource_group, new_resource.name)
|
119
|
-
Chef::Log.debug("deployments result: #{deployments.
|
120
|
-
deployments.
|
121
|
+
deployments = resource_management_client.deployments.get(new_resource.resource_group, new_resource.name)
|
122
|
+
Chef::Log.debug("deployments result: #{deployments.inspect}")
|
123
|
+
deployments.properties.provisioning_state
|
121
124
|
end
|
122
125
|
end
|
123
126
|
end
|
@@ -33,7 +33,7 @@ class Chef
|
|
33
33
|
storage_account_exists = does_storage_account_exist
|
34
34
|
if storage_account_exists
|
35
35
|
action_handler.report_progress 'destroying Storage Account'
|
36
|
-
storage_management_client.storage_accounts.delete(new_resource.resource_group, new_resource.name)
|
36
|
+
storage_management_client.storage_accounts.delete(new_resource.resource_group, new_resource.name)
|
37
37
|
else
|
38
38
|
action_handler.report_progress "Storage Account #{new_resource.name} was not found."
|
39
39
|
end
|
@@ -41,8 +41,8 @@ class Chef
|
|
41
41
|
end
|
42
42
|
|
43
43
|
def does_storage_account_exist
|
44
|
-
storage_account_list = storage_management_client.storage_accounts.list_by_resource_group(new_resource.resource_group)
|
45
|
-
storage_account_list.
|
44
|
+
storage_account_list = storage_management_client.storage_accounts.list_by_resource_group(new_resource.resource_group)
|
45
|
+
storage_account_list.value.each do |storage_account|
|
46
46
|
return true if storage_account.name == new_resource.name
|
47
47
|
end
|
48
48
|
false
|
@@ -55,7 +55,7 @@ class Chef
|
|
55
55
|
storage_account.properties = Azure::ARM::Storage::Models::StorageAccountPropertiesCreateParameters.new
|
56
56
|
storage_account.properties.account_type = new_resource.account_type
|
57
57
|
action_handler.report_progress 'creating Storage Account'
|
58
|
-
result = storage_management_client.storage_accounts.create(new_resource.resource_group, new_resource.name, storage_account)
|
58
|
+
result = storage_management_client.storage_accounts.create(new_resource.resource_group, new_resource.name, storage_account)
|
59
59
|
Chef::Log.debug(result)
|
60
60
|
end
|
61
61
|
|
@@ -70,7 +70,7 @@ class Chef
|
|
70
70
|
storage_account.tags = new_resource.tags
|
71
71
|
storage_account.properties = Azure::ARM::Storage::Models::StorageAccountPropertiesUpdateParameters.new
|
72
72
|
action_handler.report_progress 'updating Tags'
|
73
|
-
result = storage_management_client.storage_accounts.update(new_resource.resource_group, new_resource.name, storage_account)
|
73
|
+
result = storage_management_client.storage_accounts.update(new_resource.resource_group, new_resource.name, storage_account)
|
74
74
|
Chef::Log.debug(result)
|
75
75
|
end
|
76
76
|
|
@@ -79,16 +79,18 @@ class Chef
|
|
79
79
|
storage_account.properties = Azure::ARM::Storage::Models::StorageAccountPropertiesUpdateParameters.new
|
80
80
|
storage_account.properties.account_type = new_resource.account_type
|
81
81
|
action_handler.report_progress 'updating Properties'
|
82
|
-
result = storage_management_client.storage_accounts.update(new_resource.resource_group, new_resource.name, storage_account)
|
82
|
+
result = storage_management_client.storage_accounts.update(new_resource.resource_group, new_resource.name, storage_account)
|
83
83
|
Chef::Log.debug(result)
|
84
84
|
end
|
85
85
|
|
86
86
|
def update_storage_account_custom_domain
|
87
87
|
storage_account = Azure::ARM::Storage::Models::StorageAccountUpdateParameters.new
|
88
88
|
storage_account.properties = Azure::ARM::Storage::Models::StorageAccountPropertiesUpdateParameters.new
|
89
|
-
|
89
|
+
custom_domain = Azure::ARM::Storage::Models::CustomDomain.new
|
90
|
+
custom_domain.name = new_resource.custom_domain
|
91
|
+
storage_account.properties.custom_domain = custom_domain
|
90
92
|
action_handler.report_progress 'updating Custom Domain'
|
91
|
-
result = storage_management_client.storage_accounts.update(new_resource.resource_group, new_resource.name, storage_account)
|
93
|
+
result = storage_management_client.storage_accounts.update(new_resource.resource_group, new_resource.name, storage_account)
|
92
94
|
Chef::Log.debug(result)
|
93
95
|
end
|
94
96
|
end
|
@@ -36,10 +36,10 @@ class Chef
|
|
36
36
|
|
37
37
|
def does_virtual_network_exist
|
38
38
|
virtual_network_list = try_azure_operation('listing virtual networks') do
|
39
|
-
network_management_client.virtual_networks.list(new_resource.resource_group)
|
39
|
+
network_management_client.virtual_networks.list(new_resource.resource_group)
|
40
40
|
end
|
41
41
|
|
42
|
-
virtual_network_list.
|
42
|
+
virtual_network_list.value.each do |virtual_network|
|
43
43
|
return true if virtual_network.name == new_resource.name
|
44
44
|
end
|
45
45
|
false
|
@@ -48,7 +48,7 @@ class Chef
|
|
48
48
|
def destroy_virtual_network
|
49
49
|
action_handler.report_progress 'Destroying Virtual Network...'
|
50
50
|
try_azure_operation('destroying virtual network') do
|
51
|
-
network_management_client.virtual_networks.delete(new_resource.resource_group, new_resource.name)
|
51
|
+
network_management_client.virtual_networks.delete(new_resource.resource_group, new_resource.name)
|
52
52
|
end
|
53
53
|
end
|
54
54
|
|
@@ -64,7 +64,7 @@ class Chef
|
|
64
64
|
action_handler.report_progress 'Creating or Updating Virtual Network...'
|
65
65
|
|
66
66
|
try_azure_operation('creating or updating network interface') do
|
67
|
-
network_management_client.virtual_networks.create_or_update(new_resource.resource_group, new_resource.name, virtual_network)
|
67
|
+
network_management_client.virtual_networks.create_or_update(new_resource.resource_group, new_resource.name, virtual_network)
|
68
68
|
end
|
69
69
|
end
|
70
70
|
|
@@ -11,7 +11,7 @@ class Chef
|
|
11
11
|
@chef_environment = run_context.cheffish.current_environment
|
12
12
|
@chef_server = run_context.cheffish.current_chef_server
|
13
13
|
@driver = run_context.chef_provisioning.current_driver
|
14
|
-
|
14
|
+
Chef::Log.error 'No driver set. (has it been set in your recipe using with_driver?)' unless driver
|
15
15
|
@driver_name, @subscription_id = driver.split(':', 2)
|
16
16
|
end
|
17
17
|
|
@@ -4,7 +4,7 @@ class Chef
|
|
4
4
|
module Provisioning
|
5
5
|
module AzureRM
|
6
6
|
class Credentials
|
7
|
-
CONFIG_PATH = "#{ENV['HOME']}/.azure/credentials"
|
7
|
+
CONFIG_PATH = "#{ENV['HOME']}/.azure/credentials".freeze
|
8
8
|
|
9
9
|
def initialize
|
10
10
|
config_file = ENV['AZURE_CONFIG_FILE'] || File.expand_path(CONFIG_PATH)
|
@@ -17,7 +17,7 @@ class Chef
|
|
17
17
|
end
|
18
18
|
|
19
19
|
def allocate_machine(_action_handler, _machine_spec, _machine_options)
|
20
|
-
|
20
|
+
Chef::Log.error "The Azure Resource Manager does not implement the 'machine' resource. Please refer to documentation."
|
21
21
|
end
|
22
22
|
|
23
23
|
def ready_machine(_action_handler, _machine_spec, _machine_options)
|
@@ -11,9 +11,9 @@ class Chef
|
|
11
11
|
attribute :name, kind_of: String, name_attribute: true, regex: /^[\w]{3,24}$/i
|
12
12
|
attribute :resource_group, kind_of: String
|
13
13
|
attribute :location, kind_of: String, default: 'westus'
|
14
|
-
attribute :tags, kind_of: Hash
|
14
|
+
attribute :tags, kind_of: Hash, default: {}
|
15
15
|
attribute :account_type, kind_of: String, equal_to: %w(Standard_LRS Standard_ZRS Standard_GRS Standard_RAGRS Premium_LRS), default: 'Standard_LRS'
|
16
|
-
attribute :custom_domain, kind_of: String
|
16
|
+
attribute :custom_domain, kind_of: String, default: ''
|
17
17
|
end
|
18
18
|
end
|
19
19
|
end
|
@@ -21,7 +21,7 @@ class Chef
|
|
21
21
|
attribute :subnets, kind_of: Array, callbacks: {
|
22
22
|
'should be an array of subnet hashes, each with a :name and :address_prefix' => lambda do |arg_array|
|
23
23
|
arg_array.each do |subnet|
|
24
|
-
return false unless
|
24
|
+
return false unless [:name, :address_prefix].sort == subnet.keys.sort
|
25
25
|
end
|
26
26
|
return true
|
27
27
|
end
|
metadata
CHANGED
@@ -1,181 +1,151 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: chef-provisioning-azurerm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stuart Preston
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-11-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: chef
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "~>"
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '12.0'
|
20
17
|
- - ">="
|
21
18
|
- !ruby/object:Gem::Version
|
22
|
-
version: '
|
19
|
+
version: '0'
|
23
20
|
type: :runtime
|
24
21
|
prerelease: false
|
25
22
|
version_requirements: !ruby/object:Gem::Requirement
|
26
23
|
requirements:
|
27
|
-
- - "~>"
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: '12.0'
|
30
24
|
- - ">="
|
31
25
|
- !ruby/object:Gem::Version
|
32
|
-
version: '
|
26
|
+
version: '0'
|
33
27
|
- !ruby/object:Gem::Dependency
|
34
28
|
name: chef-provisioning
|
35
29
|
requirement: !ruby/object:Gem::Requirement
|
36
30
|
requirements:
|
37
|
-
- - "
|
31
|
+
- - ">="
|
38
32
|
- !ruby/object:Gem::Version
|
39
|
-
version: '
|
33
|
+
version: '0'
|
40
34
|
type: :runtime
|
41
35
|
prerelease: false
|
42
36
|
version_requirements: !ruby/object:Gem::Requirement
|
43
37
|
requirements:
|
44
|
-
- - "
|
38
|
+
- - ">="
|
45
39
|
- !ruby/object:Gem::Version
|
46
|
-
version: '
|
40
|
+
version: '0'
|
47
41
|
- !ruby/object:Gem::Dependency
|
48
|
-
name:
|
42
|
+
name: azure_mgmt_resources
|
49
43
|
requirement: !ruby/object:Gem::Requirement
|
50
44
|
requirements:
|
51
45
|
- - "~>"
|
52
46
|
- !ruby/object:Gem::Version
|
53
|
-
version: '
|
47
|
+
version: '0.5'
|
54
48
|
- - ">="
|
55
49
|
- !ruby/object:Gem::Version
|
56
|
-
version:
|
50
|
+
version: 0.5.0
|
57
51
|
type: :runtime
|
58
52
|
prerelease: false
|
59
53
|
version_requirements: !ruby/object:Gem::Requirement
|
60
54
|
requirements:
|
61
55
|
- - "~>"
|
62
56
|
- !ruby/object:Gem::Version
|
63
|
-
version: '
|
57
|
+
version: '0.5'
|
64
58
|
- - ">="
|
65
59
|
- !ruby/object:Gem::Version
|
66
|
-
version:
|
67
|
-
- !ruby/object:Gem::Dependency
|
68
|
-
name: azure_mgmt_resources
|
69
|
-
requirement: !ruby/object:Gem::Requirement
|
70
|
-
requirements:
|
71
|
-
- - '='
|
72
|
-
- !ruby/object:Gem::Version
|
73
|
-
version: 0.1.1
|
74
|
-
type: :runtime
|
75
|
-
prerelease: false
|
76
|
-
version_requirements: !ruby/object:Gem::Requirement
|
77
|
-
requirements:
|
78
|
-
- - '='
|
79
|
-
- !ruby/object:Gem::Version
|
80
|
-
version: 0.1.1
|
60
|
+
version: 0.5.0
|
81
61
|
- !ruby/object:Gem::Dependency
|
82
62
|
name: azure_mgmt_storage
|
83
63
|
requirement: !ruby/object:Gem::Requirement
|
84
64
|
requirements:
|
85
|
-
- -
|
65
|
+
- - "~>"
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: '0.5'
|
68
|
+
- - ">="
|
86
69
|
- !ruby/object:Gem::Version
|
87
|
-
version: 0.
|
70
|
+
version: 0.5.0
|
88
71
|
type: :runtime
|
89
72
|
prerelease: false
|
90
73
|
version_requirements: !ruby/object:Gem::Requirement
|
91
74
|
requirements:
|
92
|
-
- -
|
75
|
+
- - "~>"
|
93
76
|
- !ruby/object:Gem::Version
|
94
|
-
version: 0.
|
77
|
+
version: '0.5'
|
78
|
+
- - ">="
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: 0.5.0
|
95
81
|
- !ruby/object:Gem::Dependency
|
96
82
|
name: azure_mgmt_compute
|
97
83
|
requirement: !ruby/object:Gem::Requirement
|
98
84
|
requirements:
|
99
|
-
- -
|
85
|
+
- - "~>"
|
100
86
|
- !ruby/object:Gem::Version
|
101
|
-
version: 0.
|
87
|
+
version: '0.5'
|
88
|
+
- - ">="
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: 0.5.0
|
102
91
|
type: :runtime
|
103
92
|
prerelease: false
|
104
93
|
version_requirements: !ruby/object:Gem::Requirement
|
105
94
|
requirements:
|
106
|
-
- -
|
95
|
+
- - "~>"
|
107
96
|
- !ruby/object:Gem::Version
|
108
|
-
version: 0.
|
97
|
+
version: '0.5'
|
98
|
+
- - ">="
|
99
|
+
- !ruby/object:Gem::Version
|
100
|
+
version: 0.5.0
|
109
101
|
- !ruby/object:Gem::Dependency
|
110
102
|
name: azure_mgmt_network
|
111
103
|
requirement: !ruby/object:Gem::Requirement
|
112
104
|
requirements:
|
113
|
-
- -
|
114
|
-
- !ruby/object:Gem::Version
|
115
|
-
version: 0.1.1
|
116
|
-
type: :runtime
|
117
|
-
prerelease: false
|
118
|
-
version_requirements: !ruby/object:Gem::Requirement
|
119
|
-
requirements:
|
120
|
-
- - '='
|
105
|
+
- - "~>"
|
121
106
|
- !ruby/object:Gem::Version
|
122
|
-
version: 0.
|
123
|
-
-
|
124
|
-
name: ms_rest
|
125
|
-
requirement: !ruby/object:Gem::Requirement
|
126
|
-
requirements:
|
127
|
-
- - '='
|
107
|
+
version: '0.5'
|
108
|
+
- - ">="
|
128
109
|
- !ruby/object:Gem::Version
|
129
|
-
version: 0.
|
110
|
+
version: 0.5.0
|
130
111
|
type: :runtime
|
131
112
|
prerelease: false
|
132
113
|
version_requirements: !ruby/object:Gem::Requirement
|
133
114
|
requirements:
|
134
|
-
- -
|
135
|
-
- !ruby/object:Gem::Version
|
136
|
-
version: 0.1.2
|
137
|
-
- !ruby/object:Gem::Dependency
|
138
|
-
name: ms_rest_azure
|
139
|
-
requirement: !ruby/object:Gem::Requirement
|
140
|
-
requirements:
|
141
|
-
- - '='
|
115
|
+
- - "~>"
|
142
116
|
- !ruby/object:Gem::Version
|
143
|
-
version: 0.
|
144
|
-
|
145
|
-
prerelease: false
|
146
|
-
version_requirements: !ruby/object:Gem::Requirement
|
147
|
-
requirements:
|
148
|
-
- - '='
|
117
|
+
version: '0.5'
|
118
|
+
- - ">="
|
149
119
|
- !ruby/object:Gem::Version
|
150
|
-
version: 0.
|
120
|
+
version: 0.5.0
|
151
121
|
- !ruby/object:Gem::Dependency
|
152
122
|
name: bundler
|
153
123
|
requirement: !ruby/object:Gem::Requirement
|
154
124
|
requirements:
|
155
|
-
- - "
|
125
|
+
- - ">="
|
156
126
|
- !ruby/object:Gem::Version
|
157
|
-
version: '
|
127
|
+
version: '0'
|
158
128
|
type: :development
|
159
129
|
prerelease: false
|
160
130
|
version_requirements: !ruby/object:Gem::Requirement
|
161
131
|
requirements:
|
162
|
-
- - "
|
132
|
+
- - ">="
|
163
133
|
- !ruby/object:Gem::Version
|
164
|
-
version: '
|
134
|
+
version: '0'
|
165
135
|
- !ruby/object:Gem::Dependency
|
166
136
|
name: rake
|
167
137
|
requirement: !ruby/object:Gem::Requirement
|
168
138
|
requirements:
|
169
|
-
- - "
|
139
|
+
- - ">="
|
170
140
|
- !ruby/object:Gem::Version
|
171
|
-
version: '
|
141
|
+
version: '0'
|
172
142
|
type: :development
|
173
143
|
prerelease: false
|
174
144
|
version_requirements: !ruby/object:Gem::Requirement
|
175
145
|
requirements:
|
176
|
-
- - "
|
146
|
+
- - ">="
|
177
147
|
- !ruby/object:Gem::Version
|
178
|
-
version: '
|
148
|
+
version: '0'
|
179
149
|
description: Chef Provisioner for the Microsoft Azure Resource Management API.
|
180
150
|
email:
|
181
151
|
- stuart@pendrica.com
|
@@ -225,9 +195,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
225
195
|
version: '0'
|
226
196
|
requirements: []
|
227
197
|
rubyforge_project:
|
228
|
-
rubygems_version: 2.6.
|
198
|
+
rubygems_version: 2.6.7
|
229
199
|
signing_key:
|
230
200
|
specification_version: 4
|
231
201
|
summary: Chef Provisioner for the Azure Resource Management (ARM) REST API.
|
232
202
|
test_files: []
|
233
|
-
has_rdoc:
|