kitchen-azurerm 0.1.0.pre → 0.1.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4f839405ed54ecf3a21f74e5b121312d6a392ebb
4
- data.tar.gz: 9ea5501228c5845968582bfb7a7de47f33f9665c
3
+ metadata.gz: d1392862ee3f3f20c62aa95d89565b1d86451624
4
+ data.tar.gz: b430a55ccc4d41297dfb9518630a37e48b116c05
5
5
  SHA512:
6
- metadata.gz: 1bc408f53fb2ee9da320b0b4ee540c7e5ed6f218abaeecc32feebbf6830a9bb1124285f1f3397e84f110b1dc79e912fedf047e3fdb6df67ab365765a8b50b133
7
- data.tar.gz: 9c392729a184e55754e6f8cfed7b9724cead235ef90237842973a7cdc7be97b350c5b3356bccd20f2bc0b2b8cb5c08b543cf570e01c15b2bf3461e6a5fa13ac8
6
+ metadata.gz: 107f96c6c1dbb7512a31811ac68d6d0491836dd92932db676cb5edd96694450ef2c9382379f11ec0e2a293df58b9d6c8970dd5dddffee3927c519f669a134b5a
7
+ data.tar.gz: 3c5e11e9c0df04fdfda2d1bae924d3602b2c6c2ad60cd6dd6704fad51fb712abcfbdb2ffc586ba7f06e1fde8617d2df4b82848e08b4996d87d6fef7185cae894
@@ -0,0 +1,3 @@
1
+ # knife-azurerm Changelog
2
+ ## [0.1.2] - 2015-09-23
3
+ - Initial release, supports provision of all public image types in Azure (@stuartpreston)
data/README.md CHANGED
@@ -1,2 +1,271 @@
1
1
  # kitchen-azurerm
2
- A driver for Test Kitchen that works with Azure Resource Manager
2
+
3
+ **kitchen-azurerm** is a driver for the popular test harness [Test Kitchen](http://kitchen.ci) that allows Microsoft Azure resources to be provisioned prior to testing. This driver uses the new Microsoft Azure Resource Management REST API via the [azure-sdk-for-ruby](https://github.com/azure/azure-sdk-for-ruby).
4
+
5
+ [![Gem Version](https://badge.fury.io/rb/kitchen-azurerm.svg)](http://badge.fury.io/rb/kitchen-azurerm)
6
+
7
+ ## Known issues
8
+ - WinRM support is not complete, Windows machines will not converge. They will provision fine however.
9
+
10
+ ## Quick-start
11
+ ### Installation
12
+ This plugin is distributed as a Ruby Gem. To install it, run:
13
+
14
+ ```$ gem install kitchen-azurerm```
15
+
16
+ Note if you are running the ChefDK you may need to prefix the command with chef, i.e. ```$ chef gem install kitchen-azurerm```
17
+
18
+ ### Configuration
19
+
20
+ For the driver to interact with the Microsoft Azure Resource management REST API, a Service Principal needs to be configured with Owner rights against the specific subscription being targeted. Using an Organization account and related password is no longer supported. To create a Service Principal and apply the correct permissions, follow the instructions in the article: [Authenticating a service principal with Azure Resource Manager](https://azure.microsoft.com/en-us/documentation/articles/resource-group-authenticate-service-principal/#authenticate-service-principal-with-password---azure-cli)
21
+
22
+ You will essentially need 4 parameters from the above article to configure Chef Provisioning: **Subscription ID**, **Client ID**, **Client Secret/Password** and **Tenant ID**. These can be easily obtained using the azure-cli tools (v0.9.8 or higher) on any platform.
23
+
24
+ Using a text editor, open or create the file ```~/.azure/credentials``` and add the following section:
25
+
26
+ ```ruby
27
+ [abcd1234-YOUR-GUID-HERE-abcdef123456]
28
+ client_id = "48b9bba3-YOUR-GUID-HERE-90f0b68ce8ba"
29
+ client_secret = "your-client-secret-here"
30
+ tenant_id = "9c117323-YOUR-GUID-HERE-9ee430723ba3"
31
+ ```
32
+
33
+ If preferred, you may also set the following environment variables.
34
+
35
+ ```ruby
36
+ AZURE_CLIENT_ID="48b9bba3-YOUR-GUID-HERE-90f0b68ce8ba"
37
+ AZURE_CLIENT_SECRET="your-client-secret-here"
38
+ AZURE_TENANT_ID="9c117323-YOUR-GUID-HERE-9ee430723ba3"
39
+ ```
40
+
41
+ Note that the environment variables, if set, take preference over the values in a configuration file.
42
+
43
+ ### .kitchen.yml example 1 - Linux/Ubuntu
44
+
45
+ Here's an example ```.kitchen.yml``` file that provisions 3 different types of Ubuntu Server, using Chef Zero as the provisioner and SSH as the transport.
46
+
47
+ ```yml
48
+ ---
49
+ driver:
50
+ name: AzureRM
51
+
52
+ driver_config:
53
+ subscription_id: '4801fa9d-YOUR-GUID-HERE-b265ff49ce21'
54
+ location: 'West Europe'
55
+ machine_size: 'Standard_D1'
56
+
57
+ provisioner:
58
+ name: chef_zero
59
+
60
+ platforms:
61
+ - name: ubuntu-12.04
62
+ driver_config:
63
+ image_urn: Canonical:UbuntuServer:12.04.5-LTS:latest
64
+ - name: ubuntu-14.04
65
+ driver_config:
66
+ image_urn: Canonical:UbuntuServer:14.04.3-LTS:latest
67
+ - name: ubuntu-15.04
68
+ driver_config:
69
+ image_urn: Canonical:UbuntuServer:15.04:latest
70
+
71
+ suites:
72
+ - name: default
73
+ run_list:
74
+ - recipe[kitchentesting::default]
75
+ attributes:
76
+ ```
77
+
78
+ ### Parallel execution
79
+ Parallel execution of create/converge/destroy is supported via the --parallel parameter.
80
+
81
+ ### .kitchen.yml example 2 - Windows
82
+
83
+ ```kitchen test --parallel```
84
+
85
+ Here's a further example ```.kitchen.yml``` file that will provision a Windows Server 2012 R2 instance, using WinRM as the transport:
86
+
87
+ ```yml
88
+ ---
89
+ driver:
90
+ name: AzureRM
91
+
92
+ driver_config:
93
+ subscription_id: '4801fa9d-YOUR-GUID-HERE-b265ff49ce21'
94
+ location: 'West Europe'
95
+ machine_size: 'Standard_D1'
96
+
97
+ provisioner:
98
+ name: chef_zero
99
+
100
+ platforms:
101
+ - name: windows2012-r2
102
+ driver_config:
103
+ image_urn: MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:latest
104
+ transport:
105
+ name: winrm
106
+
107
+ suites:
108
+ - name: default
109
+ run_list:
110
+ - recipe[kitchentesting::default]
111
+ attributes:
112
+ ```
113
+
114
+ ### How to retrieve the image_urn
115
+ You can use the azure (azure-cli) command line tools to interrogate for the Urn. All 4 parts of the Urn must be specified, though the last part can be changed to "latest" to indicate you always wish to provision the latest operating system and patches.
116
+
117
+ ```$ azure vm image list "West Europe" Canonical UbuntuServer```
118
+
119
+ This will return a list like the following:
120
+
121
+ ```
122
+ data: Publisher Offer Sku OS Version Location Urn
123
+ data: --------- ------------ ----------------- --------- --------------- ---------- --------------------------------------------------------
124
+ data: Canonical UbuntuServer 12.04.2-LTS undefined 12.04.201302250 westeurope Canonical:UbuntuServer:12.04.2-LTS:12.04.201302250
125
+ data: Canonical UbuntuServer 12.04.2-LTS undefined 12.04.201303250 westeurope Canonical:UbuntuServer:12.04.2-LTS:12.04.201303250
126
+ data: Canonical UbuntuServer 12.04.2-LTS undefined 12.04.201304150 westeurope Canonical:UbuntuServer:12.04.2-LTS:12.04.201304150
127
+ data: Canonical UbuntuServer 12.04.2-LTS undefined 12.04.201305160 westeurope Canonical:UbuntuServer:12.04.2-LTS:12.04.201305160
128
+ data: Canonical UbuntuServer 12.04.2-LTS undefined 12.04.201305270 westeurope Canonical:UbuntuServer:12.04.2-LTS:12.04.201305270
129
+ data: Canonical UbuntuServer 12.04.2-LTS undefined 12.04.201306030 westeurope Canonical:UbuntuServer:12.04.2-LTS:12.04.201306030
130
+ data: Canonical UbuntuServer 12.04.2-LTS undefined 12.04.201306240 westeurope Canonical:UbuntuServer:12.04.2-LTS:12.04.201306240
131
+ data: Canonical UbuntuServer 12.04.3-LTS undefined 12.04.201308270 westeurope Canonical:UbuntuServer:12.04.3-LTS:12.04.201308270
132
+ data: Canonical UbuntuServer 12.04.3-LTS undefined 12.04.201309090 westeurope Canonical:UbuntuServer:12.04.3-LTS:12.04.201309090
133
+ data: Canonical UbuntuServer 12.04.3-LTS undefined 12.04.201309161 westeurope Canonical:UbuntuServer:12.04.3-LTS:12.04.201309161
134
+ data: Canonical UbuntuServer 12.04.3-LTS undefined 12.04.201310030 westeurope Canonical:UbuntuServer:12.04.3-LTS:12.04.201310030
135
+ data: Canonical UbuntuServer 12.04.3-LTS undefined 12.04.201310240 westeurope Canonical:UbuntuServer:12.04.3-LTS:12.04.201310240
136
+ data: Canonical UbuntuServer 12.04.3-LTS undefined 12.04.201311110 westeurope Canonical:UbuntuServer:12.04.3-LTS:12.04.201311110
137
+ data: Canonical UbuntuServer 12.04.3-LTS undefined 12.04.201311140 westeurope Canonical:UbuntuServer:12.04.3-LTS:12.04.201311140
138
+ data: Canonical UbuntuServer 12.04.3-LTS undefined 12.04.201312050 westeurope Canonical:UbuntuServer:12.04.3-LTS:12.04.201312050
139
+ data: Canonical UbuntuServer 12.04.3-LTS undefined 12.04.201401270 westeurope Canonical:UbuntuServer:12.04.3-LTS:12.04.201401270
140
+ data: Canonical UbuntuServer 12.04.3-LTS undefined 12.04.201401300 westeurope Canonical:UbuntuServer:12.04.3-LTS:12.04.201401300
141
+ data: Canonical UbuntuServer 12.04.4-LTS undefined 12.04.201402270 westeurope Canonical:UbuntuServer:12.04.4-LTS:12.04.201402270
142
+ data: Canonical UbuntuServer 12.04.4-LTS undefined 12.04.201404080 westeurope Canonical:UbuntuServer:12.04.4-LTS:12.04.201404080
143
+ data: Canonical UbuntuServer 12.04.4-LTS undefined 12.04.201404280 westeurope Canonical:UbuntuServer:12.04.4-LTS:12.04.201404280
144
+ data: Canonical UbuntuServer 12.04.4-LTS undefined 12.04.201405140 westeurope Canonical:UbuntuServer:12.04.4-LTS:12.04.201405140
145
+ data: Canonical UbuntuServer 12.04.4-LTS undefined 12.04.201406060 westeurope Canonical:UbuntuServer:12.04.4-LTS:12.04.201406060
146
+ data: Canonical UbuntuServer 12.04.4-LTS undefined 12.04.201406190 westeurope Canonical:UbuntuServer:12.04.4-LTS:12.04.201406190
147
+ data: Canonical UbuntuServer 12.04.4-LTS undefined 12.04.201407020 westeurope Canonical:UbuntuServer:12.04.4-LTS:12.04.201407020
148
+ data: Canonical UbuntuServer 12.04.4-LTS undefined 12.04.201407170 westeurope Canonical:UbuntuServer:12.04.4-LTS:12.04.201407170
149
+ data: Canonical UbuntuServer 12.04.5-DAILY-LTS undefined 12.04.201508180 westeurope Canonical:UbuntuServer:12.04.5-DAILY-LTS:12.04.201508180
150
+ data: Canonical UbuntuServer 12.04.5-DAILY-LTS undefined 12.04.201508190 westeurope Canonical:UbuntuServer:12.04.5-DAILY-LTS:12.04.201508190
151
+ data: Canonical UbuntuServer 12.04.5-DAILY-LTS undefined 12.04.201508313 westeurope Canonical:UbuntuServer:12.04.5-DAILY-LTS:12.04.201508313
152
+ data: Canonical UbuntuServer 12.04.5-DAILY-LTS undefined 12.04.201509020 westeurope Canonical:UbuntuServer:12.04.5-DAILY-LTS:12.04.201509020
153
+ data: Canonical UbuntuServer 12.04.5-DAILY-LTS undefined 12.04.201509040 westeurope Canonical:UbuntuServer:12.04.5-DAILY-LTS:12.04.201509040
154
+ data: Canonical UbuntuServer 12.04.5-DAILY-LTS undefined 12.04.201509050 westeurope Canonical:UbuntuServer:12.04.5-DAILY-LTS:12.04.201509050
155
+ data: Canonical UbuntuServer 12.04.5-DAILY-LTS undefined 12.04.201509060 westeurope Canonical:UbuntuServer:12.04.5-DAILY-LTS:12.04.201509060
156
+ data: Canonical UbuntuServer 12.04.5-DAILY-LTS undefined 12.04.201509090 westeurope Canonical:UbuntuServer:12.04.5-DAILY-LTS:12.04.201509090
157
+ data: Canonical UbuntuServer 12.04.5-DAILY-LTS undefined 12.04.201509100 westeurope Canonical:UbuntuServer:12.04.5-DAILY-LTS:12.04.201509100
158
+ data: Canonical UbuntuServer 12.04.5-DAILY-LTS undefined 12.04.201509170 westeurope Canonical:UbuntuServer:12.04.5-DAILY-LTS:12.04.201509170
159
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201408060 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201408060
160
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201408292 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201408292
161
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201409092 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201409092
162
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201409231 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201409231
163
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201409244 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201409244
164
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201409251 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201409251
165
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201409252 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201409252
166
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201409270 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201409270
167
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201501190 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201501190
168
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201501270 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201501270
169
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201502040 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201502040
170
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201503090 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201503090
171
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201504010 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201504010
172
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201504130 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201504130
173
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201505120 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201505120
174
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201505221 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201505221
175
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201506100 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201506100
176
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201506150 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201506150
177
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201506160 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201506160
178
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201507070 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201507070
179
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201507280 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201507280
180
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201507301 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201507301
181
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201507311 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201507311
182
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201508190 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201508190
183
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201509060 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201509060
184
+ data: Canonical UbuntuServer 12.04.5-LTS undefined 12.04.201509090 westeurope Canonical:UbuntuServer:12.04.5-LTS:12.04.201509090
185
+ data: Canonical UbuntuServer 12.10 undefined 12.10.201212180 westeurope Canonical:UbuntuServer:12.10:12.10.201212180
186
+ data: Canonical UbuntuServer 14.04.0-LTS undefined 14.04.201404140 westeurope Canonical:UbuntuServer:14.04.0-LTS:14.04.201404140
187
+ data: Canonical UbuntuServer 14.04.0-LTS undefined 14.04.201404142 westeurope Canonical:UbuntuServer:14.04.0-LTS:14.04.201404142
188
+ data: Canonical UbuntuServer 14.04.0-LTS undefined 14.04.201404161 westeurope Canonical:UbuntuServer:14.04.0-LTS:14.04.201404161
189
+ data: Canonical UbuntuServer 14.04.0-LTS undefined 14.04.201405280 westeurope Canonical:UbuntuServer:14.04.0-LTS:14.04.201405280
190
+ data: Canonical UbuntuServer 14.04.0-LTS undefined 14.04.201406061 westeurope Canonical:UbuntuServer:14.04.0-LTS:14.04.201406061
191
+ data: Canonical UbuntuServer 14.04.0-LTS undefined 14.04.201406181 westeurope Canonical:UbuntuServer:14.04.0-LTS:14.04.201406181
192
+ data: Canonical UbuntuServer 14.04.0-LTS undefined 14.04.201407240 westeurope Canonical:UbuntuServer:14.04.0-LTS:14.04.201407240
193
+ data: Canonical UbuntuServer 14.04.1-LTS undefined 14.04.201409090 westeurope Canonical:UbuntuServer:14.04.1-LTS:14.04.201409090
194
+ data: Canonical UbuntuServer 14.04.1-LTS undefined 14.04.201409240 westeurope Canonical:UbuntuServer:14.04.1-LTS:14.04.201409240
195
+ data: Canonical UbuntuServer 14.04.1-LTS undefined 14.04.201409260 westeurope Canonical:UbuntuServer:14.04.1-LTS:14.04.201409260
196
+ data: Canonical UbuntuServer 14.04.1-LTS undefined 14.04.201409270 westeurope Canonical:UbuntuServer:14.04.1-LTS:14.04.201409270
197
+ data: Canonical UbuntuServer 14.04.1-LTS undefined 14.04.201411250 westeurope Canonical:UbuntuServer:14.04.1-LTS:14.04.201411250
198
+ data: Canonical UbuntuServer 14.04.1-LTS undefined 14.04.201501230 westeurope Canonical:UbuntuServer:14.04.1-LTS:14.04.201501230
199
+ data: Canonical UbuntuServer 14.04.2-LTS undefined 14.04.201503090 westeurope Canonical:UbuntuServer:14.04.2-LTS:14.04.201503090
200
+ data: Canonical UbuntuServer 14.04.2-LTS undefined 14.04.201505060 westeurope Canonical:UbuntuServer:14.04.2-LTS:14.04.201505060
201
+ data: Canonical UbuntuServer 14.04.2-LTS undefined 14.04.201506100 westeurope Canonical:UbuntuServer:14.04.2-LTS:14.04.201506100
202
+ data: Canonical UbuntuServer 14.04.2-LTS undefined 14.04.201507060 westeurope Canonical:UbuntuServer:14.04.2-LTS:14.04.201507060
203
+ data: Canonical UbuntuServer 14.04.3-DAILY-LTS undefined 14.04.201509020 westeurope Canonical:UbuntuServer:14.04.3-DAILY-LTS:14.04.201509020
204
+ data: Canonical UbuntuServer 14.04.3-DAILY-LTS undefined 14.04.201509030 westeurope Canonical:UbuntuServer:14.04.3-DAILY-LTS:14.04.201509030
205
+ data: Canonical UbuntuServer 14.04.3-DAILY-LTS undefined 14.04.201509040 westeurope Canonical:UbuntuServer:14.04.3-DAILY-LTS:14.04.201509040
206
+ data: Canonical UbuntuServer 14.04.3-DAILY-LTS undefined 14.04.201509050 westeurope Canonical:UbuntuServer:14.04.3-DAILY-LTS:14.04.201509050
207
+ data: Canonical UbuntuServer 14.04.3-DAILY-LTS undefined 14.04.201509070 westeurope Canonical:UbuntuServer:14.04.3-DAILY-LTS:14.04.201509070
208
+ data: Canonical UbuntuServer 14.04.3-DAILY-LTS undefined 14.04.201509080 westeurope Canonical:UbuntuServer:14.04.3-DAILY-LTS:14.04.201509080
209
+ data: Canonical UbuntuServer 14.04.3-DAILY-LTS undefined 14.04.201509091 westeurope Canonical:UbuntuServer:14.04.3-DAILY-LTS:14.04.201509091
210
+ data: Canonical UbuntuServer 14.04.3-DAILY-LTS undefined 14.04.201509110 westeurope Canonical:UbuntuServer:14.04.3-DAILY-LTS:14.04.201509110
211
+ data: Canonical UbuntuServer 14.04.3-DAILY-LTS undefined 14.04.201509160 westeurope Canonical:UbuntuServer:14.04.3-DAILY-LTS:14.04.201509160
212
+ data: Canonical UbuntuServer 14.04.3-DAILY-LTS undefined 14.04.201509220 westeurope Canonical:UbuntuServer:14.04.3-DAILY-LTS:14.04.201509220
213
+ data: Canonical UbuntuServer 14.04.3-LTS undefined 14.04.201508050 westeurope Canonical:UbuntuServer:14.04.3-LTS:14.04.201508050
214
+ data: Canonical UbuntuServer 14.04.3-LTS undefined 14.04.201509080 westeurope Canonical:UbuntuServer:14.04.3-LTS:14.04.201509080
215
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201504171 westeurope Canonical:UbuntuServer:15.04:15.04.201504171
216
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201504201 westeurope Canonical:UbuntuServer:15.04:15.04.201504201
217
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201504210 westeurope Canonical:UbuntuServer:15.04:15.04.201504210
218
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201504211 westeurope Canonical:UbuntuServer:15.04:15.04.201504211
219
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201504220 westeurope Canonical:UbuntuServer:15.04:15.04.201504220
220
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201505130 westeurope Canonical:UbuntuServer:15.04:15.04.201505130
221
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201505131 westeurope Canonical:UbuntuServer:15.04:15.04.201505131
222
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201505281 westeurope Canonical:UbuntuServer:15.04:15.04.201505281
223
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201506110 westeurope Canonical:UbuntuServer:15.04:15.04.201506110
224
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201506161 westeurope Canonical:UbuntuServer:15.04:15.04.201506161
225
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201507070 westeurope Canonical:UbuntuServer:15.04:15.04.201507070
226
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201507220 westeurope Canonical:UbuntuServer:15.04:15.04.201507220
227
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201507280 westeurope Canonical:UbuntuServer:15.04:15.04.201507280
228
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201507290 westeurope Canonical:UbuntuServer:15.04:15.04.201507290
229
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201508180 westeurope Canonical:UbuntuServer:15.04:15.04.201508180
230
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201509090 westeurope Canonical:UbuntuServer:15.04:15.04.201509090
231
+ data: Canonical UbuntuServer 15.04 undefined 15.04.201509100 westeurope Canonical:UbuntuServer:15.04:15.04.201509100
232
+ data: Canonical UbuntuServer 15.04-beta undefined 15.04.201502245 westeurope Canonical:UbuntuServer:15.04-beta:15.04.201502245
233
+ data: Canonical UbuntuServer 15.04-beta undefined 15.04.201503250 westeurope Canonical:UbuntuServer:15.04-beta:15.04.201503250
234
+ data: Canonical UbuntuServer 15.04-DAILY undefined 15.04.201508210 westeurope Canonical:UbuntuServer:15.04-DAILY:15.04.201508210
235
+ data: Canonical UbuntuServer 15.04-DAILY undefined 15.04.201508283 westeurope Canonical:UbuntuServer:15.04-DAILY:15.04.201508283
236
+ data: Canonical UbuntuServer 15.04-DAILY undefined 15.04.201509010 westeurope Canonical:UbuntuServer:15.04-DAILY:15.04.201509010
237
+ data: Canonical UbuntuServer 15.04-DAILY undefined 15.04.201509020 westeurope Canonical:UbuntuServer:15.04-DAILY:15.04.201509020
238
+ data: Canonical UbuntuServer 15.04-DAILY undefined 15.04.201509030 westeurope Canonical:UbuntuServer:15.04-DAILY:15.04.201509030
239
+ data: Canonical UbuntuServer 15.04-DAILY undefined 15.04.201509090 westeurope Canonical:UbuntuServer:15.04-DAILY:15.04.201509090
240
+ data: Canonical UbuntuServer 15.04-DAILY undefined 15.04.201509100 westeurope Canonical:UbuntuServer:15.04-DAILY:15.04.201509100
241
+ data: Canonical UbuntuServer 15.04-DAILY undefined 15.04.201509110 westeurope Canonical:UbuntuServer:15.04-DAILY:15.04.201509110
242
+ data: Canonical UbuntuServer 15.04-DAILY undefined 15.04.201509111 westeurope Canonical:UbuntuServer:15.04-DAILY:15.04.201509111
243
+ data: Canonical UbuntuServer 15.04-DAILY undefined 15.04.201509170 westeurope Canonical:UbuntuServer:15.04-DAILY:15.04.201509170
244
+ data: Canonical UbuntuServer 15.10-alpha undefined 15.10.201506240 westeurope Canonical:UbuntuServer:15.10-alpha:15.10.201506240
245
+ data: Canonical UbuntuServer 15.10-alpha undefined 15.10.201507281 westeurope Canonical:UbuntuServer:15.10-alpha:15.10.201507281
246
+ data: Canonical UbuntuServer 15.10-beta undefined 15.10.201508250 westeurope Canonical:UbuntuServer:15.10-beta:15.10.201508250
247
+ data: Canonical UbuntuServer 15.10-DAILY undefined 15.10.201509120 westeurope Canonical:UbuntuServer:15.10-DAILY:15.10.201509120
248
+ data: Canonical UbuntuServer 15.10-DAILY undefined 15.10.201509130 westeurope Canonical:UbuntuServer:15.10-DAILY:15.10.201509130
249
+ data: Canonical UbuntuServer 15.10-DAILY undefined 15.10.201509140 westeurope Canonical:UbuntuServer:15.10-DAILY:15.10.201509140
250
+ data: Canonical UbuntuServer 15.10-DAILY undefined 15.10.201509150 westeurope Canonical:UbuntuServer:15.10-DAILY:15.10.201509150
251
+ data: Canonical UbuntuServer 15.10-DAILY undefined 15.10.201509160 westeurope Canonical:UbuntuServer:15.10-DAILY:15.10.201509160
252
+ data: Canonical UbuntuServer 15.10-DAILY undefined 15.10.201509170 westeurope Canonical:UbuntuServer:15.10-DAILY:15.10.201509170
253
+ data: Canonical UbuntuServer 15.10-DAILY undefined 15.10.201509180 westeurope Canonical:UbuntuServer:15.10-DAILY:15.10.201509180
254
+ data: Canonical UbuntuServer 15.10-DAILY undefined 15.10.201509190 westeurope Canonical:UbuntuServer:15.10-DAILY:15.10.201509190
255
+ data: Canonical UbuntuServer 15.10-DAILY undefined 15.10.201509210 westeurope Canonical:UbuntuServer:15.10-DAILY:15.10.201509210
256
+ data: Canonical UbuntuServer 15.10-DAILY undefined 15.10.201509220 westeurope Canonical:UbuntuServer:15.10-DAILY:15.10.201509220
257
+ info: vm image list command OK
258
+ ```
259
+
260
+ ### Additional information/notes
261
+ - driver_config also takes a username and password parameter, the defaults if these are not specified are "azure" and "P2ssw0rd" respectively.
262
+
263
+ ## Contributing
264
+
265
+ Contributions to the project are welcome via submitting Pull Requests.
266
+
267
+ 1. Fork it ( https://github.com/pendrica/kitchen-azurerm/fork )
268
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
269
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
270
+ 4. Push to the branch (`git push origin my-new-feature`)
271
+ 5. Create a new Pull Request
@@ -11,23 +11,48 @@ module Kitchen
11
11
  #
12
12
  class AzureRM < Kitchen::Driver::Base
13
13
  attr_accessor :resource_management_client
14
-
14
+
15
15
  default_config(:azure_resource_group_name) do |config|
16
16
  "kitchen-#{config.instance.name}"
17
17
  end
18
-
18
+
19
+ default_config(:image_urn) do |_config|
20
+ 'Canonical:UbuntuServer:14.04.3-LTS:latest'
21
+ end
22
+
23
+ default_config(:username) do |_config|
24
+ 'azure'
25
+ end
26
+
27
+ default_config(:password) do |_config|
28
+ 'P2ssw0rd'
29
+ end
30
+
19
31
  def create(state)
20
32
  puts 'in kitchen create'
21
33
  state[:uuid] = "#{SecureRandom.hex(8)}"
22
34
  state[:azure_resource_group_name] = "#{config[:azure_resource_group_name]}-#{state[:uuid]}"
23
35
  state[:subscription_id] = config[:subscription_id]
24
- state[:username] = 'azure'
25
- state[:password] = 'P2ssw0rd'
26
-
36
+ state[:username] = config[:username]
37
+ state[:password] = config[:password]
38
+ image_publisher, image_offer, image_sku, image_version = config[:image_urn].split(':', 4)
39
+ deployment_parameters = {
40
+ location: config[:location],
41
+ vmSize: config[:machine_size],
42
+ newStorageAccountName: "storage#{state[:uuid]}",
43
+ adminUsername: state[:username],
44
+ adminPassword: state[:password],
45
+ dnsNameForPublicIP: "kitchen-#{state[:uuid]}",
46
+ imagePublisher: image_publisher,
47
+ imageOffer: image_offer,
48
+ imageSku: image_sku,
49
+ imageVersion: image_version
50
+ }
51
+
27
52
  credentials = Kitchen::Driver::Credentials.new.azure_credentials_for_subscription(config[:subscription_id])
28
53
  @resource_management_client = ::Azure::ARM::Resources::ResourceManagementClient.new(credentials)
29
54
  @resource_management_client.subscription_id = config[:subscription_id]
30
-
55
+
31
56
  # Create Resource Group
32
57
  resource_group = ::Azure::ARM::Resources::Models::ResourceGroup.new
33
58
  resource_group.location = config[:location]
@@ -39,32 +64,23 @@ module Kitchen
39
64
  raise operation_error
40
65
  end
41
66
 
42
- # Create Deployment Template
43
- parameters = {
44
- location: config[:location],
45
- vmSize: config[:machine_size],
46
- newStorageAccountName: "storage#{state[:uuid]}",
47
- adminUsername: state[:username],
48
- adminPassword: state[:password],
49
- dnsNameForPublicIP: "publicip#{state[:uuid]}",
50
- ubuntuOSVersion: '14.04.2-LTS'
51
- }
52
-
67
+ # Execute deployment steps
53
68
  begin
54
- deployment_name = "deploy#{state[:uuid]}"
69
+ deployment_name = "deploy-#{state[:uuid]}"
55
70
  puts "Creating Deployment: #{deployment_name}"
56
- resource_management_client.deployments.create_or_update(state[:azure_resource_group_name], deployment_name, deployment(linux_virtual_machine_deployment_template, parameters)).value!
71
+ resource_management_client.deployments.create_or_update(state[:azure_resource_group_name], deployment_name, deployment(virtual_machine_deployment_template, deployment_parameters)).value!
57
72
  rescue ::MsRestAzure::AzureOperationError => operation_error
58
73
  puts operation_error.body['error']
59
74
  raise operation_error
60
75
  end
61
76
 
77
+ # Monitor all operations until completion
62
78
  follow_deployment_until_end_state(state[:azure_resource_group_name], deployment_name)
63
-
79
+
64
80
  # Now retrieve the public IP from the resource group:
65
81
  network_management_client = ::Azure::ARM::Network::NetworkResourceProviderClient.new(credentials)
66
82
  network_management_client.subscription_id = config[:subscription_id]
67
- result = network_management_client.public_ip_addresses.get(state[:azure_resource_group_name], 'myPublicIP').value!
83
+ result = network_management_client.public_ip_addresses.get(state[:azure_resource_group_name], 'publicip').value!
68
84
  puts "IP Address is: #{result.body.properties.ip_address} [#{result.body.properties.dns_settings.fqdn}]"
69
85
  state[:server_id] = "vm#{state[:uuid]}"
70
86
  state[:hostname] = result.body.properties.ip_address
@@ -124,8 +140,8 @@ module Kitchen
124
140
  resource_management_client.subscription_id = state[:subscription_id]
125
141
  begin
126
142
  puts "Destroying Resource Group: #{state[:azure_resource_group_name]}"
127
- resource_management_client.resource_groups.delete(state[:azure_resource_group_name]).value
128
- puts 'Destroy operation will continue in the background.'
143
+ resource_management_client.resource_groups.begin_delete(state[:azure_resource_group_name]).value!
144
+ puts 'Destroy operation accepted and will continue in the background.'
129
145
  rescue ::MsRestAzure::AzureOperationError => operation_error
130
146
  puts operation_error.body['error']
131
147
  raise operation_error
@@ -136,8 +152,7 @@ module Kitchen
136
152
  state.delete(:password)
137
153
  end
138
154
 
139
- def windows_virtual_machine_deployment_template
140
- # as per: https://github.com/Azure/azure-quickstart-templates/blob/master/101-simple-windows-vm/azuredeploy.json
155
+ def virtual_machine_deployment_template
141
156
  <<-EOH
142
157
  {
143
158
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
@@ -164,7 +179,7 @@ module Kitchen
164
179
  "adminUsername": {
165
180
  "type": "string",
166
181
  "metadata": {
167
- "description": "Username for the Virtual Machine."
182
+ "description": "User name for the Virtual Machine."
168
183
  }
169
184
  },
170
185
  "adminPassword": {
@@ -179,233 +194,49 @@ module Kitchen
179
194
  "description": "Unique DNS Name for the Public IP used to access the Virtual Machine."
180
195
  }
181
196
  },
182
- "windowsOSVersion": {
197
+ "imagePublisher": {
183
198
  "type": "string",
184
- "defaultValue": "2012-R2-Datacenter",
185
- "allowedValues": [
186
- "2008-R2-SP1",
187
- "2012-Datacenter",
188
- "2012-R2-Datacenter"
189
- ],
199
+ "defaultValue": "Canonical",
190
200
  "metadata": {
191
- "description": "The Windows version for the VM. This will pick a fully patched image of this given Windows version. Allowed values: 2008-R2-SP1, 2012-Datacenter, 2012-R2-Datacenter."
192
- }
193
- }
194
- },
195
- "variables": {
196
- "location": "[parameters('location')]",
197
- "imagePublisher": "MicrosoftWindowsServer",
198
- "imageOffer": "WindowsServer",
199
- "OSDiskName": "osdiskforwindowssimple",
200
- "nicName": "myVMNic",
201
- "addressPrefix": "10.0.0.0/16",
202
- "subnetName": "Subnet",
203
- "subnetPrefix": "10.0.0.0/24",
204
- "storageAccountType": "Standard_LRS",
205
- "publicIPAddressName": "myPublicIP",
206
- "publicIPAddressType": "Dynamic",
207
- "vmStorageAccountContainerName": "vhds",
208
- "vmName": "windows-vm",
209
- "vmSize": "[parameters('vmSize')]",
210
- "virtualNetworkName": "MyVNET",
211
- "vnetID": "[resourceId('Microsoft.Network/virtualNetworks',variables('virtualNetworkName'))]",
212
- "subnetRef": "[concat(variables('vnetID'),'/subnets/',variables('subnetName'))]"
213
- },
214
- "resources": [
215
- {
216
- "type": "Microsoft.Storage/storageAccounts",
217
- "name": "[parameters('newStorageAccountName')]",
218
- "apiVersion": "2015-05-01-preview",
219
- "location": "[variables('location')]",
220
- "properties": {
221
- "accountType": "[variables('storageAccountType')]"
222
- }
223
- },
224
- {
225
- "apiVersion": "2015-05-01-preview",
226
- "type": "Microsoft.Network/publicIPAddresses",
227
- "name": "[variables('publicIPAddressName')]",
228
- "location": "[variables('location')]",
229
- "properties": {
230
- "publicIPAllocationMethod": "[variables('publicIPAddressType')]",
231
- "dnsSettings": {
232
- "domainNameLabel": "[parameters('dnsNameForPublicIP')]"
233
- }
234
- }
235
- },
236
- {
237
- "apiVersion": "2015-05-01-preview",
238
- "type": "Microsoft.Network/virtualNetworks",
239
- "name": "[variables('virtualNetworkName')]",
240
- "location": "[variables('location')]",
241
- "properties": {
242
- "addressSpace": {
243
- "addressPrefixes": [
244
- "[variables('addressPrefix')]"
245
- ]
246
- },
247
- "subnets": [
248
- {
249
- "name": "[variables('subnetName')]",
250
- "properties": {
251
- "addressPrefix": "[variables('subnetPrefix')]"
252
- }
253
- }
254
- ]
201
+ "description": "Publisher for the VM, e.g. Canonical, MicrosoftWindowsServer"
255
202
  }
256
203
  },
257
- {
258
- "apiVersion": "2015-05-01-preview",
259
- "type": "Microsoft.Network/networkInterfaces",
260
- "name": "[variables('nicName')]",
261
- "location": "[variables('location')]",
262
- "dependsOn": [
263
- "[concat('Microsoft.Network/publicIPAddresses/', variables('publicIPAddressName'))]",
264
- "[concat('Microsoft.Network/virtualNetworks/', variables('virtualNetworkName'))]"
265
- ],
266
- "properties": {
267
- "ipConfigurations": [
268
- {
269
- "name": "ipconfig1",
270
- "properties": {
271
- "privateIPAllocationMethod": "Dynamic",
272
- "publicIPAddress": {
273
- "id": "[resourceId('Microsoft.Network/publicIPAddresses',variables('publicIPAddressName'))]"
274
- },
275
- "subnet": {
276
- "id": "[variables('subnetRef')]"
277
- }
278
- }
279
- }
280
- ]
281
- }
282
- },
283
- {
284
- "apiVersion": "2015-06-15",
285
- "type": "Microsoft.Compute/virtualMachines",
286
- "name": "[variables('vmName')]",
287
- "location": "[variables('location')]",
288
- "dependsOn": [
289
- "[concat('Microsoft.Storage/storageAccounts/', parameters('newStorageAccountName'))]",
290
- "[concat('Microsoft.Network/networkInterfaces/', variables('nicName'))]"
291
- ],
292
- "properties": {
293
- "hardwareProfile": {
294
- "vmSize": "[variables('vmSize')]"
295
- },
296
- "osProfile": {
297
- "computername": "[variables('vmName')]",
298
- "adminUsername": "[parameters('adminUsername')]",
299
- "adminPassword": "[parameters('adminPassword')]"
300
- },
301
- "storageProfile": {
302
- "imageReference": {
303
- "publisher": "[variables('imagePublisher')]",
304
- "offer": "[variables('imageOffer')]",
305
- "sku": "[parameters('windowsOSVersion')]",
306
- "version": "latest"
307
- },
308
- "osDisk": {
309
- "name": "osdisk",
310
- "vhd": {
311
- "uri": "[concat('http://',parameters('newStorageAccountName'),'.blob.core.windows.net/',variables('vmStorageAccountContainerName'),'/',variables('OSDiskName'),'.vhd')]"
312
- },
313
- "caching": "ReadWrite",
314
- "createOption": "FromImage"
315
- }
316
- },
317
- "networkProfile": {
318
- "networkInterfaces": [
319
- {
320
- "id": "[resourceId('Microsoft.Network/networkInterfaces',variables('nicName'))]"
321
- }
322
- ]
323
- },
324
- "diagnosticsProfile": {
325
- "bootDiagnostics": {
326
- "enabled": "true",
327
- "storageUri": "[concat('http://',parameters('newStorageAccountName'),'.blob.core.windows.net')]"
328
- }
329
- }
330
- }
331
- }
332
- ]
333
- }
334
- EOH
335
- end
336
-
337
- def linux_virtual_machine_deployment_template
338
- # as per: https://github.com/Azure/azure-quickstart-templates/blob/master/101-simple-linux-vm/azuredeploy.json
339
- <<-EOH
340
- {
341
- "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
342
- "contentVersion": "1.0.0.0",
343
- "parameters": {
344
- "location": {
204
+ "imageOffer": {
345
205
  "type": "string",
206
+ "defaultValue": "UbuntuServer",
346
207
  "metadata": {
347
- "description": "The location where the resources will be created."
208
+ "description": "Offer for the VM, e.g. UbuntuServer, WindowsServer."
348
209
  }
349
210
  },
350
- "vmSize": {
211
+ "imageSku": {
351
212
  "type": "string",
213
+ "defaultValue": "14.04.3-LTS",
352
214
  "metadata": {
353
- "description": "The size of the VM to be created"
215
+ "description": "Sku for the VM, e.g. 14.04.3-LTS"
354
216
  }
355
217
  },
356
- "newStorageAccountName": {
218
+ "imageVersion": {
357
219
  "type": "string",
220
+ "defaultValue": "latest",
358
221
  "metadata": {
359
- "description": "Unique DNS Name for the Storage Account where the Virtual Machine's disks will be placed."
360
- }
361
- },
362
- "adminUsername": {
363
- "type": "string",
364
- "metadata": {
365
- "description": "User name for the Virtual Machine."
366
- }
367
- },
368
- "adminPassword": {
369
- "type": "securestring",
370
- "metadata": {
371
- "description": "Password for the Virtual Machine."
372
- }
373
- },
374
- "dnsNameForPublicIP": {
375
- "type": "string",
376
- "metadata": {
377
- "description": "Unique DNS Name for the Public IP used to access the Virtual Machine."
378
- }
379
- },
380
- "ubuntuOSVersion": {
381
- "type": "string",
382
- "defaultValue": "14.04.2-LTS",
383
- "allowedValues": [
384
- "12.04.5-LTS",
385
- "14.04.2-LTS",
386
- "15.04"
387
- ],
388
- "metadata": {
389
- "description": "The Ubuntu version for the VM. This will pick a fully patched image of this given Ubuntu version. Allowed values: 12.04.5-LTS, 14.04.2-LTS, 15.04."
222
+ "description": "Either a date or latest."
390
223
  }
391
224
  }
392
225
  },
393
226
  "variables": {
394
227
  "location": "[parameters('location')]",
395
- "imagePublisher": "Canonical",
396
- "imageOffer": "UbuntuServer",
397
- "OSDiskName": "osdiskforlinuxsimple",
398
- "nicName": "myVMNic",
228
+ "OSDiskName": "osdisk",
229
+ "nicName": "nic",
399
230
  "addressPrefix": "10.0.0.0/16",
400
231
  "subnetName": "Subnet",
401
232
  "subnetPrefix": "10.0.0.0/24",
402
233
  "storageAccountType": "Standard_LRS",
403
- "publicIPAddressName": "myPublicIP",
234
+ "publicIPAddressName": "publicip",
404
235
  "publicIPAddressType": "Dynamic",
405
236
  "vmStorageAccountContainerName": "vhds",
406
- "vmName": "linux-vm",
237
+ "vmName": "vm",
407
238
  "vmSize": "[parameters('vmSize')]",
408
- "virtualNetworkName": "MyVNET",
239
+ "virtualNetworkName": "vnet",
409
240
  "vnetID": "[resourceId('Microsoft.Network/virtualNetworks',variables('virtualNetworkName'))]",
410
241
  "subnetRef": "[concat(variables('vnetID'),'/subnets/',variables('subnetName'))]"
411
242
  },
@@ -498,10 +329,10 @@ module Kitchen
498
329
  },
499
330
  "storageProfile": {
500
331
  "imageReference": {
501
- "publisher": "[variables('imagePublisher')]",
502
- "offer": "[variables('imageOffer')]",
503
- "sku": "[parameters('ubuntuOSVersion')]",
504
- "version": "latest"
332
+ "publisher": "[parameters('imagePublisher')]",
333
+ "offer": "[parameters('imageOffer')]",
334
+ "sku": "[parameters('imageSku')]",
335
+ "version": "[parameters('imageVersion')]"
505
336
  },
506
337
  "osDisk": {
507
338
  "name": "osdisk",
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kitchen-azurerm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.pre
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stuart Preston
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-21 00:00:00.000000000 Z
11
+ date: 2015-09-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: inifile
@@ -38,34 +38,6 @@ dependencies:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
40
  version: 0.1.0
41
- - !ruby/object:Gem::Dependency
42
- name: azure_mgmt_storage
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - '='
46
- - !ruby/object:Gem::Version
47
- version: 0.1.0
48
- type: :runtime
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - '='
53
- - !ruby/object:Gem::Version
54
- version: 0.1.0
55
- - !ruby/object:Gem::Dependency
56
- name: azure_mgmt_compute
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - '='
60
- - !ruby/object:Gem::Version
61
- version: 0.1.0
62
- type: :runtime
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - '='
67
- - !ruby/object:Gem::Version
68
- version: 0.1.0
69
41
  - !ruby/object:Gem::Dependency
70
42
  name: azure_mgmt_network
71
43
  requirement: !ruby/object:Gem::Requirement
@@ -115,6 +87,7 @@ executables: []
115
87
  extensions: []
116
88
  extra_rdoc_files: []
117
89
  files:
90
+ - CHANGELOG.md
118
91
  - LICENSE
119
92
  - README.md
120
93
  - lib/kitchen/driver/azurerm.rb
@@ -134,9 +107,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
134
107
  version: '0'
135
108
  required_rubygems_version: !ruby/object:Gem::Requirement
136
109
  requirements:
137
- - - ">"
110
+ - - ">="
138
111
  - !ruby/object:Gem::Version
139
- version: 1.3.1
112
+ version: '0'
140
113
  requirements: []
141
114
  rubyforge_project:
142
115
  rubygems_version: 2.4.4