dorb 0.0.1.pre

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.
Files changed (44) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +16 -0
  5. data/Gemfile +4 -0
  6. data/LICENSE.txt +22 -0
  7. data/README.md +198 -0
  8. data/Rakefile +4 -0
  9. data/dorb.gemspec +30 -0
  10. data/lib/dorb.rb +18 -0
  11. data/lib/dorb/config.rb +36 -0
  12. data/lib/dorb/core_ext/hash.rb +24 -0
  13. data/lib/dorb/droplet.rb +10 -0
  14. data/lib/dorb/image.rb +10 -0
  15. data/lib/dorb/region.rb +10 -0
  16. data/lib/dorb/resource.rb +126 -0
  17. data/lib/dorb/size.rb +16 -0
  18. data/lib/dorb/ssh_key.rb +10 -0
  19. data/lib/dorb/version.rb +3 -0
  20. data/spec/config_spec.rb +34 -0
  21. data/spec/droplet_spec.rb +7 -0
  22. data/spec/fixtures/cassettes/DORB_Droplet/all.yml +57 -0
  23. data/spec/fixtures/cassettes/DORB_Droplet/find.yml +111 -0
  24. data/spec/fixtures/cassettes/DORB_Droplet/find_missing.yml +57 -0
  25. data/spec/fixtures/cassettes/DORB_Image/all.yml +75 -0
  26. data/spec/fixtures/cassettes/DORB_Image/find.yml +129 -0
  27. data/spec/fixtures/cassettes/DORB_Image/find_missing.yml +57 -0
  28. data/spec/fixtures/cassettes/DORB_Region/all.yml +58 -0
  29. data/spec/fixtures/cassettes/DORB_Region/find.yml +112 -0
  30. data/spec/fixtures/cassettes/DORB_Region/find_missing.yml +57 -0
  31. data/spec/fixtures/cassettes/DORB_SSHKey/all.yml +57 -0
  32. data/spec/fixtures/cassettes/DORB_SSHKey/find.yml +113 -0
  33. data/spec/fixtures/cassettes/DORB_SSHKey/find_missing.yml +57 -0
  34. data/spec/fixtures/cassettes/DORB_Size/all.yml +597 -0
  35. data/spec/fixtures/cassettes/DORB_Size/find.yml +651 -0
  36. data/spec/fixtures/cassettes/DORB_Size/find_missing.yml +57 -0
  37. data/spec/image_spec.rb +7 -0
  38. data/spec/region_spec.rb +7 -0
  39. data/spec/size_spec.rb +19 -0
  40. data/spec/spec_helper.rb +17 -0
  41. data/spec/ssh_key_spec.rb +7 -0
  42. data/spec/support/shared_examples_for_resource.rb +40 -0
  43. data/spec/support/vcr.rb +8 -0
  44. metadata +209 -0
@@ -0,0 +1,57 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.digitalocean.com/ssh_keys/0?api_key=<API_KEY>&client_id=<CLIENT_ID>
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*; q=0.5, application/xml'
12
+ Accept-Encoding:
13
+ - gzip, deflate
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx
23
+ Date:
24
+ - Wed, 13 Mar 2013 12:15:50 GMT
25
+ Content-Type:
26
+ - application/json; charset=utf-8
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ Status:
32
+ - '200'
33
+ X-Powered-By:
34
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.11
35
+ Strict-Transport-Security:
36
+ - max-age=31536000
37
+ X-Ua-Compatible:
38
+ - IE=Edge,chrome=1
39
+ Etag:
40
+ - ! '"0875697aacb1d5282a7eaa16a330f29e"'
41
+ Cache-Control:
42
+ - max-age=0, private, must-revalidate
43
+ Set-Cookie:
44
+ - _digitalocean2_session_v2=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJTVlOTk5MmZmZTVhMjU3NmExMmMyYTNlYjYzN2Q4ZDA0BjsAVEkiEXJlZGlyZWN0X3VybAY7AEZJIgF9aHR0cHM6Ly93d3cuZGlnaXRhbG9jZWFuLmNvbS9hcGkvc3NoX2tleXMvMD9jbGllbnRfaWQ9ODRVOXFId2UyTjczZEVvUEZWcUt6JmFwaV9rZXk9cVE4bXBSaUVZZzN1TzZPckxUVGVKRDFEdlBHRVFoVm1NZUh2RHIzZG0GOwBG--a75b9d08463d9bf982288844a683f5655cc3f8aa;
45
+ path=/; secure; HttpOnly
46
+ X-Request-Id:
47
+ - 1f396baa50a1d146558f3b2954a13ed5
48
+ X-Runtime:
49
+ - '0.153002'
50
+ X-Rack-Cache:
51
+ - miss
52
+ body:
53
+ encoding: US-ASCII
54
+ string: ! '{"status":"ERROR","error_message":"No SSH Key Found"}'
55
+ http_version:
56
+ recorded_at: Wed, 13 Mar 2013 12:15:48 GMT
57
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,597 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.digitalocean.com/sizes?api_key=<API_KEY>&client_id=<CLIENT_ID>
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*; q=0.5, application/xml'
12
+ Accept-Encoding:
13
+ - gzip, deflate
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx
23
+ Date:
24
+ - Wed, 13 Mar 2013 12:16:00 GMT
25
+ Content-Type:
26
+ - application/json; charset=utf-8
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ Status:
32
+ - '200'
33
+ X-Powered-By:
34
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.11
35
+ Strict-Transport-Security:
36
+ - max-age=31536000
37
+ X-Ua-Compatible:
38
+ - IE=Edge,chrome=1
39
+ Etag:
40
+ - ! '"e76667b92aac8cb53c089195902c9d37"'
41
+ Cache-Control:
42
+ - max-age=0, private, must-revalidate
43
+ Set-Cookie:
44
+ - _digitalocean2_session_v2=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJTU3YWMwZGE0ZDUyZDZiZGE5MTUzNzBmZWU0YzEyZDQ0BjsAVEkiEXJlZGlyZWN0X3VybAY7AEZJIn1odHRwczovL3d3dy5kaWdpdGFsb2NlYW4uY29tL2FwaS9zaXplcz9jbGllbnRfaWQ9ODRVOXFId2UyTjczZEVvUEZWcUt6JmFwaV9rZXk9cVE4bXBSaUVZZzN1TzZPckxUVGVKRDFEdlBHRVFoVm1NZUh2RHIzZG0GOwBG--1fd36964ad7eba79fdd9b7be9fe7d21a9e90a75b;
45
+ path=/; secure; HttpOnly
46
+ X-Request-Id:
47
+ - 1074e7c4d15b3cef2d94ea331d8aaf0d
48
+ X-Runtime:
49
+ - '0.190109'
50
+ X-Rack-Cache:
51
+ - miss
52
+ body:
53
+ encoding: US-ASCII
54
+ string: ! '{"status":"OK","sizes":[{"id":66,"name":"512MB"},{"id":63,"name":"1GB"},{"id":62,"name":"2GB"},{"id":64,"name":"4GB"},{"id":65,"name":"8GB"},{"id":61,"name":"16GB"},{"id":60,"name":"32GB"},{"id":70,"name":"48GB"},{"id":69,"name":"64GB"},{"id":68,"name":"96GB"}]}'
55
+ http_version:
56
+ recorded_at: Wed, 13 Mar 2013 12:15:58 GMT
57
+ - request:
58
+ method: get
59
+ uri: https://api.digitalocean.com/sizes/66?api_key=<API_KEY>&client_id=<CLIENT_ID>
60
+ body:
61
+ encoding: US-ASCII
62
+ string: ''
63
+ headers:
64
+ Accept:
65
+ - ! '*/*; q=0.5, application/xml'
66
+ Accept-Encoding:
67
+ - gzip, deflate
68
+ User-Agent:
69
+ - Ruby
70
+ response:
71
+ status:
72
+ code: 200
73
+ message: OK
74
+ headers:
75
+ Server:
76
+ - nginx
77
+ Date:
78
+ - Wed, 13 Mar 2013 12:16:01 GMT
79
+ Content-Type:
80
+ - application/json; charset=utf-8
81
+ Transfer-Encoding:
82
+ - chunked
83
+ Connection:
84
+ - keep-alive
85
+ Status:
86
+ - '200'
87
+ X-Powered-By:
88
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.11
89
+ Strict-Transport-Security:
90
+ - max-age=31536000
91
+ X-Ua-Compatible:
92
+ - IE=Edge,chrome=1
93
+ Etag:
94
+ - ! '"a63e1150108dfe045db0f43b6c3bbaa8"'
95
+ Cache-Control:
96
+ - max-age=0, private, must-revalidate
97
+ Set-Cookie:
98
+ - _digitalocean2_session_v2=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJTM3NjYzNmUzODhjNDcwZmFkNGRiNTQ3MzQ5M2ZmMzJiBjsAVEkiEXJlZGlyZWN0X3VybAY7AEZJIgF7aHR0cHM6Ly93d3cuZGlnaXRhbG9jZWFuLmNvbS9hcGkvc2l6ZXMvNjY%2FY2xpZW50X2lkPTg0VTlxSHdlMk43M2RFb1BGVnFLeiZhcGlfa2V5PXFROG1wUmlFWWczdU82T3JMVFRlSkQxRHZQR0VRaFZtTWVIdkRyM2RtBjsARg%3D%3D--ad7f032ebb53a3d877b53f7dc1635bf542dc85c9;
99
+ path=/; secure; HttpOnly
100
+ X-Request-Id:
101
+ - 4491f97d6f6e13af87afdd42533485c7
102
+ X-Runtime:
103
+ - '0.093088'
104
+ X-Rack-Cache:
105
+ - miss
106
+ body:
107
+ encoding: US-ASCII
108
+ string: ! '{"status":"OK","size":{"cost_per_hour":0.00744,"cpu":1,"disk":20,"id":66,"memory":512,"name":"512MB"}}'
109
+ http_version:
110
+ recorded_at: Wed, 13 Mar 2013 12:15:59 GMT
111
+ - request:
112
+ method: get
113
+ uri: https://api.digitalocean.com/sizes/63?api_key=<API_KEY>&client_id=<CLIENT_ID>
114
+ body:
115
+ encoding: US-ASCII
116
+ string: ''
117
+ headers:
118
+ Accept:
119
+ - ! '*/*; q=0.5, application/xml'
120
+ Accept-Encoding:
121
+ - gzip, deflate
122
+ User-Agent:
123
+ - Ruby
124
+ response:
125
+ status:
126
+ code: 200
127
+ message: OK
128
+ headers:
129
+ Server:
130
+ - nginx
131
+ Date:
132
+ - Wed, 13 Mar 2013 12:16:01 GMT
133
+ Content-Type:
134
+ - application/json; charset=utf-8
135
+ Transfer-Encoding:
136
+ - chunked
137
+ Connection:
138
+ - keep-alive
139
+ Status:
140
+ - '200'
141
+ X-Powered-By:
142
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.11
143
+ Strict-Transport-Security:
144
+ - max-age=31536000
145
+ X-Ua-Compatible:
146
+ - IE=Edge,chrome=1
147
+ Etag:
148
+ - ! '"7f996900a48526a8dcfe84a792ddc1fe"'
149
+ Cache-Control:
150
+ - max-age=0, private, must-revalidate
151
+ Set-Cookie:
152
+ - _digitalocean2_session_v2=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJTVlOWU1NzkwZTQwYmFhNzRjNDI5MjZjNjBiMzNmNzM5BjsAVEkiEXJlZGlyZWN0X3VybAY7AEZJIgF7aHR0cHM6Ly93d3cuZGlnaXRhbG9jZWFuLmNvbS9hcGkvc2l6ZXMvNjM%2FY2xpZW50X2lkPTg0VTlxSHdlMk43M2RFb1BGVnFLeiZhcGlfa2V5PXFROG1wUmlFWWczdU82T3JMVFRlSkQxRHZQR0VRaFZtTWVIdkRyM2RtBjsARg%3D%3D--4067340583c8f40da602600a7d0f0363b29a20cd;
153
+ path=/; secure; HttpOnly
154
+ X-Request-Id:
155
+ - c3708b57fb29690bee36d0f66fd0df39
156
+ X-Runtime:
157
+ - '0.144617'
158
+ X-Rack-Cache:
159
+ - miss
160
+ body:
161
+ encoding: US-ASCII
162
+ string: ! '{"status":"OK","size":{"cost_per_hour":0.01488,"cpu":1,"disk":30,"id":63,"memory":1024,"name":"1GB"}}'
163
+ http_version:
164
+ recorded_at: Wed, 13 Mar 2013 12:16:00 GMT
165
+ - request:
166
+ method: get
167
+ uri: https://api.digitalocean.com/sizes/62?api_key=<API_KEY>&client_id=<CLIENT_ID>
168
+ body:
169
+ encoding: US-ASCII
170
+ string: ''
171
+ headers:
172
+ Accept:
173
+ - ! '*/*; q=0.5, application/xml'
174
+ Accept-Encoding:
175
+ - gzip, deflate
176
+ User-Agent:
177
+ - Ruby
178
+ response:
179
+ status:
180
+ code: 200
181
+ message: OK
182
+ headers:
183
+ Server:
184
+ - nginx
185
+ Date:
186
+ - Wed, 13 Mar 2013 12:16:02 GMT
187
+ Content-Type:
188
+ - application/json; charset=utf-8
189
+ Transfer-Encoding:
190
+ - chunked
191
+ Connection:
192
+ - keep-alive
193
+ Status:
194
+ - '200'
195
+ X-Powered-By:
196
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.11
197
+ Strict-Transport-Security:
198
+ - max-age=31536000
199
+ X-Ua-Compatible:
200
+ - IE=Edge,chrome=1
201
+ Etag:
202
+ - ! '"d9ac89545e8817aae28a55bedb33079f"'
203
+ Cache-Control:
204
+ - max-age=0, private, must-revalidate
205
+ Set-Cookie:
206
+ - _digitalocean2_session_v2=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJTRhYzE3OTMzMDBlYzY3YmI0NTk5MTE4ZTllOGY2MTBmBjsAVEkiEXJlZGlyZWN0X3VybAY7AEZJIgF7aHR0cHM6Ly93d3cuZGlnaXRhbG9jZWFuLmNvbS9hcGkvc2l6ZXMvNjI%2FY2xpZW50X2lkPTg0VTlxSHdlMk43M2RFb1BGVnFLeiZhcGlfa2V5PXFROG1wUmlFWWczdU82T3JMVFRlSkQxRHZQR0VRaFZtTWVIdkRyM2RtBjsARg%3D%3D--f579c782c407420868c131de2ddac5a7021a0f1f;
207
+ path=/; secure; HttpOnly
208
+ X-Request-Id:
209
+ - 1ddb983c5c3baa5e0c83dc2c7f8d8060
210
+ X-Runtime:
211
+ - '0.152224'
212
+ X-Rack-Cache:
213
+ - miss
214
+ body:
215
+ encoding: US-ASCII
216
+ string: ! '{"status":"OK","size":{"cost_per_hour":0.02976,"cpu":2,"disk":40,"id":62,"memory":2048,"name":"2GB"}}'
217
+ http_version:
218
+ recorded_at: Wed, 13 Mar 2013 12:16:00 GMT
219
+ - request:
220
+ method: get
221
+ uri: https://api.digitalocean.com/sizes/64?api_key=<API_KEY>&client_id=<CLIENT_ID>
222
+ body:
223
+ encoding: US-ASCII
224
+ string: ''
225
+ headers:
226
+ Accept:
227
+ - ! '*/*; q=0.5, application/xml'
228
+ Accept-Encoding:
229
+ - gzip, deflate
230
+ User-Agent:
231
+ - Ruby
232
+ response:
233
+ status:
234
+ code: 200
235
+ message: OK
236
+ headers:
237
+ Server:
238
+ - nginx
239
+ Date:
240
+ - Wed, 13 Mar 2013 12:16:03 GMT
241
+ Content-Type:
242
+ - application/json; charset=utf-8
243
+ Transfer-Encoding:
244
+ - chunked
245
+ Connection:
246
+ - keep-alive
247
+ Status:
248
+ - '200'
249
+ X-Powered-By:
250
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.11
251
+ Strict-Transport-Security:
252
+ - max-age=31536000
253
+ X-Ua-Compatible:
254
+ - IE=Edge,chrome=1
255
+ Etag:
256
+ - ! '"6d50dad2ebf484e8d1358b0dc46d079a"'
257
+ Cache-Control:
258
+ - max-age=0, private, must-revalidate
259
+ Set-Cookie:
260
+ - _digitalocean2_session_v2=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJTk2OTExZjkwODc2MGYzYjU2YTJjYzM4ZTVhN2NlMTQ1BjsAVEkiEXJlZGlyZWN0X3VybAY7AEZJIgF7aHR0cHM6Ly93d3cuZGlnaXRhbG9jZWFuLmNvbS9hcGkvc2l6ZXMvNjQ%2FY2xpZW50X2lkPTg0VTlxSHdlMk43M2RFb1BGVnFLeiZhcGlfa2V5PXFROG1wUmlFWWczdU82T3JMVFRlSkQxRHZQR0VRaFZtTWVIdkRyM2RtBjsARg%3D%3D--8bb250bb95933b3836199b12496828dab4f68cd7;
261
+ path=/; secure; HttpOnly
262
+ X-Request-Id:
263
+ - ef4efd257dc350c8ad53e7519a2e7019
264
+ X-Runtime:
265
+ - '0.190546'
266
+ X-Rack-Cache:
267
+ - miss
268
+ body:
269
+ encoding: US-ASCII
270
+ string: ! '{"status":"OK","size":{"cost_per_hour":0.05952,"cpu":2,"disk":60,"id":64,"memory":4096,"name":"4GB"}}'
271
+ http_version:
272
+ recorded_at: Wed, 13 Mar 2013 12:16:01 GMT
273
+ - request:
274
+ method: get
275
+ uri: https://api.digitalocean.com/sizes/65?api_key=<API_KEY>&client_id=<CLIENT_ID>
276
+ body:
277
+ encoding: US-ASCII
278
+ string: ''
279
+ headers:
280
+ Accept:
281
+ - ! '*/*; q=0.5, application/xml'
282
+ Accept-Encoding:
283
+ - gzip, deflate
284
+ User-Agent:
285
+ - Ruby
286
+ response:
287
+ status:
288
+ code: 200
289
+ message: OK
290
+ headers:
291
+ Server:
292
+ - nginx
293
+ Date:
294
+ - Wed, 13 Mar 2013 12:16:03 GMT
295
+ Content-Type:
296
+ - application/json; charset=utf-8
297
+ Transfer-Encoding:
298
+ - chunked
299
+ Connection:
300
+ - keep-alive
301
+ Status:
302
+ - '200'
303
+ X-Powered-By:
304
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.11
305
+ Strict-Transport-Security:
306
+ - max-age=31536000
307
+ X-Ua-Compatible:
308
+ - IE=Edge,chrome=1
309
+ Etag:
310
+ - ! '"8c12ce828f01ca136707d9ba79af8f10"'
311
+ Cache-Control:
312
+ - max-age=0, private, must-revalidate
313
+ Set-Cookie:
314
+ - _digitalocean2_session_v2=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJThiNmNkZjBmYjllNGI2M2VkZTE3NjZjNzZmOGJhZjUzBjsAVEkiEXJlZGlyZWN0X3VybAY7AEZJIgF7aHR0cHM6Ly93d3cuZGlnaXRhbG9jZWFuLmNvbS9hcGkvc2l6ZXMvNjU%2FY2xpZW50X2lkPTg0VTlxSHdlMk43M2RFb1BGVnFLeiZhcGlfa2V5PXFROG1wUmlFWWczdU82T3JMVFRlSkQxRHZQR0VRaFZtTWVIdkRyM2RtBjsARg%3D%3D--9a5d46ec59eac0abcdbcb16a3a607e1623105b09;
315
+ path=/; secure; HttpOnly
316
+ X-Request-Id:
317
+ - e057f2fda620e57fc03c1d0ee836214a
318
+ X-Runtime:
319
+ - '0.149432'
320
+ X-Rack-Cache:
321
+ - miss
322
+ body:
323
+ encoding: US-ASCII
324
+ string: ! '{"status":"OK","size":{"cost_per_hour":0.11905,"cpu":4,"disk":80,"id":65,"memory":8192,"name":"8GB"}}'
325
+ http_version:
326
+ recorded_at: Wed, 13 Mar 2013 12:16:02 GMT
327
+ - request:
328
+ method: get
329
+ uri: https://api.digitalocean.com/sizes/61?api_key=<API_KEY>&client_id=<CLIENT_ID>
330
+ body:
331
+ encoding: US-ASCII
332
+ string: ''
333
+ headers:
334
+ Accept:
335
+ - ! '*/*; q=0.5, application/xml'
336
+ Accept-Encoding:
337
+ - gzip, deflate
338
+ User-Agent:
339
+ - Ruby
340
+ response:
341
+ status:
342
+ code: 200
343
+ message: OK
344
+ headers:
345
+ Server:
346
+ - nginx
347
+ Date:
348
+ - Wed, 13 Mar 2013 12:16:04 GMT
349
+ Content-Type:
350
+ - application/json; charset=utf-8
351
+ Transfer-Encoding:
352
+ - chunked
353
+ Connection:
354
+ - keep-alive
355
+ Status:
356
+ - '200'
357
+ X-Powered-By:
358
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.11
359
+ Strict-Transport-Security:
360
+ - max-age=31536000
361
+ X-Ua-Compatible:
362
+ - IE=Edge,chrome=1
363
+ Etag:
364
+ - ! '"0a9be170ed9d35115b4871e7f936bbd9"'
365
+ Cache-Control:
366
+ - max-age=0, private, must-revalidate
367
+ Set-Cookie:
368
+ - _digitalocean2_session_v2=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJTgwZDc5MWVjNTY0N2EyNTBmNmZiZjU0MjFmZDAwNDg4BjsAVEkiEXJlZGlyZWN0X3VybAY7AEZJIgF7aHR0cHM6Ly93d3cuZGlnaXRhbG9jZWFuLmNvbS9hcGkvc2l6ZXMvNjE%2FY2xpZW50X2lkPTg0VTlxSHdlMk43M2RFb1BGVnFLeiZhcGlfa2V5PXFROG1wUmlFWWczdU82T3JMVFRlSkQxRHZQR0VRaFZtTWVIdkRyM2RtBjsARg%3D%3D--7dd7aac09660c25df1d35c611388a4c0a0c1bf3c;
369
+ path=/; secure; HttpOnly
370
+ X-Request-Id:
371
+ - f01f4200c49558c04770af809bb93657
372
+ X-Runtime:
373
+ - '0.160450'
374
+ X-Rack-Cache:
375
+ - miss
376
+ body:
377
+ encoding: US-ASCII
378
+ string: ! '{"status":"OK","size":{"cost_per_hour":0.2381,"cpu":8,"disk":160,"id":61,"memory":16384,"name":"16GB"}}'
379
+ http_version:
380
+ recorded_at: Wed, 13 Mar 2013 12:16:02 GMT
381
+ - request:
382
+ method: get
383
+ uri: https://api.digitalocean.com/sizes/60?api_key=<API_KEY>&client_id=<CLIENT_ID>
384
+ body:
385
+ encoding: US-ASCII
386
+ string: ''
387
+ headers:
388
+ Accept:
389
+ - ! '*/*; q=0.5, application/xml'
390
+ Accept-Encoding:
391
+ - gzip, deflate
392
+ User-Agent:
393
+ - Ruby
394
+ response:
395
+ status:
396
+ code: 200
397
+ message: OK
398
+ headers:
399
+ Server:
400
+ - nginx
401
+ Date:
402
+ - Wed, 13 Mar 2013 12:16:05 GMT
403
+ Content-Type:
404
+ - application/json; charset=utf-8
405
+ Transfer-Encoding:
406
+ - chunked
407
+ Connection:
408
+ - keep-alive
409
+ Status:
410
+ - '200'
411
+ X-Powered-By:
412
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.11
413
+ Strict-Transport-Security:
414
+ - max-age=31536000
415
+ X-Ua-Compatible:
416
+ - IE=Edge,chrome=1
417
+ Etag:
418
+ - ! '"a57c88b502fbe6d0b0ff6982a85cf0fc"'
419
+ Cache-Control:
420
+ - max-age=0, private, must-revalidate
421
+ Set-Cookie:
422
+ - _digitalocean2_session_v2=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJTY1ODQzNjY0MGU3ZThhN2ZjOWI3YjBlMWNlZDMzYTQzBjsAVEkiEXJlZGlyZWN0X3VybAY7AEZJIgF7aHR0cHM6Ly93d3cuZGlnaXRhbG9jZWFuLmNvbS9hcGkvc2l6ZXMvNjA%2FY2xpZW50X2lkPTg0VTlxSHdlMk43M2RFb1BGVnFLeiZhcGlfa2V5PXFROG1wUmlFWWczdU82T3JMVFRlSkQxRHZQR0VRaFZtTWVIdkRyM2RtBjsARg%3D%3D--64d5f44d5fbdecd0ca13134f9e1d5b28b2e920e8;
423
+ path=/; secure; HttpOnly
424
+ X-Request-Id:
425
+ - 8f37576f15ef0e8b8626287172cf341c
426
+ X-Runtime:
427
+ - '0.206522'
428
+ X-Rack-Cache:
429
+ - miss
430
+ body:
431
+ encoding: US-ASCII
432
+ string: ! '{"status":"OK","size":{"cost_per_hour":0.47619,"cpu":12,"disk":320,"id":60,"memory":32768,"name":"32GB"}}'
433
+ http_version:
434
+ recorded_at: Wed, 13 Mar 2013 12:16:03 GMT
435
+ - request:
436
+ method: get
437
+ uri: https://api.digitalocean.com/sizes/70?api_key=<API_KEY>&client_id=<CLIENT_ID>
438
+ body:
439
+ encoding: US-ASCII
440
+ string: ''
441
+ headers:
442
+ Accept:
443
+ - ! '*/*; q=0.5, application/xml'
444
+ Accept-Encoding:
445
+ - gzip, deflate
446
+ User-Agent:
447
+ - Ruby
448
+ response:
449
+ status:
450
+ code: 200
451
+ message: OK
452
+ headers:
453
+ Server:
454
+ - nginx
455
+ Date:
456
+ - Wed, 13 Mar 2013 12:16:06 GMT
457
+ Content-Type:
458
+ - application/json; charset=utf-8
459
+ Transfer-Encoding:
460
+ - chunked
461
+ Connection:
462
+ - keep-alive
463
+ Status:
464
+ - '200'
465
+ X-Powered-By:
466
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.11
467
+ Strict-Transport-Security:
468
+ - max-age=31536000
469
+ X-Ua-Compatible:
470
+ - IE=Edge,chrome=1
471
+ Etag:
472
+ - ! '"5ee01f38aa85b9ae23518b00314668bb"'
473
+ Cache-Control:
474
+ - max-age=0, private, must-revalidate
475
+ Set-Cookie:
476
+ - _digitalocean2_session_v2=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJWE3NzAzMDlhNzBjYTM4YTk1YzU5ZTZiNDQ0NjEwMDEwBjsAVEkiEXJlZGlyZWN0X3VybAY7AEZJIgF7aHR0cHM6Ly93d3cuZGlnaXRhbG9jZWFuLmNvbS9hcGkvc2l6ZXMvNzA%2FY2xpZW50X2lkPTg0VTlxSHdlMk43M2RFb1BGVnFLeiZhcGlfa2V5PXFROG1wUmlFWWczdU82T3JMVFRlSkQxRHZQR0VRaFZtTWVIdkRyM2RtBjsARg%3D%3D--568ae144703aa8e8fb0dfe991b6702059df2bd25;
477
+ path=/; secure; HttpOnly
478
+ X-Request-Id:
479
+ - 2429eef9dfe116091e1252b53e78de2c
480
+ X-Runtime:
481
+ - '0.149992'
482
+ X-Rack-Cache:
483
+ - miss
484
+ body:
485
+ encoding: US-ASCII
486
+ string: ! '{"status":"OK","size":{"cost_per_hour":0.71429,"cpu":16,"disk":480,"id":70,"memory":49152,"name":"48GB"}}'
487
+ http_version:
488
+ recorded_at: Wed, 13 Mar 2013 12:16:04 GMT
489
+ - request:
490
+ method: get
491
+ uri: https://api.digitalocean.com/sizes/69?api_key=<API_KEY>&client_id=<CLIENT_ID>
492
+ body:
493
+ encoding: US-ASCII
494
+ string: ''
495
+ headers:
496
+ Accept:
497
+ - ! '*/*; q=0.5, application/xml'
498
+ Accept-Encoding:
499
+ - gzip, deflate
500
+ User-Agent:
501
+ - Ruby
502
+ response:
503
+ status:
504
+ code: 200
505
+ message: OK
506
+ headers:
507
+ Server:
508
+ - nginx
509
+ Date:
510
+ - Wed, 13 Mar 2013 12:16:06 GMT
511
+ Content-Type:
512
+ - application/json; charset=utf-8
513
+ Transfer-Encoding:
514
+ - chunked
515
+ Connection:
516
+ - keep-alive
517
+ Status:
518
+ - '200'
519
+ X-Powered-By:
520
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.11
521
+ Strict-Transport-Security:
522
+ - max-age=31536000
523
+ X-Ua-Compatible:
524
+ - IE=Edge,chrome=1
525
+ Etag:
526
+ - ! '"5733d0aaff79733edb1b45c46b01530a"'
527
+ Cache-Control:
528
+ - max-age=0, private, must-revalidate
529
+ Set-Cookie:
530
+ - _digitalocean2_session_v2=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJTdlNGI3YjVmYTZkZTJmNjViN2I0ZjJlNTEyNmI0MTBmBjsAVEkiEXJlZGlyZWN0X3VybAY7AEZJIgF7aHR0cHM6Ly93d3cuZGlnaXRhbG9jZWFuLmNvbS9hcGkvc2l6ZXMvNjk%2FY2xpZW50X2lkPTg0VTlxSHdlMk43M2RFb1BGVnFLeiZhcGlfa2V5PXFROG1wUmlFWWczdU82T3JMVFRlSkQxRHZQR0VRaFZtTWVIdkRyM2RtBjsARg%3D%3D--09872ba9f950f1507e588c0a723e18f97ea343f8;
531
+ path=/; secure; HttpOnly
532
+ X-Request-Id:
533
+ - 0580d31cd0217a63d1f56b91544b8d8d
534
+ X-Runtime:
535
+ - '0.262554'
536
+ X-Rack-Cache:
537
+ - miss
538
+ body:
539
+ encoding: US-ASCII
540
+ string: ! '{"status":"OK","size":{"cost_per_hour":0.95238,"cpu":20,"disk":640,"id":69,"memory":65536,"name":"64GB"}}'
541
+ http_version:
542
+ recorded_at: Wed, 13 Mar 2013 12:16:05 GMT
543
+ - request:
544
+ method: get
545
+ uri: https://api.digitalocean.com/sizes/68?api_key=<API_KEY>&client_id=<CLIENT_ID>
546
+ body:
547
+ encoding: US-ASCII
548
+ string: ''
549
+ headers:
550
+ Accept:
551
+ - ! '*/*; q=0.5, application/xml'
552
+ Accept-Encoding:
553
+ - gzip, deflate
554
+ User-Agent:
555
+ - Ruby
556
+ response:
557
+ status:
558
+ code: 200
559
+ message: OK
560
+ headers:
561
+ Server:
562
+ - nginx
563
+ Date:
564
+ - Wed, 13 Mar 2013 12:16:07 GMT
565
+ Content-Type:
566
+ - application/json; charset=utf-8
567
+ Transfer-Encoding:
568
+ - chunked
569
+ Connection:
570
+ - keep-alive
571
+ Status:
572
+ - '200'
573
+ X-Powered-By:
574
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.11
575
+ Strict-Transport-Security:
576
+ - max-age=31536000
577
+ X-Ua-Compatible:
578
+ - IE=Edge,chrome=1
579
+ Etag:
580
+ - ! '"66f71ff04ffc61fa6d10fbe4b610e985"'
581
+ Cache-Control:
582
+ - max-age=0, private, must-revalidate
583
+ Set-Cookie:
584
+ - _digitalocean2_session_v2=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJTJhZWQwZDFhZmE0ZjZhMjgzYmJjMTFkYWVhNjY4YTZkBjsAVEkiEXJlZGlyZWN0X3VybAY7AEZJIgF7aHR0cHM6Ly93d3cuZGlnaXRhbG9jZWFuLmNvbS9hcGkvc2l6ZXMvNjg%2FY2xpZW50X2lkPTg0VTlxSHdlMk43M2RFb1BGVnFLeiZhcGlfa2V5PXFROG1wUmlFWWczdU82T3JMVFRlSkQxRHZQR0VRaFZtTWVIdkRyM2RtBjsARg%3D%3D--ccffb60b977e1f2ace641055f73f8fc104617641;
585
+ path=/; secure; HttpOnly
586
+ X-Request-Id:
587
+ - e9344bfb1294577590c2d8e4750cc723
588
+ X-Runtime:
589
+ - '0.157202'
590
+ X-Rack-Cache:
591
+ - miss
592
+ body:
593
+ encoding: US-ASCII
594
+ string: ! '{"status":"OK","size":{"cost_per_hour":1.42857,"cpu":24,"disk":960,"id":68,"memory":94208,"name":"96GB"}}'
595
+ http_version:
596
+ recorded_at: Wed, 13 Mar 2013 12:16:05 GMT
597
+ recorded_with: VCR 2.4.0