fog 1.41.0 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (256) hide show
  1. checksums.yaml +5 -5
  2. data/.github/stale.yml +17 -0
  3. data/.travis.yml +1 -8
  4. data/CHANGELOG.md +78 -0
  5. data/README.md +4 -5
  6. data/Rakefile +0 -3
  7. data/fog.gemspec +13 -13
  8. data/lib/fog/bin/brightbox.rb +2 -2
  9. data/lib/fog/bin.rb +0 -2
  10. data/lib/fog/cloudstack/models/compute/server.rb +2 -0
  11. data/lib/fog/linode/requests/compute/avail_datacenters.rb +1 -0
  12. data/lib/fog/opennebula/compute.rb +6 -1
  13. data/lib/fog/opennebula/requests/compute/OpenNebulaVNC.rb +5 -1
  14. data/lib/fog/vcloud_director/compute.rb +3 -2
  15. data/lib/fog/vcloud_director/generators/compute/edge_gateway_service_configuration.rb +2 -2
  16. data/lib/fog/vcloud_director/generators/compute/network_config_section.rb +68 -0
  17. data/lib/fog/vcloud_director/requests/compute/get_vapp.rb +0 -4
  18. data/lib/fog/vcloud_director/requests/compute/instantiate_vapp_template.rb +11 -11
  19. data/lib/fog/vcloud_director/requests/compute/post_power_on_vapp.rb +1 -1
  20. data/lib/fog/vcloud_director/requests/compute/put_config_network_section_vapp.rb +26 -0
  21. data/lib/fog/version.rb +1 -1
  22. data/lib/fog.rb +0 -2
  23. data/lib/tasks/changelog_task.rb +4 -1
  24. data/lib/tasks/github_release_task.rb +1 -1
  25. data/spec/fog/bin/atmos_spec.rb +0 -10
  26. data/spec/fog/bin/aws_spec.rb +0 -18
  27. data/spec/fog/bin/baremetalcloud_spec.rb +0 -10
  28. data/spec/fog/bin/brightbox_spec.rb +2 -2
  29. data/spec/fog/bin_spec.rb +0 -6
  30. data/tests/cloudsigma/models/snapshot_tests.rb +2 -0
  31. data/tests/cloudsigma/models/snapshots_tests.rb +1 -0
  32. data/tests/cloudsigma/requests/snapshots_tests.rb +1 -0
  33. data/tests/cloudsigma/requests/volumes_tests.rb +1 -1
  34. data/tests/cloudstack/compute/models/volume_tests.rb +1 -1
  35. data/tests/compute/helper.rb +0 -9
  36. data/tests/dns/helper.rb +0 -9
  37. data/tests/helpers/collection_helper.rb +0 -6
  38. data/tests/helpers/mock_helper.rb +0 -7
  39. data/tests/opennebula/compute_tests.rb +5 -2
  40. data/tests/opennebula/models/compute/flavor_tests.rb +5 -1
  41. data/tests/opennebula/models/compute/flavors_tests.rb +5 -2
  42. data/tests/opennebula/models/compute/group_tests.rb +5 -2
  43. data/tests/opennebula/models/compute/groups_tests.rb +5 -2
  44. data/tests/opennebula/models/compute/network_tests.rb +5 -1
  45. data/tests/opennebula/models/compute/networks_tests.rb +5 -2
  46. data/tests/opennebula/requests/compute/vm_allocate_tests.rb +5 -1
  47. data/tests/opennebula/requests/compute/vm_suspend_resume_tests.rb +5 -2
  48. metadata +37 -546
  49. data/gemfiles/Gemfile-1.9 +0 -16
  50. data/gemfiles/Gemfile-edge-1.9 +0 -20
  51. data/lib/fog/bin/bluebox.rb +0 -36
  52. data/lib/fog/bin/ovirt.rb +0 -28
  53. data/lib/fog/bin/zerigo.rb +0 -29
  54. data/lib/fog/bluebox/blb.rb +0 -82
  55. data/lib/fog/bluebox/compute.rb +0 -98
  56. data/lib/fog/bluebox/core.rb +0 -12
  57. data/lib/fog/bluebox/dns.rb +0 -101
  58. data/lib/fog/bluebox/models/blb/lb_application.rb +0 -29
  59. data/lib/fog/bluebox/models/blb/lb_applications.rb +0 -24
  60. data/lib/fog/bluebox/models/blb/lb_backend.rb +0 -19
  61. data/lib/fog/bluebox/models/blb/lb_backends.rb +0 -27
  62. data/lib/fog/bluebox/models/blb/lb_service.rb +0 -32
  63. data/lib/fog/bluebox/models/blb/lb_services.rb +0 -27
  64. data/lib/fog/bluebox/models/compute/flavor.rb +0 -41
  65. data/lib/fog/bluebox/models/compute/flavors.rb +0 -24
  66. data/lib/fog/bluebox/models/compute/image.rb +0 -30
  67. data/lib/fog/bluebox/models/compute/images.rb +0 -24
  68. data/lib/fog/bluebox/models/compute/location.rb +0 -13
  69. data/lib/fog/bluebox/models/compute/locations.rb +0 -24
  70. data/lib/fog/bluebox/models/compute/server.rb +0 -121
  71. data/lib/fog/bluebox/models/compute/servers.rb +0 -32
  72. data/lib/fog/bluebox/models/dns/record.rb +0 -52
  73. data/lib/fog/bluebox/models/dns/records.rb +0 -32
  74. data/lib/fog/bluebox/models/dns/zone.rb +0 -62
  75. data/lib/fog/bluebox/models/dns/zones.rb +0 -24
  76. data/lib/fog/bluebox/parsers/dns/create_record.rb +0 -22
  77. data/lib/fog/bluebox/parsers/dns/create_zone.rb +0 -22
  78. data/lib/fog/bluebox/parsers/dns/get_record.rb +0 -17
  79. data/lib/fog/bluebox/parsers/dns/get_records.rb +0 -24
  80. data/lib/fog/bluebox/parsers/dns/get_zone.rb +0 -22
  81. data/lib/fog/bluebox/parsers/dns/get_zones.rb +0 -26
  82. data/lib/fog/bluebox/requests/blb/add_machine_to_lb_application.rb +0 -33
  83. data/lib/fog/bluebox/requests/blb/add_machine_to_lb_backend.rb +0 -31
  84. data/lib/fog/bluebox/requests/blb/get_lb_application.rb +0 -32
  85. data/lib/fog/bluebox/requests/blb/get_lb_applications.rb +0 -30
  86. data/lib/fog/bluebox/requests/blb/get_lb_backend.rb +0 -35
  87. data/lib/fog/bluebox/requests/blb/get_lb_backends.rb +0 -35
  88. data/lib/fog/bluebox/requests/blb/get_lb_machine.rb +0 -34
  89. data/lib/fog/bluebox/requests/blb/get_lb_machines.rb +0 -34
  90. data/lib/fog/bluebox/requests/blb/get_lb_service.rb +0 -35
  91. data/lib/fog/bluebox/requests/blb/get_lb_services.rb +0 -35
  92. data/lib/fog/bluebox/requests/blb/remove_machine_from_lb_backend.rb +0 -28
  93. data/lib/fog/bluebox/requests/blb/update_lb_backend_machine.rb +0 -29
  94. data/lib/fog/bluebox/requests/compute/create_block.rb +0 -44
  95. data/lib/fog/bluebox/requests/compute/create_template.rb +0 -25
  96. data/lib/fog/bluebox/requests/compute/destroy_block.rb +0 -24
  97. data/lib/fog/bluebox/requests/compute/destroy_template.rb +0 -24
  98. data/lib/fog/bluebox/requests/compute/get_block.rb +0 -24
  99. data/lib/fog/bluebox/requests/compute/get_blocks.rb +0 -26
  100. data/lib/fog/bluebox/requests/compute/get_location.rb +0 -24
  101. data/lib/fog/bluebox/requests/compute/get_locations.rb +0 -22
  102. data/lib/fog/bluebox/requests/compute/get_product.rb +0 -24
  103. data/lib/fog/bluebox/requests/compute/get_products.rb +0 -23
  104. data/lib/fog/bluebox/requests/compute/get_template.rb +0 -24
  105. data/lib/fog/bluebox/requests/compute/get_templates.rb +0 -24
  106. data/lib/fog/bluebox/requests/compute/reboot_block.rb +0 -25
  107. data/lib/fog/bluebox/requests/dns/create_record.rb +0 -44
  108. data/lib/fog/bluebox/requests/dns/create_zone.rb +0 -48
  109. data/lib/fog/bluebox/requests/dns/delete_record.rb +0 -27
  110. data/lib/fog/bluebox/requests/dns/delete_zone.rb +0 -27
  111. data/lib/fog/bluebox/requests/dns/get_record.rb +0 -36
  112. data/lib/fog/bluebox/requests/dns/get_records.rb +0 -37
  113. data/lib/fog/bluebox/requests/dns/get_zone.rb +0 -40
  114. data/lib/fog/bluebox/requests/dns/get_zones.rb +0 -39
  115. data/lib/fog/bluebox/requests/dns/update_record.rb +0 -30
  116. data/lib/fog/bluebox/requests/dns/update_zone.rb +0 -26
  117. data/lib/fog/bluebox.rb +0 -3
  118. data/lib/fog/ovirt/compute.rb +0 -155
  119. data/lib/fog/ovirt/core.rb +0 -16
  120. data/lib/fog/ovirt/models/compute/affinity_group.rb +0 -25
  121. data/lib/fog/ovirt/models/compute/affinity_groups.rb +0 -20
  122. data/lib/fog/ovirt/models/compute/cluster.rb +0 -20
  123. data/lib/fog/ovirt/models/compute/clusters.rb +0 -20
  124. data/lib/fog/ovirt/models/compute/instance_type.rb +0 -39
  125. data/lib/fog/ovirt/models/compute/instance_types.rb +0 -20
  126. data/lib/fog/ovirt/models/compute/interface.rb +0 -19
  127. data/lib/fog/ovirt/models/compute/interfaces.rb +0 -29
  128. data/lib/fog/ovirt/models/compute/quota.rb +0 -16
  129. data/lib/fog/ovirt/models/compute/quotas.rb +0 -20
  130. data/lib/fog/ovirt/models/compute/server.rb +0 -175
  131. data/lib/fog/ovirt/models/compute/servers.rb +0 -27
  132. data/lib/fog/ovirt/models/compute/template.rb +0 -58
  133. data/lib/fog/ovirt/models/compute/templates.rb +0 -20
  134. data/lib/fog/ovirt/models/compute/volume.rb +0 -36
  135. data/lib/fog/ovirt/models/compute/volumes.rb +0 -28
  136. data/lib/fog/ovirt/requests/compute/activate_volume.rb +0 -22
  137. data/lib/fog/ovirt/requests/compute/add_interface.rb +0 -20
  138. data/lib/fog/ovirt/requests/compute/add_to_affinity_group.rb +0 -21
  139. data/lib/fog/ovirt/requests/compute/add_volume.rb +0 -21
  140. data/lib/fog/ovirt/requests/compute/attach_volume.rb +0 -22
  141. data/lib/fog/ovirt/requests/compute/create_affinity_group.rb +0 -18
  142. data/lib/fog/ovirt/requests/compute/create_vm.rb +0 -18
  143. data/lib/fog/ovirt/requests/compute/datacenters.rb +0 -20
  144. data/lib/fog/ovirt/requests/compute/deactivate_volume.rb +0 -22
  145. data/lib/fog/ovirt/requests/compute/destroy_affinity_group.rb +0 -19
  146. data/lib/fog/ovirt/requests/compute/destroy_interface.rb +0 -22
  147. data/lib/fog/ovirt/requests/compute/destroy_vm.rb +0 -19
  148. data/lib/fog/ovirt/requests/compute/destroy_volume.rb +0 -22
  149. data/lib/fog/ovirt/requests/compute/detach_volume.rb +0 -22
  150. data/lib/fog/ovirt/requests/compute/get_affinity_group.rb +0 -18
  151. data/lib/fog/ovirt/requests/compute/get_api_version.rb +0 -16
  152. data/lib/fog/ovirt/requests/compute/get_cluster.rb +0 -17
  153. data/lib/fog/ovirt/requests/compute/get_instance_type.rb +0 -17
  154. data/lib/fog/ovirt/requests/compute/get_quota.rb +0 -17
  155. data/lib/fog/ovirt/requests/compute/get_template.rb +0 -17
  156. data/lib/fog/ovirt/requests/compute/get_virtual_machine.rb +0 -17
  157. data/lib/fog/ovirt/requests/compute/list_affinity_group_vms.rb +0 -22
  158. data/lib/fog/ovirt/requests/compute/list_affinity_groups.rb +0 -20
  159. data/lib/fog/ovirt/requests/compute/list_clusters.rb +0 -19
  160. data/lib/fog/ovirt/requests/compute/list_instance_types.rb +0 -19
  161. data/lib/fog/ovirt/requests/compute/list_networks.rb +0 -16
  162. data/lib/fog/ovirt/requests/compute/list_quotas.rb +0 -19
  163. data/lib/fog/ovirt/requests/compute/list_template_interfaces.rb +0 -19
  164. data/lib/fog/ovirt/requests/compute/list_template_volumes.rb +0 -19
  165. data/lib/fog/ovirt/requests/compute/list_templates.rb +0 -19
  166. data/lib/fog/ovirt/requests/compute/list_virtual_machines.rb +0 -19
  167. data/lib/fog/ovirt/requests/compute/list_vm_interfaces.rb +0 -19
  168. data/lib/fog/ovirt/requests/compute/list_vm_volumes.rb +0 -19
  169. data/lib/fog/ovirt/requests/compute/list_volumes.rb +0 -19
  170. data/lib/fog/ovirt/requests/compute/mock_files/affinitygroup.xml +0 -8
  171. data/lib/fog/ovirt/requests/compute/mock_files/affinitygroup_vms.xml +0 -9
  172. data/lib/fog/ovirt/requests/compute/mock_files/affinitygroups.xml +0 -17
  173. data/lib/fog/ovirt/requests/compute/mock_files/cluster.xml +0 -20
  174. data/lib/fog/ovirt/requests/compute/mock_files/clusters.xml +0 -39
  175. data/lib/fog/ovirt/requests/compute/mock_files/data_centers.xml +0 -17
  176. data/lib/fog/ovirt/requests/compute/mock_files/disks.xml +0 -58
  177. data/lib/fog/ovirt/requests/compute/mock_files/instance_type.xml +0 -42
  178. data/lib/fog/ovirt/requests/compute/mock_files/instance_types.xml +0 -197
  179. data/lib/fog/ovirt/requests/compute/mock_files/nics.xml +0 -10
  180. data/lib/fog/ovirt/requests/compute/mock_files/quotas.xml +0 -7
  181. data/lib/fog/ovirt/requests/compute/mock_files/storage_domains.xml +0 -36
  182. data/lib/fog/ovirt/requests/compute/mock_files/template.xml +0 -39
  183. data/lib/fog/ovirt/requests/compute/mock_files/templates.xml +0 -110
  184. data/lib/fog/ovirt/requests/compute/mock_files/vm.xml +0 -52
  185. data/lib/fog/ovirt/requests/compute/mock_files/vms.xml +0 -152
  186. data/lib/fog/ovirt/requests/compute/mock_files/volumes.xml +0 -40
  187. data/lib/fog/ovirt/requests/compute/remove_from_affinity_group.rb +0 -21
  188. data/lib/fog/ovirt/requests/compute/storage_domains.rb +0 -20
  189. data/lib/fog/ovirt/requests/compute/update_interface.rb +0 -35
  190. data/lib/fog/ovirt/requests/compute/update_vm.rb +0 -18
  191. data/lib/fog/ovirt/requests/compute/update_volume.rb +0 -39
  192. data/lib/fog/ovirt/requests/compute/vm_action.rb +0 -22
  193. data/lib/fog/ovirt/requests/compute/vm_start_with_cloudinit.rb +0 -19
  194. data/lib/fog/ovirt/requests/compute/vm_ticket.rb +0 -17
  195. data/lib/fog/ovirt.rb +0 -1
  196. data/lib/fog/zerigo/core.rb +0 -10
  197. data/lib/fog/zerigo/dns.rb +0 -114
  198. data/lib/fog/zerigo/models/dns/record.rb +0 -66
  199. data/lib/fog/zerigo/models/dns/records.rb +0 -45
  200. data/lib/fog/zerigo/models/dns/zone.rb +0 -84
  201. data/lib/fog/zerigo/models/dns/zones.rb +0 -26
  202. data/lib/fog/zerigo/parsers/dns/count_hosts.rb +0 -20
  203. data/lib/fog/zerigo/parsers/dns/count_zones.rb +0 -20
  204. data/lib/fog/zerigo/parsers/dns/create_host.rb +0 -24
  205. data/lib/fog/zerigo/parsers/dns/create_zone.rb +0 -22
  206. data/lib/fog/zerigo/parsers/dns/find_hosts.rb +0 -28
  207. data/lib/fog/zerigo/parsers/dns/get_host.rb +0 -24
  208. data/lib/fog/zerigo/parsers/dns/get_zone.rb +0 -53
  209. data/lib/fog/zerigo/parsers/dns/get_zone_stats.rb +0 -22
  210. data/lib/fog/zerigo/parsers/dns/list_hosts.rb +0 -28
  211. data/lib/fog/zerigo/parsers/dns/list_zones.rb +0 -26
  212. data/lib/fog/zerigo/requests/dns/count_hosts.rb +0 -45
  213. data/lib/fog/zerigo/requests/dns/count_zones.rb +0 -37
  214. data/lib/fog/zerigo/requests/dns/create_host.rb +0 -125
  215. data/lib/fog/zerigo/requests/dns/create_zone.rb +0 -128
  216. data/lib/fog/zerigo/requests/dns/delete_host.rb +0 -41
  217. data/lib/fog/zerigo/requests/dns/delete_zone.rb +0 -40
  218. data/lib/fog/zerigo/requests/dns/find_hosts.rb +0 -74
  219. data/lib/fog/zerigo/requests/dns/get_host.rb +0 -54
  220. data/lib/fog/zerigo/requests/dns/get_zone.rb +0 -64
  221. data/lib/fog/zerigo/requests/dns/get_zone_stats.rb +0 -57
  222. data/lib/fog/zerigo/requests/dns/list_hosts.rb +0 -73
  223. data/lib/fog/zerigo/requests/dns/list_zones.rb +0 -62
  224. data/lib/fog/zerigo/requests/dns/update_host.rb +0 -68
  225. data/lib/fog/zerigo/requests/dns/update_zone.rb +0 -86
  226. data/lib/fog/zerigo.rb +0 -1
  227. data/spec/fog/bin/bluebox_spec.rb +0 -55
  228. data/spec/fog/bin/ovirt_spec.rb +0 -10
  229. data/spec/fog/bin/zerigo_spec.rb +0 -10
  230. data/spec/fog/compute_spec.rb +0 -19
  231. data/spec/fog/dns_spec.rb +0 -19
  232. data/tests/bluebox/requests/blb/helper.rb +0 -64
  233. data/tests/bluebox/requests/blb/lb_tests.rb +0 -75
  234. data/tests/bluebox/requests/compute/block_tests.rb +0 -83
  235. data/tests/bluebox/requests/compute/helper.rb +0 -16
  236. data/tests/bluebox/requests/compute/location_tests.rb +0 -32
  237. data/tests/bluebox/requests/compute/product_tests.rb +0 -34
  238. data/tests/bluebox/requests/compute/template_tests.rb +0 -37
  239. data/tests/bluebox/requests/dns/dns_tests.rb +0 -258
  240. data/tests/ovirt/compute_tests.rb +0 -25
  241. data/tests/ovirt/models/compute/cluster_tests.rb +0 -31
  242. data/tests/ovirt/models/compute/clusters_tests.rb +0 -9
  243. data/tests/ovirt/models/compute/interface_tests.rb +0 -27
  244. data/tests/ovirt/models/compute/interfaces_tests.rb +0 -9
  245. data/tests/ovirt/models/compute/server_tests.rb +0 -51
  246. data/tests/ovirt/models/compute/servers_tests.rb +0 -14
  247. data/tests/ovirt/models/compute/template_tests.rb +0 -28
  248. data/tests/ovirt/models/compute/templates_tests.rb +0 -9
  249. data/tests/ovirt/requests/compute/create_vm_tests.rb +0 -26
  250. data/tests/ovirt/requests/compute/destroy_vm_tests.rb +0 -18
  251. data/tests/ovirt/requests/compute/list_datacenters_tests.rb +0 -13
  252. data/tests/ovirt/requests/compute/list_quotas_tests.rb +0 -12
  253. data/tests/ovirt/requests/compute/list_storage_domains_tests.rb +0 -13
  254. data/tests/ovirt/requests/compute/update_vm_tests.rb +0 -18
  255. data/tests/ovirt/requests/compute/update_volume_tests.rb +0 -20
  256. data/tests/zerigo/requests/dns/dns_tests.rb +0 -440
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 829e5ef73eff833c9d38e2133d28d8d47771812f
4
- data.tar.gz: 73097280f69981f019fcae7a9fb4084340af30a3
2
+ SHA256:
3
+ metadata.gz: 95b9f7c695f3decf7ef8baffd30aa09d3dc6737f5a9c2969990a559681ba7d8a
4
+ data.tar.gz: becfb632718737aa4b72a682731cc2ed4c42eecce48286374d6601e40712b67f
5
5
  SHA512:
6
- metadata.gz: 6ed7fe7cbd1f522376d2ab935abad73a90b489ea2edca3b418d6b7e7b9d214837404834c015e564f6118b21619096af4a9c25c1fc175a6d200264d4b7e9ad186
7
- data.tar.gz: 69a6552cc360e8f8bf4a05e473b31ff3e8230f481f6c857a4f6da662d9497c044a965999d83429dba2e4fcb4558bb9a06727a288493cdc0d7d383e0dd773a04b
6
+ metadata.gz: ee525a39207685911b2e63c02eb084484bd03d6a66819d52f5ce032a6917bb7e2ee61d6c0aba378cbc94322d2874d750c1e5348a8ffa778ce45a34cf7ff3d98d
7
+ data.tar.gz: 5e2aa711a0131cd58a9e4c7e18e47fd376ef4f1b7640c93f107c4ce31d6b238bf928080949b59d819f45da3778c7715944096ed132274f2b09fda146ea22219d
data/.github/stale.yml ADDED
@@ -0,0 +1,17 @@
1
+ # Number of days of inactivity before an issue becomes stale
2
+ daysUntilStale: 60
3
+ # Number of days of inactivity before a stale issue is closed
4
+ daysUntilClose: 7
5
+ # Issues with these labels will never be considered stale
6
+ exemptLabels:
7
+ - pinned
8
+ - security
9
+ # Label to use when marking an issue as stale
10
+ staleLabel: wontfix
11
+ # Comment to post when marking an issue as stale. Set to `false` to disable
12
+ markComment: >
13
+ This issue has been automatically marked stale due to inactivity.
14
+ It will be closed if no further activity occurs.
15
+ Thank you for your contributions.
16
+ # Comment to post when closing a stale issue. Set to `false` to disable
17
+ closeComment: false
data/.travis.yml CHANGED
@@ -10,6 +10,7 @@ rvm:
10
10
  - 2.2
11
11
  - 2.3
12
12
  - 2.4
13
+ - 2.5
13
14
  - jruby-head
14
15
 
15
16
  gemfile:
@@ -21,14 +22,6 @@ matrix:
21
22
  allow_failures:
22
23
  - rvm: jruby-head
23
24
  include:
24
- - rvm: 1.9.3
25
- gemfile: gemfiles/Gemfile-1.9
26
- - rvm: 1.9.3
27
- gemfile: gemfiles/Gemfile-edge-1.9
28
- - rvm: jruby-19mode
29
- gemfile: gemfiles/Gemfile-1.9
30
- - rvm: jruby-19mode
31
- gemfile: gemfiles/Gemfile-edge-1.9
32
25
  - rvm: 2.0
33
26
  gemfile: gemfiles/Gemfile-2.0
34
27
  - rvm: 2.0
data/CHANGELOG.md CHANGED
@@ -1,3 +1,81 @@
1
+ ## 2.1.0 11/12/2018
2
+ *Hash* adc3d36e1c47976a1ec2630bd4577e082593c884
3
+
4
+ Statistic | Value
5
+ ------------- | --------:
6
+ Collaborators | 2
7
+ Forks | 1545
8
+ Open Issues | 7
9
+ Watchers | 4168
10
+
11
+ **MVP!** Akira Matsuda
12
+
13
+ #### [cloudstack]
14
+ * Allow specifying the size of root volume. thanks Takashi Kokubun
15
+
16
+ #### [misc]
17
+ * GitHub is https by default. thanks Akira Matsuda
18
+ * Remove BlueBox Blocks. thanks Chris Lundquist
19
+ * Add SemVer stability badge to README. thanks Grey Baker
20
+ * Upgrade google dependency. thanks Nat Welch
21
+ * Fix whitespace in gemspec. thanks Nat Welch
22
+ * unpin mime-types. thanks Nat Welch
23
+ * Removing leftovers from extraction of fog-ovirt. thanks Ori Rabin
24
+ * Make CloudSigma snapshot tests pending. thanks Paul Thornthwaite
25
+ * Rescue `opennebula` loading issues. thanks Paul Thornthwaite
26
+ * "Fix" incorrect `Compute` provider credential test. thanks Paul Thornthwaite
27
+ * Tweak CloudSigma testing schema. thanks Paul Thornthwaite
28
+ * Fix Cloudstack `#connection` deprecation warning. thanks Paul Thornthwaite
29
+ * Remove tests for deprecated binary `#[]`. thanks Paul Thornthwaite
30
+ * Enable Ruby 2.5 in CI. thanks Pavel Valena
31
+ * lib/fog/linode: Add Tokyo2 to avail_datacenters. thanks Penny
32
+ * Fix compatibility with fog-brightbox 1.0.0+. thanks t Ondruch
33
+ * v2.0.0. thanks geemus
34
+ * add stale bot config. thanks geemus
35
+ * remove tests around deprecated usage. thanks geemus
36
+
37
+
38
+ ## 2.0.0 03/06/2018
39
+ *Hash* ff9fe270cd23627f748dd37e9bf2800640187f60
40
+
41
+ Statistic | Value
42
+ ------------- | --------:
43
+ Collaborators | 2
44
+ Forks | 1553
45
+ Open Issues | 41
46
+ Watchers | 4102
47
+
48
+ **MVP!** Tinguely Pierre
49
+
50
+ #### [misc]
51
+ * Drop Zerigo. thanks Paulo Ribeiro
52
+ * add id in xml only if present. Else an id is generated from xsd generation. thanks Tinguely Pierre
53
+ * make network optionnal for instantiate request. thanks Tinguely Pierre
54
+ * implement the put api to configure the network section in vapp. thanks Tinguely Pierre
55
+ * Drop Ruby<2 support. thanks Tomer Brisker
56
+ * bump rubocop dep. thanks geemus
57
+
58
+
59
+ ## 1.42.0 09/29/2017
60
+ *Hash* 41a38068d34237b9639ac045f99a4b48160834a9
61
+
62
+ Statistic | Value
63
+ ------------- | --------:
64
+ Collaborators | 2
65
+ Forks | 1556
66
+ Open Issues | 45
67
+ Watchers | 4060
68
+
69
+ **MVP!** swamp09
70
+
71
+ #### [misc]
72
+ * Upgrade JSON to ~> 2.0. thanks Denis Defreyne
73
+ * Removing ovirt provider. thanks Ori Rabin
74
+ * fix changelog task. thanks geemus
75
+ * Suppress `warning: ambiguous first argument; put parentheses or a space even after `/' operator`. thanks swamp09
76
+ * Suppress `warning: mismatched indentations at 'end' with 'class'`. thanks swamp09
77
+
78
+
1
79
  ## 1.41.0 08/01/2017
2
80
  *Hash* e5d3672e804149d38f91ccdfdaf7cfd7be52b75b
3
81
 
data/README.md CHANGED
@@ -7,9 +7,9 @@ fog is the Ruby cloud services library, top to bottom:
7
7
  * Mocks make testing and integrating a breeze.
8
8
 
9
9
  [![Build Status](https://secure.travis-ci.org/fog/fog.svg?branch=master)](http://travis-ci.org/fog/fog)
10
- [![Dependency Status](https://gemnasium.com/fog/fog.svg)](https://gemnasium.com/fog/fog)
11
10
  [![Code Climate](https://codeclimate.com/github/fog/fog/badges/gpa.svg)](https://codeclimate.com/github/fog/fog)
12
11
  [![Gem Version](https://badge.fury.io/rb/fog.svg)](http://badge.fury.io/rb/fog)
12
+ [![SemVer](https://api.dependabot.com/badges/compatibility_score?dependency-name=fog&package-manager=bundler&version-scheme=semver)](https://dependabot.com/compatibility-score.html?dependency-name=fog&package-manager=bundler&version-scheme=semver)
13
13
 
14
14
  ## Dependency Notice
15
15
 
@@ -17,12 +17,11 @@ Currently all fog providers are getting separated into metagems to lower the
17
17
  load time and dependency count.
18
18
 
19
19
  If there's a metagem available for your cloud provider, e.g. `fog-aws`,
20
- you should be using it instead of requiring the full fog collection to avoid
20
+ you should be using it instead of requiring the full fog collection to avoid
21
21
  unnecessary dependencies.
22
22
 
23
- 'fog' should be required explicitly only if:
24
- - The provider you use doesn't yet have a metagem available.
25
- - You require Ruby 1.9.3 support.
23
+ 'fog' should be required explicitly only if the provider you use doesn't yet
24
+ have a metagem available.
26
25
 
27
26
  ## Getting Started
28
27
 
data/Rakefile CHANGED
@@ -73,9 +73,6 @@ namespace :test do
73
73
  task :openvz do
74
74
  sh("export FOG_MOCK=#{mock} && bundle exec shindont tests/openvz")
75
75
  end
76
- task :ovirt do
77
- sh("export FOG_MOCK=#{mock} && bundle exec shindont tests/ovirt")
78
- end
79
76
  task :cloudstack do
80
77
  sh("export FOG_MOCK=#{mock} && bundle exec shindont tests/cloudstack")
81
78
  end
data/fog.gemspec CHANGED
@@ -11,8 +11,8 @@ Gem::Specification.new do |s|
11
11
  ## If your rubyforge_project name is different, then edit it and comment out
12
12
  ## the sub! line in the Rakefile
13
13
  s.name = "fog"
14
- s.version = "1.41.0"
15
- s.date = "2017-08-01"
14
+ s.version = "2.1.0"
15
+ s.date = "2018-11-11"
16
16
  s.rubyforge_project = "fog"
17
17
 
18
18
  ## Make sure your summary is short. The description may be as long
@@ -25,7 +25,7 @@ Gem::Specification.new do |s|
25
25
  ## a custom homepage, consider using your GitHub URL or the like.
26
26
  s.authors = ["geemus (Wesley Beary)"]
27
27
  s.email = "geemus@gmail.com"
28
- s.homepage = "http://github.com/fog/fog"
28
+ s.homepage = "https://github.com/fog/fog"
29
29
  s.license = "MIT"
30
30
 
31
31
  ## This sections is only necessary if you have C extensions.
@@ -44,12 +44,13 @@ Gem::Specification.new do |s|
44
44
  s.rdoc_options = ["--charset=UTF-8"]
45
45
  s.extra_rdoc_files = %w[README.md]
46
46
 
47
+ s.required_ruby_version = '>= 2.0.0'
48
+
47
49
  s.add_dependency("fog-core", "~> 1.45")
48
50
  s.add_dependency("fog-json")
49
51
  s.add_dependency("fog-xml", "~> 0.1.1")
50
-
51
- # JSON locked for Ruby 1.9, remove once deprecated
52
- s.add_dependency("json", ">= 1.8", "< 2.0")
52
+
53
+ s.add_dependency("json", "~> 2.0")
53
54
  s.add_dependency("ipaddress", "~> 0.5")
54
55
 
55
56
  # Modular providers (please keep sorted)
@@ -62,11 +63,12 @@ Gem::Specification.new do |s|
62
63
  s.add_dependency("fog-dnsimple", "~> 1.0")
63
64
  s.add_dependency("fog-dynect", "~> 0.0.2")
64
65
  s.add_dependency("fog-ecloud", "~> 0.1")
65
- s.add_dependency("fog-google", "<= 0.1.0")
66
+ s.add_dependency("fog-google", "~> 1.0")
66
67
  s.add_dependency("fog-internet-archive")
67
68
  s.add_dependency("fog-joyent")
68
69
  s.add_dependency("fog-local")
69
70
  s.add_dependency("fog-openstack")
71
+ s.add_dependency("fog-ovirt")
70
72
  s.add_dependency("fog-powerdns", ">= 0.1.1")
71
73
  s.add_dependency("fog-profitbricks")
72
74
  s.add_dependency("fog-rackspace")
@@ -84,15 +86,14 @@ Gem::Specification.new do |s|
84
86
 
85
87
  s.add_development_dependency("docker-api", ">= 1.13.6")
86
88
  s.add_development_dependency("fission")
87
- s.add_development_dependency("mime-types", "<=2.99.1")
89
+ s.add_development_dependency("mime-types")
88
90
  s.add_development_dependency("minitest")
89
91
  s.add_development_dependency("minitest-stub-const")
90
92
  s.add_development_dependency("opennebula")
91
93
  s.add_development_dependency("pry")
92
94
  s.add_development_dependency("rake")
93
- s.add_development_dependency("rbovirt", "0.1.3")
94
95
  s.add_development_dependency("rbvmomi")
95
- s.add_development_dependency("rubocop", "0.41.2")
96
+ s.add_development_dependency("rubocop", "0.52.1")
96
97
  s.add_development_dependency("shindo", "~> 0.3.4")
97
98
  s.add_development_dependency("simplecov")
98
99
  s.add_development_dependency("thor")
@@ -114,9 +115,8 @@ If there's a metagem available for your cloud provider, e.g. `fog-aws`,
114
115
  you should be using it instead of requiring the full fog collection to avoid
115
116
  unnecessary dependencies.
116
117
 
117
- 'fog' should be required explicitly only if:
118
- - The provider you use doesn't yet have a metagem available.
119
- - You require Ruby 1.9.3 support.
118
+ 'fog' should be required explicitly only if the provider you use doesn't yet
119
+ have a metagem available.
120
120
  ------------------------------
121
121
  POSTINST
122
122
 
@@ -3,9 +3,9 @@ class Brightbox < Fog::Bin
3
3
  def class_for(key)
4
4
  case key
5
5
  when :compute
6
- Fog::Compute::Brightbox
6
+ Fog::Brightbox::Compute
7
7
  when :storage
8
- Fog::Storage::Brightbox
8
+ Fog::Brightbox::Storage
9
9
  else
10
10
  raise ArgumentError, "Unsupported #{self} service: #{key}"
11
11
  end
data/lib/fog/bin.rb CHANGED
@@ -53,7 +53,6 @@ end
53
53
 
54
54
  require 'fog/bin/atmos'
55
55
  require 'fog/bin/aws'
56
- require 'fog/bin/bluebox'
57
56
  require 'fog/bin/brightbox'
58
57
  require 'fog/bin/cloudstack'
59
58
  require 'fog/bin/clodo'
@@ -91,7 +90,6 @@ require 'fog/bin/vmfusion'
91
90
  require 'fog/bin/vsphere'
92
91
  require 'fog/bin/voxel'
93
92
  require 'fog/bin/xenserver'
94
- require 'fog/bin/zerigo'
95
93
  require 'fog/bin/cloudsigma'
96
94
  require 'fog/bin/openvz'
97
95
  require 'fog/bin/opennebula'
@@ -40,6 +40,7 @@ module Fog
40
40
  attribute :nics, :type => :array, :aliases => 'nic'
41
41
  attribute :job_id, :aliases => 'jobid' # only on create
42
42
  attribute :size, :type => :integer
43
+ attribute :root_disk_size, :type => :integer
43
44
 
44
45
  attr_accessor :network_ids, :disk_offering_id, :ip_address, :ip_to_network_list
45
46
  attr_writer :security_group_ids
@@ -132,6 +133,7 @@ module Fog
132
133
  'size' => size,
133
134
  }
134
135
 
136
+ options.merge!('rootdisksize' => root_disk_size) if root_disk_size
135
137
  options.merge!('networkids' => network_ids) if network_ids
136
138
  options.merge!('securitygroupids' => security_group_ids) unless security_group_ids.empty?
137
139
 
@@ -32,6 +32,7 @@ module Fog
32
32
  { "LOCATION" => "Tokyo, JP", "DATACENTERID" => 8, "ABBR" => "tokyo" },
33
33
  { "LOCATION" => "Singapore, SGP", "DATACENTERID" => 9, "ABBR" => "singapore" },
34
34
  { "LOCATION" => "Frankfurt, DE", "DATACENTERID" => 10, "ABBR" => "frankfurt" },
35
+ { "LOCATION" => "Tokyo 2, JP", "DATACENTERID" => 11, "ABBR" => "tokyo2" },
35
36
  ],
36
37
  "ACTION" => "avail.datacenters"
37
38
  }
@@ -98,7 +98,12 @@ module Fog
98
98
  @opennebula_endpoint = options[:opennebula_endpoint]
99
99
  @opennebula_username = options[:opennebula_username]
100
100
  @opennebula_password = options[:opennebula_password]
101
- require 'opennebula'
101
+
102
+ begin
103
+ require "opennebula"
104
+ rescue LoadError
105
+ raise Fog::Errors::LoadError, "To use OpenNebula provider, you must load 'opennebula' gem"
106
+ end
102
107
  end
103
108
 
104
109
  def client
@@ -20,7 +20,11 @@
20
20
 
21
21
  require 'rubygems'
22
22
  require 'json'
23
- require 'opennebula'
23
+ begin
24
+ require "opennebula"
25
+ rescue LoadError
26
+ raise Fog::Errors::LoadError, "To use OpenNebula provider, you must load 'opennebula' gem"
27
+ end
24
28
 
25
29
 
26
30
  #if !ONE_LOCATION
@@ -267,6 +267,7 @@ module Fog
267
267
  request :put_vapp_template_metadata_item_metadata
268
268
  request :put_vm
269
269
  request :put_vm_capabilities
270
+ request :put_config_network_section_vapp
270
271
 
271
272
  class Model < Fog::Model
272
273
  def initialize(attrs={})
@@ -701,9 +702,9 @@ module Fog
701
702
  :name => org_name,
702
703
  :uuid => uuid
703
704
  },
704
-
705
+
705
706
  :tags => {},
706
-
707
+
707
708
  :tasks => {},
708
709
 
709
710
  :vapps => {
@@ -165,7 +165,7 @@ module Fog
165
165
  xml.NatRule {
166
166
  xml.RuleType rule[:RuleType]
167
167
  xml.IsEnabled rule[:IsEnabled]
168
- xml.Id rule[:Id]
168
+ xml.Id rule[:Id] if rule[:Id]
169
169
  gateway_nat_rule = rule[:GatewayNatRule]
170
170
  xml.GatewayNatRule {
171
171
  xml.Interface(:name => gateway_nat_rule[:Interface][:name], :href => gateway_nat_rule[:Interface][:href])
@@ -211,7 +211,7 @@ module Fog
211
211
  xml.LogDefaultAction firewall_config[:LogDefaultAction] if firewall_config.key?(:LogDefaultAction)
212
212
  firewall_config[:FirewallRule].each do |rule|
213
213
  xml.FirewallRule {
214
- xml.Id rule[:Id]
214
+ xml.Id rule[:Id] if rule[:Id]
215
215
  xml.IsEnabled rule[:IsEnabled] if rule.key?(:IsEnabled)
216
216
  xml.MatchOnTranslate rule[:MatchOnTranslate] if rule.key?(:MatchOnTranslate)
217
217
  xml.Description rule[:Description] if rule.key?(:Description)
@@ -0,0 +1,68 @@
1
+ module Fog
2
+ module Generators
3
+ module Compute
4
+ module VcloudDirector
5
+ # @see http://pubs.vmware.com/vcd-51/topic/com.vmware.vcloud.api.reference.doc_51/doc/types/NetworkConfigSectionType.html
6
+ class NetworkConfigSection
7
+ attr_reader :options
8
+
9
+ def initialize(options={})
10
+ @options = options
11
+ end
12
+
13
+ def generate_xml
14
+ body = Nokogiri::XML::Builder.new do |xml|
15
+ attrs = {
16
+ :xmlns => 'http://www.vmware.com/vcloud/v1.5',
17
+ 'xmlns:ovf' => 'http://schemas.dmtf.org/ovf/envelope/1'
18
+ }
19
+ xml.NetworkConfigSection(attrs){
20
+ xml['ovf'].Info
21
+ options[:NetworkConfig].each do |network_config|
22
+ network_name = {networkName: network_config[:networkName]} if network_config[:networkName]
23
+ xml.NetworkConfig(network_name){
24
+ xml.Description network_config[:Description]
25
+ if configuration = network_config[:Configuration]
26
+ xml.Configuration {
27
+ if ipScopes = configuration[:IpScopes]
28
+ xml.IpScopes {
29
+ if ipScope = ipScopes[:IpScope]
30
+ xml.IpScope {
31
+ xml.IsInherited ipScope[:IsInherited]
32
+ xml.Gateway ipScope[:Gateway]
33
+ xml.Netmask ipScope[:Netmask]
34
+ xml.Dns1 ipScope[:Dns1] if ipScope[:Dns1]
35
+ xml.Dns2 ipScope[:Dns2] if ipScope[:Dns2]
36
+ xml.IsEnabled ipScope[:IsEnabled] if ipScope[:IsEnabled]
37
+ if ipRanges = ipScope[:IpRanges]
38
+ xml.IpRanges {
39
+ if ipRange = ipRanges[:IpRange]
40
+ xml.IpRange {
41
+ xml.StartAddress ipRange[:StartAddress]
42
+ xml.EndAddress ipRange[:EndAddress]
43
+ }
44
+ end
45
+ }
46
+ end
47
+ }
48
+ end
49
+ }
50
+ end
51
+ if parent_network = configuration[:ParentNetwork]
52
+ xml.ParentNetwork({href: parent_network[:href], id: parent_network[:id], name: parent_network[:name]})
53
+ end
54
+ xml.FenceMode configuration[:FenceMode] if configuration[:FenceMode]
55
+ xml.RetainNetInfoAcrossDeployments configuration[:RetainNetInfoAcrossDeployments] if configuration[:RetainNetInfoAcrossDeployments]
56
+ }
57
+ end #Configuraton
58
+ xml.IsDeployed configuration[:IsDeployed] if configuration[:IsDeployed]
59
+ }
60
+ end
61
+ }
62
+ end.to_xml
63
+ end
64
+ end
65
+ end
66
+ end
67
+ end
68
+ end
@@ -116,10 +116,6 @@ module Fog
116
116
  child_vms = data[:vms].select do |vm_id, vm_details|
117
117
  vm_details[:parent_vapp] == id
118
118
  end
119
- if RUBY_VERSION.to_f < 1.9
120
- # 1.8 Hash.select returns an Array of [k,v] pairs.
121
- child_vms = Hash[child_vms]
122
- end
123
119
  child_vms.keys.collect do |vm_id|
124
120
  get_mock_vm_body(vm_id)
125
121
  end
@@ -44,18 +44,18 @@ module Fog
44
44
  options
45
45
  end
46
46
 
47
- def generate_instantiate_vapp_template_request(options ={})
48
-
47
+ def generate_instantiate_vapp_template_request(options ={})
48
+
49
49
  #overriding some params so they work with new standardised generator
50
- options[:InstantiationParams] =
50
+ options[:InstantiationParams] =
51
51
  {
52
- :NetworkConfig =>
52
+ :NetworkConfig =>
53
53
  [{
54
54
  :networkName => options[:network_name],
55
55
  :networkHref => options[:network_uri],
56
56
  :fenceMode => 'bridged'
57
57
  }]
58
- } unless options[:InstantiationParams]
58
+ } unless options[:InstantiationParams] || !options[:network_uri]
59
59
  options[:name] = options.delete(:vapp_name) if options[:vapp_name]
60
60
  options[:Description] = options.delete(:description) unless options[:Description]
61
61
  if options[:vms_config] then
@@ -63,10 +63,10 @@ module Fog
63
63
  options[:source_vms].each_with_index {|vm, i|options[:source_vms][i][:StorageProfileHref] = options[:source_vms][i].delete(:storage_profile_href) }
64
64
  end
65
65
  options[:Source] = options.delete(:template_uri) if options[:template_uri]
66
-
67
-
68
66
 
69
-
67
+
68
+
69
+
70
70
  Fog::Generators::Compute::VcloudDirector::InstantiateVappTemplateParams.new(options).generate_xml
71
71
 
72
72
 
@@ -98,10 +98,10 @@ module Fog
98
98
  end_point
99
99
  end
100
100
  end
101
-
101
+
102
102
  class Mock
103
103
  # Assume the template is a single VM with one network interface and one disk.
104
- def instantiate_vapp_template(vapp_name, template_id, options={})
104
+ def instantiate_vapp_template(vapp_name, template_id, options={})
105
105
  unless data[:catalog_items].values.find {|i| i[:template_id] == template_id}
106
106
  raise Fog::Compute::VcloudDirector::Forbidden.new(
107
107
  'No such template.'
@@ -112,7 +112,7 @@ module Fog
112
112
  'No such VDC.'
113
113
  )
114
114
  end
115
-
115
+
116
116
  vapp_uuid = uuid
117
117
  vapp_id = "vapp-#{vapp_uuid}"
118
118
  owner = {
@@ -65,7 +65,7 @@ module Fog
65
65
  :body => body
66
66
  )
67
67
  end
68
- end
68
+ end
69
69
  end
70
70
  end
71
71
  end
@@ -0,0 +1,26 @@
1
+ module Fog
2
+ module Compute
3
+ class VcloudDirector
4
+ class Real
5
+ require 'fog/vcloud_director/generators/compute/network_config_section'
6
+ # Update the network config section of a vApp.
7
+ #
8
+ #
9
+ # @see http://pubs.vmware.com/vcd-51/topic/com.vmware.vcloud.api.reference.doc_51/doc/operations/PUT-NetworkConfigSection-vApp.html
10
+ # @since vCloud API version 0.9
11
+ def put_config_network_section_vapp(id, options={})
12
+ body = Fog::Generators::Compute::VcloudDirector::NetworkConfigSection.new(options).generate_xml
13
+
14
+ request(
15
+ :body => body,
16
+ :expects => 202,
17
+ :headers => {'Content-Type' => 'application/vnd.vmware.vcloud.networkConfigSection+xml'},
18
+ :method => 'PUT',
19
+ :parser => Fog::ToHashDocument.new,
20
+ :path => "vApp/#{id}/networkConfigSection"
21
+ )
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
data/lib/fog/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Fog
2
- VERSION = '1.41.0'
2
+ VERSION = '2.1.0'
3
3
  end
data/lib/fog.rb CHANGED
@@ -21,7 +21,6 @@ require 'fog/core/deprecated_connection_accessors'
21
21
  # they all depend on fog/core for shared functionality.
22
22
  require 'fog/atmos'
23
23
  require 'fog/aws'
24
- require 'fog/bluebox'
25
24
  require 'fog/brightbox'
26
25
  require 'fog/cloudstack'
27
26
  require 'fog/clodo'
@@ -59,7 +58,6 @@ require 'fog/vmfusion'
59
58
  require 'fog/vsphere'
60
59
  require 'fog/voxel'
61
60
  require 'fog/xenserver'
62
- require 'fog/zerigo'
63
61
  require 'fog/cloudsigma'
64
62
  require 'fog/openvz'
65
63
  require 'fog/opennebula'
@@ -103,6 +103,7 @@ Watchers | #{watchers}
103
103
  def former_mvp?(committer)
104
104
  [
105
105
  'Aaron Suggs',
106
+ 'Akira Matsuda',
106
107
  'ller', #"Achim Ledermüller" UTF-8 fail?
107
108
  'Ash Wilson',
108
109
  'Benson Kalahar',
@@ -148,7 +149,9 @@ Watchers | #{watchers}
148
149
  'Rodrigo Estebanez',
149
150
  'Rupak Ganguly',
150
151
  'Stepan G. Fedorov',
152
+ 'swamp09',
151
153
  'TerryHowe',
154
+ 'Tinguely Pierre',
152
155
  'Wesley Beary'
153
156
  ].include?(committer)
154
157
  end
@@ -177,7 +180,7 @@ Watchers | #{watchers}
177
180
  end
178
181
 
179
182
  def committer_match
180
- current_line.match /([-\w\s]+)\s+\(\d+\)/
183
+ @current_line.match (/([-\w\s]+)\s+\(\d+\)/)
181
184
  end
182
185
 
183
186
  def last_release_sha
@@ -47,7 +47,7 @@ module Fog
47
47
  end
48
48
 
49
49
  def release_match
50
- @current_line.match /## (\d+\.\d+\.\d+) \d+\/\d+\d+/
50
+ @current_line.match (/## (\d+\.\d+\.\d+) \d+\/\d+\d+/)
51
51
  end
52
52
 
53
53
  def github
@@ -20,14 +20,4 @@ describe Atmos do
20
20
  end
21
21
  end
22
22
  end
23
-
24
- describe "#[]" do
25
- describe "when requesting storage service" do
26
- it "returns instance" do
27
- Fog::Storage::Atmos.stub(:new, "instance") do
28
- assert_equal "instance", Atmos[:storage]
29
- end
30
- end
31
- end
32
- end
33
23
  end
@@ -77,22 +77,4 @@ describe AWS do
77
77
  end
78
78
  end
79
79
  end
80
-
81
- describe "#[]" do
82
- describe "when service is recognised" do
83
- it "returns correct instance" do
84
- KEY_CLASS_MAPPING.each do |key, klass|
85
- klass.stub(:new, "#{klass} instance") do
86
- assert_equal "#{klass} instance", AWS[key]
87
- end
88
- end
89
- end
90
- end
91
-
92
- describe "when service is not recognised" do
93
- it "raises ArgumentError" do
94
- assert_raises(ArgumentError) { AWS[:bad_service] }
95
- end
96
- end
97
- end
98
80
  end