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
@@ -1,48 +0,0 @@
1
- module Fog
2
- module DNS
3
- class Bluebox
4
- class Real
5
- require 'fog/bluebox/parsers/dns/create_zone'
6
-
7
- # Create a new DNS zone
8
- # ==== Parameters
9
- # * 'name'<~String> - The name of the zone
10
- # * 'ttl'<~Integer> - TimeToLive (ttl) for the domain, in seconds
11
- # * 'retry'<~Integer> - Retry interval for the domain, in seconds
12
- # * 'refresh'<~Integer> - Refresh interval for the zone
13
- # * 'minimum'<~Integer> - Minimum refresh interval for the zone
14
- # ==== Returns
15
- # * response<~Excon::Response>:
16
- # * body<~Hash>:
17
- # * 'name'<~String> - The name of the zone
18
- # * 'serial'<~Integer> - Serial number of the zone
19
- # * 'ttl'<~Integer> - TimeToLive (ttl) for the domain, in seconds
20
- # * 'retry'<~Integer> - Retry interval for the domain, in seconds
21
- # * 'record-count'<~Integer> - Number of records in the zone
22
- # * 'id'<~String> - Id for the zone
23
- # * 'refresh'<~Integer> - Refresh interval for the zone
24
- # * 'minimum'<~Integer> - Minimum refresh interval for the zone
25
- def create_zone(options)
26
- body = %Q{<?xml version="1.0" encoding="UTF-8"?><domain><name>#{options[:name]}</name><ttl>#{options[:ttl]}</ttl>}
27
- body += %Q{<retry>#{options[:retry]}</retry>} if options[:retry]
28
- body += %Q{<refresh>#{options[:retry]}</refresh>} if options[:refresh]
29
- body += %Q{<minimum>#{options[:minimum]}</minimum>} if options[:minimum]
30
- body += %Q{</domain>}
31
- request(
32
- :body => body,
33
- :expects => 202,
34
- :method => 'POST',
35
- :parser => Fog::Parsers::DNS::Bluebox::CreateZone.new,
36
- :path => "/api/domains.xml"
37
- )
38
- end
39
- end
40
-
41
- class Mock
42
- def create_zone(options)
43
- Fog::Mock.not_implemented
44
- end
45
- end
46
- end
47
- end
48
- end
@@ -1,27 +0,0 @@
1
- module Fog
2
- module DNS
3
- class Bluebox
4
- class Real
5
- # Delete a record from the specified DNS zone
6
- # ==== Parameters
7
- # * record_id<~Integer> - Id of DNS record to delete
8
- #
9
- # ==== Returns
10
- # * response<~Excon::Response>: - HTTP status code will be result
11
- def delete_record(zone_id, record_id)
12
- request(
13
- :expects => 200,
14
- :method => 'DELETE',
15
- :path => "/api/domains/#{zone_id}/records/#{record_id}.xml"
16
- )
17
- end
18
- end
19
-
20
- class Mock
21
- def delete_record(zone_id, record_id)
22
- Fog::Mock.not_implemented
23
- end
24
- end
25
- end
26
- end
27
- end
@@ -1,27 +0,0 @@
1
- module Fog
2
- module DNS
3
- class Bluebox
4
- class Real
5
- # Delete a zone from DNS
6
- # ==== Parameters
7
- # * zone_id<~Integer> - Id of zone to delete
8
- #
9
- # ==== Returns
10
- # * response<~Excon::Response>: - HTTP status code will be result
11
- def delete_zone(zone_id)
12
- request(
13
- :expects => 200,
14
- :method => 'DELETE',
15
- :path => "/api/domains/#{zone_id}.xml"
16
- )
17
- end
18
- end
19
-
20
- class Mock
21
- def delete_zone(zone_id)
22
- Fog::Mock.not_implemented
23
- end
24
- end
25
- end
26
- end
27
- end
@@ -1,36 +0,0 @@
1
- module Fog
2
- module DNS
3
- class Bluebox
4
- class Real
5
- require 'fog/bluebox/parsers/dns/get_record'
6
-
7
- # Get an individual DNS record from the specified zone
8
- #
9
- # ==== Returns
10
- # * response<~Excon::Response>:
11
- # * hash<~Hash>:
12
- # * 'id'<~String> - The id of this record
13
- # * 'type'<~String> - type of DNS record to create (A, CNAME, etc)
14
- # * 'domain-id'<~Integer> - ID of the zone
15
- # * 'name'<~String> - empty?
16
- # * 'domain'<~String> - The domain name
17
- # * 'type'<~String> - The type of DNS record (e.g. A, MX, NS, etc.)
18
- # * 'content'<~String> - data for the DNS record (ie for an A record, the IP address)
19
- def get_record(zone_id, record_id)
20
- request(
21
- :expects => 200,
22
- :method => 'GET',
23
- :parser => Fog::Parsers::DNS::Bluebox::GetRecord.new,
24
- :path => "/api/domains/#{zone_id}/records/#{record_id}.xml"
25
- )
26
- end
27
- end
28
-
29
- class Mock
30
- def get_record(record_id)
31
- Fog::Mock.not_implemented
32
- end
33
- end
34
- end
35
- end
36
- end
@@ -1,37 +0,0 @@
1
- module Fog
2
- module DNS
3
- class Bluebox
4
- class Real
5
- require 'fog/bluebox/parsers/dns/get_records'
6
-
7
- # Get all the DNS records across all the DNS zones for this account
8
- #
9
- # ==== Returns
10
- # * response<~Excon::Response>:
11
- # * body<~Array>:
12
- # * 'addresses'<~Array> - Ip addresses for the slice
13
- # * 'backup-id'<~Integer> - Id of backup slice was booted from
14
- # * 'flavor_id'<~Integer> - Id of flavor slice was booted from
15
- # * 'id'<~Integer> - Id of the slice
16
- # * 'image-id'<~Integer> - Id of image slice was booted from
17
- # * 'name'<~String> - Name of the slice
18
- # * 'progress'<~Integer> - Progress of current action, in percentage
19
- # * 'status'<~String> - Current status of the slice
20
- def get_records(zone_id)
21
- request(
22
- :expects => 200,
23
- :method => 'GET',
24
- :parser => Fog::Parsers::DNS::Bluebox::GetRecords.new,
25
- :path => "/api/domains/#{zone_id}/records.xml"
26
- )
27
- end
28
- end
29
-
30
- class Mock
31
- def get_records
32
- Fog::Mock.not_implemented
33
- end
34
- end
35
- end
36
- end
37
- end
@@ -1,40 +0,0 @@
1
- module Fog
2
- module DNS
3
- class Bluebox
4
- class Real
5
- require 'fog/bluebox/parsers/dns/get_zone'
6
-
7
- # Get details of a DNS zone
8
- #
9
- # ==== Parameters
10
- # * zone_id<~Integer> - Id of zone to lookup
11
- #
12
- # ==== Returns
13
- # * response<~Excon::Response>:
14
- # * hash<~Hash>:
15
- # * 'name'<~String> - The name of the zone
16
- # * 'serial'<~Integer> - Serial number of the zone
17
- # * 'ttl'<~Integer> - TimeToLive (ttl) for the domain, in seconds
18
- # * 'retry'<~Integer> - Retry interval for the domain, in seconds
19
- # * 'record-count'<~Integer> - Number of records in the zone
20
- # * 'id'<~String> - Id for the zone
21
- # * 'refresh'<~Integer> - Refresh interval for the zone
22
- # * 'minimum'<~Integer> - Minimum refresh interval for the zone
23
- def get_zone(zone_id)
24
- request(
25
- :expects => 200,
26
- :method => 'GET',
27
- :parser => Fog::Parsers::DNS::Bluebox::GetZone.new,
28
- :path => "/api/domains/#{zone_id}.xml"
29
- )
30
- end
31
- end
32
-
33
- class Mock
34
- def get_zone(zone_id)
35
- Fog::Mock.not_implemented
36
- end
37
- end
38
- end
39
- end
40
- end
@@ -1,39 +0,0 @@
1
- module Fog
2
- module DNS
3
- class Bluebox
4
- class Real
5
- require 'fog/bluebox/parsers/dns/get_zones'
6
-
7
- # Get list of all DNS zones hosted on Bluebox (for this account)
8
- #
9
- # ==== Returns
10
- # * response<~Excon::Response>:
11
- # * 'records'<~Array>
12
- # * 'record'
13
- # * 'name'<~String> - name of the zone
14
- # * 'serial'<~Integer> - Serial # for the zone
15
- # * 'ttl'<~Integer> - TTL for the zone record in seconds
16
- # * 'retry'<~Integer> - Retry interval for the zone record in seconds
17
- # * 'expires'<~Integer> - Expiration interval for the zone record in seconds
18
- # * 'record-count'<~Integer> - # of records in this zone
19
- # * 'id'<~String> - Id for the zone record
20
- # * 'refresh'<~Integer> - default refresh interval for this zone, in seconds
21
- # * 'minimum'<~Integer> - minimum value for intervals for this zone, in seconds
22
- def get_zones
23
- request(
24
- :expects => 200,
25
- :method => 'GET',
26
- :parser => Fog::Parsers::DNS::Bluebox::GetZones.new,
27
- :path => '/api/domains.xml'
28
- )
29
- end
30
- end
31
-
32
- class Mock
33
- def get_zones
34
- Fog::Mock.not_implemented
35
- end
36
- end
37
- end
38
- end
39
- end
@@ -1,30 +0,0 @@
1
- module Fog
2
- module Bluebox
3
- class DNS
4
- class Real
5
- # Updates an existing record in a DNS zone
6
- # ==== Parameters
7
- # * type<~String> - type of DNS record (A, CNAME, etc)
8
- # * name<~String> - host name for this DNS record
9
- # * content<~String> - data for the DNS record (ie for an A record, the IP address)
10
- def update_record(zone_id, record_id, options)
11
- body = %Q{<?xml version="1.0" encoding="UTF-8"?><record>}
12
- options.each {|k,v| body += "<#{k}>#{v}</#{k}>"}
13
- body += "</record>"
14
- request(
15
- :body => body,
16
- :expects => 202,
17
- :method => 'PUT',
18
- :path => "/api/domains/#{zone_id}/records/#{record_id}.xml"
19
- )
20
- end
21
- end
22
-
23
- class Mock
24
- def create_record(zone_id, type, domain, content)
25
- Fog::Mock.not_implemented
26
- end
27
- end
28
- end
29
- end
30
- end
@@ -1,26 +0,0 @@
1
- module Fog
2
- module DNS
3
- class Bluebox
4
- class Real
5
- # Updates an existing DNS zone
6
- def update_zone(zone_id, options)
7
- body = %Q{<?xml version="1.0" encoding="UTF-8"?><domain>}
8
- options.each {|k,v| body += "<#{k}>#{v}</#{k}>"}
9
- body += "</domain>"
10
- request(
11
- :body => body,
12
- :expects => 202,
13
- :method => 'PUT',
14
- :path => "/api/domains/#{zone_id}.xml"
15
- )
16
- end
17
- end
18
-
19
- class Mock
20
- def create_record(zone_id, type, domain, content)
21
- Fog::Mock.not_implemented
22
- end
23
- end
24
- end
25
- end
26
- end
data/lib/fog/bluebox.rb DELETED
@@ -1,3 +0,0 @@
1
- require 'fog/bluebox/blb'
2
- require 'fog/bluebox/compute'
3
- require 'fog/bluebox/dns'
@@ -1,155 +0,0 @@
1
- require 'fog/ovirt/core'
2
-
3
- module Fog
4
- module Compute
5
- class Ovirt < Fog::Service
6
- requires :ovirt_username, :ovirt_password
7
- recognizes :ovirt_url, :ovirt_server, :ovirt_port, :ovirt_api_path, :ovirt_datacenter,
8
- :ovirt_filtered_api,
9
- :ovirt_ca_cert_store, :ovirt_ca_cert_file, :ovirt_ca_no_verify
10
-
11
- model_path 'fog/ovirt/models/compute'
12
- model :server
13
- collection :servers
14
- model :template
15
- collection :templates
16
- model :instance_type
17
- collection :instance_types
18
- model :cluster
19
- collection :clusters
20
- model :interface
21
- collection :interfaces
22
- model :volume
23
- collection :volumes
24
- model :quota
25
- collection :quotas
26
- model :affinity_group
27
- collection :affinity_groups
28
-
29
- request_path 'fog/ovirt/requests/compute'
30
-
31
- request :vm_action
32
- request :vm_start_with_cloudinit
33
- request :destroy_vm
34
- request :create_vm
35
- request :update_vm
36
- request :datacenters
37
- request :storage_domains
38
- request :list_virtual_machines
39
- request :get_virtual_machine
40
- request :list_templates
41
- request :get_template
42
- request :list_instance_types
43
- request :get_instance_type
44
- request :list_clusters
45
- request :get_cluster
46
- request :add_interface
47
- request :destroy_interface
48
- request :update_interface
49
- request :list_vm_interfaces
50
- request :list_template_interfaces
51
- request :list_networks
52
- request :vm_ticket
53
- request :list_vm_volumes
54
- request :list_template_volumes
55
- request :list_volumes
56
- request :add_volume
57
- request :destroy_volume
58
- request :update_volume
59
- request :attach_volume
60
- request :detach_volume
61
- request :activate_volume
62
- request :deactivate_volume
63
- request :get_api_version
64
- request :list_quotas
65
- request :get_quota
66
- request :list_affinity_groups
67
- request :get_affinity_group
68
- request :list_affinity_group_vms
69
- request :create_affinity_group
70
- request :destroy_affinity_group
71
- request :add_to_affinity_group
72
- request :remove_from_affinity_group
73
-
74
- module Shared
75
- # converts an OVIRT object into an hash for fog to consume.
76
- def ovirt_attrs obj
77
- opts = {:raw => obj}
78
- obj.instance_variables.each do |v|
79
- key = v.to_s.gsub("@","").to_sym
80
- value = obj.instance_variable_get(v)
81
- #ignore nil values
82
- next if value.nil?
83
-
84
- opts[key] = case value
85
- when OVIRT::Link
86
- value.id
87
- when OVIRT::TemplateVersion
88
- value
89
- when Array
90
- value
91
- when Hash
92
- value
93
- else
94
- value.to_s.strip
95
- end
96
- end
97
- opts
98
- end
99
- end
100
-
101
- class Mock
102
- include Shared
103
-
104
- def initialize(options={})
105
- require 'rbovirt'
106
- end
107
-
108
- private
109
-
110
- def client
111
- return @client if defined?(@client)
112
- end
113
-
114
- #read mocks xml
115
- def read_xml(file_name)
116
- file_path = File.join(File.dirname(__FILE__),"requests","compute","mock_files",file_name)
117
- File.read(file_path)
118
- end
119
- end
120
-
121
- class Real
122
- include Shared
123
-
124
- def initialize(options={})
125
- require 'rbovirt'
126
- username = options[:ovirt_username]
127
- password = options[:ovirt_password]
128
- server = options[:ovirt_server]
129
- port = options[:ovirt_port] || 8080
130
- api_path = options[:ovirt_api_path] || '/api'
131
- url = options[:ovirt_url] || "#{@scheme}://#{server}:#{port}#{api_path}"
132
-
133
- connection_opts = {}
134
- connection_opts[:datacenter_id] = options[:ovirt_datacenter]
135
- connection_opts[:ca_cert_store] = options[:ovirt_ca_cert_store]
136
- connection_opts[:ca_cert_file] = options[:ovirt_ca_cert_file]
137
- connection_opts[:ca_no_verify] = options[:ovirt_ca_no_verify]
138
- connection_opts[:filtered_api] = options[:ovirt_filtered_api]
139
-
140
- @client = OVIRT::Client.new(username, password, url, connection_opts)
141
- end
142
-
143
- def api_version
144
- client.api_version
145
- end
146
-
147
- private
148
-
149
- def client
150
- @client
151
- end
152
- end
153
- end
154
- end
155
- end
@@ -1,16 +0,0 @@
1
- require 'fog/core'
2
- require 'fog/xml'
3
-
4
- module Fog
5
- module Ovirt
6
- extend Fog::Provider
7
-
8
- module Errors
9
- class ServiceError < Fog::Errors::Error; end
10
- class SecurityError < ServiceError; end
11
- class NotFound < ServiceError; end
12
- end
13
-
14
- service(:compute, 'Compute')
15
- end
16
- end
@@ -1,25 +0,0 @@
1
- module Fog
2
- module Compute
3
- class Ovirt
4
- class AffinityGroup < Fog::Model
5
- identity :id
6
-
7
- attribute :name
8
- attribute :positive
9
- attribute :enforcing
10
-
11
- def vms
12
- id.nil? ? [] : service.list_affinity_group_vms(id)
13
- end
14
-
15
- def destroy
16
- service.destroy_affinity_group(id)
17
- end
18
-
19
- def to_s
20
- name
21
- end
22
- end
23
- end
24
- end
25
- end
@@ -1,20 +0,0 @@
1
- require 'fog/core/collection'
2
- require 'fog/ovirt/models/compute/affinity_group'
3
-
4
- module Fog
5
- module Compute
6
- class Ovirt
7
- class AffinityGroups < Fog::Collection
8
- model Fog::Compute::Ovirt::AffinityGroup
9
-
10
- def all(filters = {})
11
- load service.list_affinity_groups(filters)
12
- end
13
-
14
- def get(id)
15
- new service.get_affinity_group(id)
16
- end
17
- end
18
- end
19
- end
20
- end
@@ -1,20 +0,0 @@
1
- module Fog
2
- module Compute
3
- class Ovirt
4
- class Cluster < Fog::Model
5
- identity :id
6
-
7
- attribute :name
8
- attribute :raw
9
-
10
- def networks
11
- service.list_networks(id)
12
- end
13
-
14
- def to_s
15
- name
16
- end
17
- end
18
- end
19
- end
20
- end
@@ -1,20 +0,0 @@
1
- require 'fog/core/collection'
2
- require 'fog/ovirt/models/compute/cluster'
3
-
4
- module Fog
5
- module Compute
6
- class Ovirt
7
- class Clusters < Fog::Collection
8
- model Fog::Compute::Ovirt::Cluster
9
-
10
- def all(filters = {})
11
- load service.list_clusters(filters)
12
- end
13
-
14
- def get(id)
15
- new service.get_cluster(id)
16
- end
17
- end
18
- end
19
- end
20
- end
@@ -1,39 +0,0 @@
1
- module Fog
2
- module Compute
3
- class Ovirt
4
- class InstanceType < Fog::Model
5
- identity :id
6
-
7
- attr_accessor :raw
8
-
9
- attribute :name
10
- attribute :description
11
- attribute :memory
12
- attribute :cores
13
- attribute :creation_time
14
- attribute :os
15
- attribute :ha
16
- attribute :ha_priority
17
- attribute :display
18
- attribute :usb
19
- attribute :migration_downtime
20
- attribute :type
21
- attribute :status
22
- attribute :cpu_shares
23
- attribute :boot_menu
24
- attribute :origin
25
- attribute :stateless
26
- attribute :delete_protected
27
- attribute :sso
28
- attribute :timezone
29
- attribute :migration
30
- attribute :io_threads
31
- attribute :memory_garanteed
32
-
33
- def to_s
34
- name
35
- end
36
- end
37
- end
38
- end
39
- end
@@ -1,20 +0,0 @@
1
- require 'fog/core/collection'
2
- require 'fog/ovirt/models/compute/instance_type'
3
-
4
- module Fog
5
- module Compute
6
- class Ovirt
7
- class InstanceTypes < Fog::Collection
8
- model Fog::Compute::Ovirt::InstanceType
9
-
10
- def all(filters = {})
11
- load service.list_instance_types(filters)
12
- end
13
-
14
- def get(id)
15
- new service.get_instance_type(id)
16
- end
17
- end
18
- end
19
- end
20
- end
@@ -1,19 +0,0 @@
1
- module Fog
2
- module Compute
3
- class Ovirt
4
- class Interface < Fog::Model
5
- attr_accessor :raw
6
- identity :id
7
-
8
- attribute :name
9
- attribute :network
10
- attribute :interface
11
- attribute :mac
12
-
13
- def to_s
14
- name
15
- end
16
- end
17
- end
18
- end
19
- end