fog 1.34.0 → 1.35.0

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 (350) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +10 -24
  3. data/CHANGELOG.md +84 -0
  4. data/CONTRIBUTING.md +1 -1
  5. data/README.md +4 -20
  6. data/fog.gemspec +7 -5
  7. data/lib/fog.rb +1 -0
  8. data/lib/fog/bin.rb +1 -0
  9. data/lib/fog/digitalocean/compute_v2.rb +108 -0
  10. data/lib/fog/digitalocean/models/compute_v2/flavor.rb +17 -0
  11. data/lib/fog/digitalocean/models/compute_v2/flavors.rb +21 -0
  12. data/lib/fog/digitalocean/models/compute_v2/image.rb +25 -0
  13. data/lib/fog/digitalocean/models/compute_v2/images.rb +36 -0
  14. data/lib/fog/digitalocean/models/compute_v2/region.rb +13 -0
  15. data/lib/fog/digitalocean/models/compute_v2/regions.rb +21 -0
  16. data/lib/fog/digitalocean/models/compute_v2/server.rb +166 -0
  17. data/lib/fog/digitalocean/models/compute_v2/servers.rb +39 -0
  18. data/lib/fog/digitalocean/models/compute_v2/ssh_key.rb +30 -0
  19. data/lib/fog/digitalocean/models/compute_v2/ssh_keys.rb +35 -0
  20. data/lib/fog/digitalocean/requests/compute_v2/change_kernel.rb +44 -0
  21. data/lib/fog/digitalocean/requests/compute_v2/convert_to_snapshot.rb +44 -0
  22. data/lib/fog/digitalocean/requests/compute_v2/create_server.rb +93 -0
  23. data/lib/fog/digitalocean/requests/compute_v2/create_ssh_key.rb +47 -0
  24. data/lib/fog/digitalocean/requests/compute_v2/delete_server.rb +28 -0
  25. data/lib/fog/digitalocean/requests/compute_v2/delete_ssh_key.rb +28 -0
  26. data/lib/fog/digitalocean/requests/compute_v2/disable_backups.rb +45 -0
  27. data/lib/fog/digitalocean/requests/compute_v2/enable_ipv6.rb +44 -0
  28. data/lib/fog/digitalocean/requests/compute_v2/enable_private_networking.rb +44 -0
  29. data/lib/fog/digitalocean/requests/compute_v2/get_droplet_action.rb +36 -0
  30. data/lib/fog/digitalocean/requests/compute_v2/get_image_details.rb +43 -0
  31. data/lib/fog/digitalocean/requests/compute_v2/get_server_details.rb +84 -0
  32. data/lib/fog/digitalocean/requests/compute_v2/get_ssh_key.rb +34 -0
  33. data/lib/fog/digitalocean/requests/compute_v2/list_droplet_actions.rb +38 -0
  34. data/lib/fog/digitalocean/requests/compute_v2/list_flavors.rb +131 -0
  35. data/lib/fog/digitalocean/requests/compute_v2/list_images.rb +50 -0
  36. data/lib/fog/digitalocean/requests/compute_v2/list_regions.rb +94 -0
  37. data/lib/fog/digitalocean/requests/compute_v2/list_servers.rb +28 -0
  38. data/lib/fog/digitalocean/requests/compute_v2/list_ssh_keys.rb +26 -0
  39. data/lib/fog/digitalocean/requests/compute_v2/password_reset.rb +44 -0
  40. data/lib/fog/digitalocean/requests/compute_v2/power_cycle.rb +44 -0
  41. data/lib/fog/digitalocean/requests/compute_v2/power_off.rb +44 -0
  42. data/lib/fog/digitalocean/requests/compute_v2/power_on.rb +44 -0
  43. data/lib/fog/digitalocean/requests/compute_v2/reboot_server.rb +44 -0
  44. data/lib/fog/digitalocean/requests/compute_v2/rebuild.rb +44 -0
  45. data/lib/fog/digitalocean/requests/compute_v2/rename.rb +44 -0
  46. data/lib/fog/digitalocean/requests/compute_v2/resize.rb +48 -0
  47. data/lib/fog/digitalocean/requests/compute_v2/restore.rb +44 -0
  48. data/lib/fog/digitalocean/requests/compute_v2/shutdown.rb +44 -0
  49. data/lib/fog/digitalocean/requests/compute_v2/snapshot.rb +44 -0
  50. data/lib/fog/digitalocean/requests/compute_v2/transfer_image.rb +44 -0
  51. data/lib/fog/digitalocean/requests/compute_v2/update_ssh_key.rb +46 -0
  52. data/lib/fog/digitalocean/requests/compute_v2/upgrade.rb +44 -0
  53. data/lib/fog/digitalocean/service.rb +51 -0
  54. data/lib/fog/linode/models/compute/kernels.rb +1 -1
  55. data/lib/fog/opennebula/models/compute/flavor.rb +13 -13
  56. data/lib/fog/opennebula/requests/compute/template_pool.rb +14 -11
  57. data/lib/fog/openstack.rb +2 -0
  58. data/lib/fog/openstack/core.rb +30 -3
  59. data/lib/fog/openstack/identity.rb +8 -7
  60. data/lib/fog/openstack/identity_v3.rb +1 -0
  61. data/lib/fog/openstack/image.rb +35 -130
  62. data/lib/fog/openstack/image_v1.rb +142 -0
  63. data/lib/fog/openstack/image_v2.rb +137 -0
  64. data/lib/fog/openstack/models/image_v1/image.rb +78 -0
  65. data/lib/fog/openstack/models/image_v1/images.rb +70 -0
  66. data/lib/fog/openstack/models/image_v2/image.rb +149 -0
  67. data/lib/fog/openstack/models/image_v2/images.rb +67 -0
  68. data/lib/fog/openstack/models/orchestration/stack.rb +5 -0
  69. data/lib/fog/openstack/models/volume/volume_type.rb +25 -0
  70. data/lib/fog/openstack/orchestration.rb +1 -0
  71. data/lib/fog/openstack/requests/compute/server_actions.rb +14 -3
  72. data/lib/fog/openstack/requests/{image → image_v1}/add_member_to_image.rb +2 -0
  73. data/lib/fog/openstack/requests/image_v1/create_image.rb +78 -0
  74. data/lib/fog/openstack/requests/image_v1/delete_image.rb +25 -0
  75. data/lib/fog/openstack/requests/image_v1/get_image.rb +47 -0
  76. data/lib/fog/openstack/requests/image_v1/get_image_by_id.rb +34 -0
  77. data/lib/fog/openstack/requests/image_v1/get_image_members.rb +31 -0
  78. data/lib/fog/openstack/requests/image_v1/get_shared_images.rb +31 -0
  79. data/lib/fog/openstack/requests/image_v1/list_public_images.rb +35 -0
  80. data/lib/fog/openstack/requests/image_v1/list_public_images_detailed.rb +37 -0
  81. data/lib/fog/openstack/requests/image_v1/remove_member_from_image.rb +25 -0
  82. data/lib/fog/openstack/requests/image_v1/set_tenant.rb +21 -0
  83. data/lib/fog/openstack/requests/image_v1/update_image.rb +66 -0
  84. data/lib/fog/openstack/requests/image_v1/update_image_members.rb +39 -0
  85. data/lib/fog/openstack/requests/image_v2/add_member_to_image.rb +26 -0
  86. data/lib/fog/openstack/requests/image_v2/add_tag_to_image.rb +25 -0
  87. data/lib/fog/openstack/requests/image_v2/create_image.rb +54 -0
  88. data/lib/fog/openstack/requests/image_v2/deactivate_image.rb +25 -0
  89. data/lib/fog/openstack/requests/image_v2/delete_image.rb +25 -0
  90. data/lib/fog/openstack/requests/image_v2/download_image.rb +29 -0
  91. data/lib/fog/openstack/requests/image_v2/get_image.rb +47 -0
  92. data/lib/fog/openstack/requests/image_v2/get_image_by_id.rb +34 -0
  93. data/lib/fog/openstack/requests/image_v2/get_image_members.rb +31 -0
  94. data/lib/fog/openstack/requests/image_v2/get_member_details.rb +33 -0
  95. data/lib/fog/openstack/requests/image_v2/get_shared_images.rb +31 -0
  96. data/lib/fog/openstack/requests/image_v2/list_images.rb +35 -0
  97. data/lib/fog/openstack/requests/image_v2/reactivate_image.rb +25 -0
  98. data/lib/fog/openstack/requests/image_v2/remove_member_from_image.rb +25 -0
  99. data/lib/fog/openstack/requests/image_v2/remove_tag_from_image.rb +25 -0
  100. data/lib/fog/openstack/requests/image_v2/set_tenant.rb +21 -0
  101. data/lib/fog/openstack/requests/image_v2/update_image.rb +49 -0
  102. data/lib/fog/openstack/requests/image_v2/update_image_member.rb +34 -0
  103. data/lib/fog/openstack/requests/image_v2/upload_image.rb +30 -0
  104. data/lib/fog/openstack/requests/orchestration/patch_stack.rb +37 -0
  105. data/lib/fog/openstack/requests/volume/create_volume_type.rb +41 -0
  106. data/lib/fog/openstack/requests/{image/delete_image.rb → volume/delete_volume_type.rb} +6 -6
  107. data/lib/fog/openstack/requests/volume/get_quota_usage.rb +44 -0
  108. data/lib/fog/openstack/requests/volume/get_volume_type_details.rb +1 -1
  109. data/lib/fog/openstack/requests/volume/update_volume_type.rb +41 -0
  110. data/lib/fog/openstack/volume.rb +5 -0
  111. data/lib/fog/rackspace/models/compute_v2/server.rb +11 -1
  112. data/lib/fog/rackspace/models/compute_v2/servers.rb +2 -2
  113. data/lib/fog/rackspace/requests/compute_v2/create_server.rb +7 -2
  114. data/lib/fog/vcloud_director/requests/compute/get_execute_query.rb +13 -10
  115. data/lib/fog/version.rb +1 -1
  116. data/lib/fog/vsphere/models/compute/server.rb +1 -1
  117. data/lib/tasks/changelog_task.rb +1 -0
  118. data/spec/fog/openstack/identity_v3/authv3_a.yml +45 -52
  119. data/spec/fog/openstack/identity_v3/authv3_b.yml +45 -52
  120. data/spec/fog/openstack/identity_v3/authv3_c.yml +95 -101
  121. data/spec/fog/openstack/identity_v3/authv3_project.yml +68 -75
  122. data/spec/fog/openstack/identity_v3/authv3_token.yml +212 -174
  123. data/spec/fog/openstack/identity_v3/authv3_unscoped.yml +278 -266
  124. data/spec/fog/openstack/identity_v3/authv3_unscoped_reauth.yml +190 -202
  125. data/spec/fog/openstack/identity_v3/common_setup.yml +67 -445
  126. data/spec/fog/openstack/identity_v3/idv3_credential.yml +56 -26
  127. data/spec/fog/openstack/identity_v3/idv3_credential_crud.yml +292 -152
  128. data/spec/fog/openstack/identity_v3/idv3_domain.yml +99 -49
  129. data/spec/fog/openstack/identity_v3/idv3_domain_crud.yml +239 -119
  130. data/spec/fog/openstack/identity_v3/idv3_domain_group_roles_mutation.yml +414 -205
  131. data/spec/fog/openstack/identity_v3/idv3_domain_roles_mutation.yml +259 -136
  132. data/spec/fog/openstack/identity_v3/idv3_endpoint.yml +474 -472
  133. data/spec/fog/openstack/identity_v3/idv3_endpoints_crud.yml +679 -626
  134. data/spec/fog/openstack/identity_v3/idv3_group_crud_mutation.yml +536 -269
  135. data/spec/fog/openstack/identity_v3/idv3_policy.yml +76 -36
  136. data/spec/fog/openstack/identity_v3/idv3_policy_crud.yml +197 -97
  137. data/spec/fog/openstack/identity_v3/idv3_project.yml +135 -85
  138. data/spec/fog/openstack/identity_v3/idv3_project_crud.yml +237 -127
  139. data/spec/fog/openstack/identity_v3/idv3_project_group_user_roles_mutation.yml +625 -295
  140. data/spec/fog/openstack/identity_v3/idv3_project_hier_crud_list.yml +716 -355
  141. data/spec/fog/openstack/identity_v3/idv3_role.yml +134 -88
  142. data/spec/fog/openstack/identity_v3/idv3_role_crud.yml +312 -118
  143. data/spec/fog/openstack/identity_v3/idv3_service.yml +179 -133
  144. data/spec/fog/openstack/identity_v3/idv3_services_crud.yml +306 -212
  145. data/spec/fog/openstack/identity_v3/idv3_token.yml +213 -177
  146. data/spec/fog/openstack/identity_v3/idv3_user_crud.yml +345 -188
  147. data/spec/fog/openstack/identity_v3/idv3_users.yml +182 -116
  148. data/spec/fog/openstack/identity_v3_spec.rb +103 -85
  149. data/spec/fog/openstack/{identity_v3/idv3_other_region.yml → image_v1/common_setup.yml} +50 -93
  150. data/spec/fog/openstack/image_v1/list_images.yml +54 -0
  151. data/spec/fog/openstack/image_v1_spec.rb +24 -0
  152. data/spec/fog/openstack/image_v2/common_setup.yml +144 -0
  153. data/spec/fog/openstack/image_v2/image_schema.json +190 -0
  154. data/spec/fog/openstack/image_v2/image_v2_activation.yml +3988 -0
  155. data/spec/fog/openstack/image_v2/image_v2_create_id.yml +291 -0
  156. data/spec/fog/openstack/image_v2/image_v2_crud.yml +437 -0
  157. data/spec/fog/openstack/image_v2/image_v2_member_crudl.yml +451 -0
  158. data/spec/fog/openstack/image_v2/image_v2_tags.yml +532 -0
  159. data/spec/fog/openstack/image_v2/image_v2_upload_download.yml +3966 -0
  160. data/spec/fog/openstack/image_v2/minimal.ova +0 -0
  161. data/spec/fog/openstack/image_v2_spec.rb +285 -0
  162. data/spec/fog/openstack/image_v2_upload_spec.rb +74 -0
  163. data/spec/fog/openstack/shared_context.rb +14 -10
  164. data/tests/compute/helper.rb +0 -3
  165. data/tests/digitalocean/requests/compute_v2/list_flavors_tests.rb +25 -0
  166. data/tests/digitalocean/requests/compute_v2/list_images_tests.rb +25 -0
  167. data/tests/digitalocean/requests/compute_v2/list_regions_tests.rb +21 -0
  168. data/tests/digitalocean/requests/compute_v2/server_tests.rb +77 -0
  169. data/tests/helpers/mock_helper.rb +1 -0
  170. data/tests/opennebula/models/compute/flavor_tests.rb +1 -1
  171. data/tests/openstack/requests/orchestration/stack_tests.rb +5 -1
  172. data/tests/openstack/requests/volume/volume_type_tests.rb +32 -0
  173. data/tests/rackspace/models/compute_v2/server_tests.rb +7 -7
  174. metadata +160 -236
  175. data/gemfiles/Gemfile-ruby-1.8.7 +0 -17
  176. data/lib/fog/bin/xenserver.rb +0 -29
  177. data/lib/fog/openstack/models/image/image.rb +0 -76
  178. data/lib/fog/openstack/models/image/images.rb +0 -67
  179. data/lib/fog/openstack/requests/image/create_image.rb +0 -76
  180. data/lib/fog/openstack/requests/image/get_image.rb +0 -45
  181. data/lib/fog/openstack/requests/image/get_image_by_id.rb +0 -32
  182. data/lib/fog/openstack/requests/image/get_image_members.rb +0 -29
  183. data/lib/fog/openstack/requests/image/get_shared_images.rb +0 -29
  184. data/lib/fog/openstack/requests/image/list_public_images.rb +0 -33
  185. data/lib/fog/openstack/requests/image/list_public_images_detailed.rb +0 -35
  186. data/lib/fog/openstack/requests/image/remove_member_from_image.rb +0 -23
  187. data/lib/fog/openstack/requests/image/set_tenant.rb +0 -19
  188. data/lib/fog/openstack/requests/image/update_image.rb +0 -64
  189. data/lib/fog/openstack/requests/image/update_image_members.rb +0 -37
  190. data/lib/fog/xenserver.rb +0 -1
  191. data/lib/fog/xenserver/CHANGELOG.md +0 -77
  192. data/lib/fog/xenserver/compute.rb +0 -186
  193. data/lib/fog/xenserver/core.rb +0 -94
  194. data/lib/fog/xenserver/examples/README.md +0 -11
  195. data/lib/fog/xenserver/examples/chage_default_storage_repository.md +0 -99
  196. data/lib/fog/xenserver/examples/creating_servers.md +0 -168
  197. data/lib/fog/xenserver/examples/getting_started.md +0 -163
  198. data/lib/fog/xenserver/examples/networks-and-vlans.rb +0 -44
  199. data/lib/fog/xenserver/examples/storage_repositories.md +0 -94
  200. data/lib/fog/xenserver/models/compute/blob.rb +0 -22
  201. data/lib/fog/xenserver/models/compute/blobs.rb +0 -25
  202. data/lib/fog/xenserver/models/compute/bond.rb +0 -23
  203. data/lib/fog/xenserver/models/compute/bonds.rb +0 -25
  204. data/lib/fog/xenserver/models/compute/console.rb +0 -29
  205. data/lib/fog/xenserver/models/compute/consoles.rb +0 -25
  206. data/lib/fog/xenserver/models/compute/crash_dump.rb +0 -19
  207. data/lib/fog/xenserver/models/compute/crash_dumps.rb +0 -25
  208. data/lib/fog/xenserver/models/compute/dr_task.rb +0 -17
  209. data/lib/fog/xenserver/models/compute/dr_tasks.rb +0 -25
  210. data/lib/fog/xenserver/models/compute/gpu_group.rb +0 -22
  211. data/lib/fog/xenserver/models/compute/gpu_groups.rb +0 -25
  212. data/lib/fog/xenserver/models/compute/guest_metrics.rb +0 -26
  213. data/lib/fog/xenserver/models/compute/host.rb +0 -156
  214. data/lib/fog/xenserver/models/compute/host_cpu.rb +0 -34
  215. data/lib/fog/xenserver/models/compute/host_crash_dump.rb +0 -20
  216. data/lib/fog/xenserver/models/compute/host_crash_dumps.rb +0 -25
  217. data/lib/fog/xenserver/models/compute/host_metrics.rb +0 -26
  218. data/lib/fog/xenserver/models/compute/host_patch.rb +0 -25
  219. data/lib/fog/xenserver/models/compute/host_patchs.rb +0 -25
  220. data/lib/fog/xenserver/models/compute/hosts.rb +0 -25
  221. data/lib/fog/xenserver/models/compute/network.rb +0 -93
  222. data/lib/fog/xenserver/models/compute/networks.rb +0 -29
  223. data/lib/fog/xenserver/models/compute/pbd.rb +0 -37
  224. data/lib/fog/xenserver/models/compute/pbds.rb +0 -29
  225. data/lib/fog/xenserver/models/compute/pci.rb +0 -22
  226. data/lib/fog/xenserver/models/compute/pcis.rb +0 -25
  227. data/lib/fog/xenserver/models/compute/pgpu.rb +0 -20
  228. data/lib/fog/xenserver/models/compute/pgpus.rb +0 -25
  229. data/lib/fog/xenserver/models/compute/pif.rb +0 -54
  230. data/lib/fog/xenserver/models/compute/pif_metrics.rb +0 -28
  231. data/lib/fog/xenserver/models/compute/pifs.rb +0 -29
  232. data/lib/fog/xenserver/models/compute/pifs_metrics.rb +0 -25
  233. data/lib/fog/xenserver/models/compute/pool.rb +0 -75
  234. data/lib/fog/xenserver/models/compute/pool_patch.rb +0 -24
  235. data/lib/fog/xenserver/models/compute/pool_patchs.rb +0 -25
  236. data/lib/fog/xenserver/models/compute/pools.rb +0 -29
  237. data/lib/fog/xenserver/models/compute/role.rb +0 -19
  238. data/lib/fog/xenserver/models/compute/roles.rb +0 -25
  239. data/lib/fog/xenserver/models/compute/server.rb +0 -251
  240. data/lib/fog/xenserver/models/compute/server_appliance.rb +0 -21
  241. data/lib/fog/xenserver/models/compute/server_appliances.rb +0 -25
  242. data/lib/fog/xenserver/models/compute/servers.rb +0 -64
  243. data/lib/fog/xenserver/models/compute/storage_manager.rb +0 -28
  244. data/lib/fog/xenserver/models/compute/storage_managers.rb +0 -25
  245. data/lib/fog/xenserver/models/compute/storage_repositories.rb +0 -27
  246. data/lib/fog/xenserver/models/compute/storage_repository.rb +0 -90
  247. data/lib/fog/xenserver/models/compute/tunnel.rb +0 -20
  248. data/lib/fog/xenserver/models/compute/tunnels.rb +0 -25
  249. data/lib/fog/xenserver/models/compute/vbd.rb +0 -88
  250. data/lib/fog/xenserver/models/compute/vbd_metrics.rb +0 -25
  251. data/lib/fog/xenserver/models/compute/vbds.rb +0 -29
  252. data/lib/fog/xenserver/models/compute/vdi.rb +0 -102
  253. data/lib/fog/xenserver/models/compute/vdis.rb +0 -25
  254. data/lib/fog/xenserver/models/compute/vif.rb +0 -56
  255. data/lib/fog/xenserver/models/compute/vifs.rb +0 -25
  256. data/lib/fog/xenserver/models/compute/vlan.rb +0 -78
  257. data/lib/fog/xenserver/models/compute/vlans.rb +0 -35
  258. data/lib/fog/xenserver/models/compute/vmpp.rb +0 -35
  259. data/lib/fog/xenserver/models/compute/vmpps.rb +0 -25
  260. data/lib/fog/xenserver/models/compute/vtpm.rb +0 -18
  261. data/lib/fog/xenserver/models/compute/vtpms.rb +0 -25
  262. data/lib/fog/xenserver/parser.rb +0 -34
  263. data/lib/fog/xenserver/parsers/get_hosts.rb +0 -16
  264. data/lib/fog/xenserver/parsers/get_networks.rb +0 -16
  265. data/lib/fog/xenserver/parsers/get_pools.rb +0 -16
  266. data/lib/fog/xenserver/parsers/get_records.rb +0 -16
  267. data/lib/fog/xenserver/parsers/get_storage_repositories.rb +0 -16
  268. data/lib/fog/xenserver/parsers/get_vbds.rb +0 -16
  269. data/lib/fog/xenserver/parsers/get_vifs.rb +0 -16
  270. data/lib/fog/xenserver/parsers/get_vms.rb +0 -16
  271. data/lib/fog/xenserver/requests/compute/clone_server.rb +0 -30
  272. data/lib/fog/xenserver/requests/compute/create_network.rb +0 -46
  273. data/lib/fog/xenserver/requests/compute/create_server.rb +0 -144
  274. data/lib/fog/xenserver/requests/compute/create_sr.rb +0 -88
  275. data/lib/fog/xenserver/requests/compute/create_vbd.rb +0 -43
  276. data/lib/fog/xenserver/requests/compute/create_vdi.rb +0 -57
  277. data/lib/fog/xenserver/requests/compute/create_vif.rb +0 -62
  278. data/lib/fog/xenserver/requests/compute/create_vlan.rb +0 -43
  279. data/lib/fog/xenserver/requests/compute/destroy_network.rb +0 -31
  280. data/lib/fog/xenserver/requests/compute/destroy_record.rb +0 -11
  281. data/lib/fog/xenserver/requests/compute/destroy_server.rb +0 -20
  282. data/lib/fog/xenserver/requests/compute/destroy_sr.rb +0 -28
  283. data/lib/fog/xenserver/requests/compute/destroy_vdi.rb +0 -20
  284. data/lib/fog/xenserver/requests/compute/destroy_vif.rb +0 -20
  285. data/lib/fog/xenserver/requests/compute/destroy_vlan.rb +0 -30
  286. data/lib/fog/xenserver/requests/compute/disable_host.rb +0 -23
  287. data/lib/fog/xenserver/requests/compute/eject_vbd.rb +0 -17
  288. data/lib/fog/xenserver/requests/compute/enable_host.rb +0 -22
  289. data/lib/fog/xenserver/requests/compute/get_record.rb +0 -31
  290. data/lib/fog/xenserver/requests/compute/get_records.rb +0 -24
  291. data/lib/fog/xenserver/requests/compute/insert_vbd.rb +0 -17
  292. data/lib/fog/xenserver/requests/compute/provision_server.rb +0 -17
  293. data/lib/fog/xenserver/requests/compute/reboot_host.rb +0 -17
  294. data/lib/fog/xenserver/requests/compute/reboot_server.rb +0 -17
  295. data/lib/fog/xenserver/requests/compute/scan_sr.rb +0 -17
  296. data/lib/fog/xenserver/requests/compute/set_affinity.rb +0 -19
  297. data/lib/fog/xenserver/requests/compute/set_attribute.rb +0 -19
  298. data/lib/fog/xenserver/requests/compute/shutdown_host.rb +0 -17
  299. data/lib/fog/xenserver/requests/compute/shutdown_server.rb +0 -17
  300. data/lib/fog/xenserver/requests/compute/snapshot_revert.rb +0 -24
  301. data/lib/fog/xenserver/requests/compute/snapshot_server.rb +0 -17
  302. data/lib/fog/xenserver/requests/compute/start_server.rb +0 -17
  303. data/lib/fog/xenserver/requests/compute/start_vm.rb +0 -19
  304. data/lib/fog/xenserver/requests/compute/unplug_pbd.rb +0 -20
  305. data/lib/fog/xenserver/requests/compute/unplug_vbd.rb +0 -25
  306. data/lib/fog/xenserver/utilities.rb +0 -8
  307. data/tests/xenserver/README +0 -21
  308. data/tests/xenserver/compute_tests.rb +0 -51
  309. data/tests/xenserver/helper.rb +0 -36
  310. data/tests/xenserver/models/compute/console_test.rb +0 -35
  311. data/tests/xenserver/models/compute/consoles_test.rb +0 -19
  312. data/tests/xenserver/models/compute/host_cpu_tests.rb +0 -58
  313. data/tests/xenserver/models/compute/host_metrics_tests.rb +0 -48
  314. data/tests/xenserver/models/compute/host_tests.rb +0 -98
  315. data/tests/xenserver/models/compute/hosts_tests.rb +0 -22
  316. data/tests/xenserver/models/compute/network_tests.rb +0 -79
  317. data/tests/xenserver/models/compute/networks_tests.rb +0 -22
  318. data/tests/xenserver/models/compute/pbd_tests.rb +0 -76
  319. data/tests/xenserver/models/compute/pbds_tests.rb +0 -22
  320. data/tests/xenserver/models/compute/pif_tests.rb +0 -58
  321. data/tests/xenserver/models/compute/pifs_tests.rb +0 -22
  322. data/tests/xenserver/models/compute/pool_tests.rb +0 -56
  323. data/tests/xenserver/models/compute/pools_tests.rb +0 -30
  324. data/tests/xenserver/models/compute/server_tests.rb +0 -184
  325. data/tests/xenserver/models/compute/servers_tests.rb +0 -89
  326. data/tests/xenserver/models/compute/storage_repositories_tests.rb +0 -30
  327. data/tests/xenserver/models/compute/storage_repository_tests.rb +0 -114
  328. data/tests/xenserver/models/compute/vbd_tests.rb +0 -115
  329. data/tests/xenserver/models/compute/vbds_tests.rb +0 -22
  330. data/tests/xenserver/models/compute/vif_tests.rb +0 -53
  331. data/tests/xenserver/models/compute/vifs_tests.rb +0 -22
  332. data/tests/xenserver/models/compute/vlan_tests.rb +0 -76
  333. data/tests/xenserver/models/compute/vlans_tests.rb +0 -36
  334. data/tests/xenserver/requests/compute/clone_server_tests.rb +0 -32
  335. data/tests/xenserver/requests/compute/create_network_tests.rb +0 -20
  336. data/tests/xenserver/requests/compute/create_server_tests.rb +0 -129
  337. data/tests/xenserver/requests/compute/create_sr_tests.rb +0 -54
  338. data/tests/xenserver/requests/compute/create_vdi_tests.rb +0 -80
  339. data/tests/xenserver/requests/compute/create_vif_tests.rb +0 -88
  340. data/tests/xenserver/requests/compute/create_vlan_tests.rb +0 -36
  341. data/tests/xenserver/requests/compute/destroy_network_tests.rb +0 -13
  342. data/tests/xenserver/requests/compute/destroy_sr_tests.rb +0 -46
  343. data/tests/xenserver/requests/compute/destroy_vdi_tests.rb +0 -25
  344. data/tests/xenserver/requests/compute/destroy_vlan_tests.rb +0 -36
  345. data/tests/xenserver/requests/compute/disable_host_tests.rb +0 -16
  346. data/tests/xenserver/requests/compute/enable_host_tests.rb +0 -16
  347. data/tests/xenserver/requests/compute/get_record_tests.rb +0 -15
  348. data/tests/xenserver/requests/compute/set_attribute_tests.rb +0 -66
  349. data/tests/xenserver/requests/compute/unplug_pbd_tests.rb +0 -48
  350. data/tests/xenserver/xenserver_tests.rb +0 -33
@@ -1,34 +0,0 @@
1
- module Fog
2
- module Parsers
3
- module XenServer
4
- class Base
5
- attr_reader :response
6
-
7
- def initialize
8
- reset
9
- end
10
-
11
- def reset
12
- @response = {}
13
- end
14
-
15
- def parse( data )
16
- if data.kind_of? Hash
17
- @response = data.symbolize_keys!
18
- @response.each do |k,v|
19
- if @response[k] == "OpaqueRef:NULL"
20
- @response[k] = nil
21
- end
22
- end
23
- elsif data.kind_of? Array
24
- @response = data.first
25
- elsif data.kind_of?(String) and data =~ /OpaqueRef:/
26
- @response = data
27
- end
28
-
29
- @response
30
- end
31
- end
32
- end
33
- end
34
- end
@@ -1,16 +0,0 @@
1
- module Fog
2
- module Parsers
3
- module XenServer
4
- class GetHosts < Fog::Parsers::XenServer::Base
5
- def reset
6
- @response = []
7
- end
8
-
9
- def parse( data )
10
- parser = Fog::Parsers::XenServer::Base.new
11
- data.each_pair {|reference, host_hash| @response << parser.parse( host_hash ).merge(:reference => reference) }
12
- end
13
- end
14
- end
15
- end
16
- end
@@ -1,16 +0,0 @@
1
- module Fog
2
- module Parsers
3
- module XenServer
4
- class GetNetworks < Fog::Parsers::XenServer::Base
5
- def reset
6
- @response = []
7
- end
8
-
9
- def parse( data )
10
- parser = Fog::Parsers::XenServer::Base.new
11
- data.each_pair {|reference, network_hash| @response << parser.parse( network_hash ).merge(:reference => reference) }
12
- end
13
- end
14
- end
15
- end
16
- end
@@ -1,16 +0,0 @@
1
- module Fog
2
- module Parsers
3
- module XenServer
4
- class GetPools < Fog::Parsers::XenServer::Base
5
- def reset
6
- @response = []
7
- end
8
-
9
- def parse( data )
10
- parser = Fog::Parsers::XenServer::Base.new
11
- data.each_pair {|reference, pool_hash| @response << parser.parse( pool_hash ).merge(:reference => reference) }
12
- end
13
- end
14
- end
15
- end
16
- end
@@ -1,16 +0,0 @@
1
- module Fog
2
- module Parsers
3
- module XenServer
4
- class GetRecords < Fog::Parsers::XenServer::Base
5
- def reset
6
- @response = []
7
- end
8
-
9
- def parse( data )
10
- parser = Fog::Parsers::XenServer::Base.new
11
- data.each_pair {|reference, hash| @response << parser.parse( hash ).merge(:reference => reference) }
12
- end
13
- end
14
- end
15
- end
16
- end
@@ -1,16 +0,0 @@
1
- module Fog
2
- module Parsers
3
- module XenServer
4
- class GetStorageRepositories < Fog::Parsers::XenServer::Base
5
- def reset
6
- @response = []
7
- end
8
-
9
- def parse( data )
10
- parser = Fog::Parsers::XenServer::Base.new
11
- data.each_pair {|reference, sr_hash| @response << parser.parse( sr_hash ).merge(:reference => reference) }
12
- end
13
- end
14
- end
15
- end
16
- end
@@ -1,16 +0,0 @@
1
- module Fog
2
- module Parsers
3
- module XenServer
4
- class GetVBDs < Fog::Parsers::XenServer::Base
5
- def reset
6
- @response = []
7
- end
8
-
9
- def parse( data )
10
- parser = Fog::Parsers::XenServer::Base.new
11
- data.each_pair {|reference, hash| @response << parser.parse( hash ).merge(:reference => reference) }
12
- end
13
- end
14
- end
15
- end
16
- end
@@ -1,16 +0,0 @@
1
- module Fog
2
- module Parsers
3
- module XenServer
4
- class GetVIFs < Fog::Parsers::XenServer::Base
5
- def reset
6
- @response = []
7
- end
8
-
9
- def parse( data )
10
- parser = Fog::Parsers::XenServer::Base.new
11
- data.each_pair {|reference, vif_hash| @response << parser.parse( vif_hash ).merge(:reference => reference) }
12
- end
13
- end
14
- end
15
- end
16
- end
@@ -1,16 +0,0 @@
1
- module Fog
2
- module Parsers
3
- module XenServer
4
- class GetVms < Fog::Parsers::XenServer::Base
5
- def reset
6
- @response = []
7
- end
8
-
9
- def parse( data )
10
- parser = Fog::Parsers::XenServer::Base.new
11
- data.each_pair {|reference, vm_hash| @response << parser.parse( vm_hash ).merge(:reference => reference) }
12
- end
13
- end
14
- end
15
- end
16
- end
@@ -1,30 +0,0 @@
1
- module Fog
2
- module Compute
3
- class XenServer
4
- class Real
5
- def clone_server( server_name, template_ref )
6
- # Clone the VM template
7
- if template_ref.kind_of? Fog::Compute::XenServer::Server
8
- Fog::Logger.deprecation(
9
- 'Passing an object to #clone_server is deprecated. Pass the reference instead.'
10
- )
11
- template_ref = template_ref.reference
12
- end
13
- raise ArgumentError.new("Invalid template_ref") if template_ref.nil?
14
- raise ArgumentError.new("Invalid template_ref") if server_name.nil?
15
-
16
- ref = @connection.request(
17
- {:parser => Fog::Parsers::XenServer::Base.new, :method => 'VM.clone'},
18
- template_ref, server_name
19
- )
20
- end
21
- end
22
-
23
- class Mock
24
- def clone_server( server_name, template_ref )
25
- Fog::Mock.not_implemented
26
- end
27
- end
28
- end
29
- end
30
- end
@@ -1,46 +0,0 @@
1
- module Fog
2
- module Compute
3
- class XenServer
4
- class Real
5
- # Create a Network
6
- #
7
- # @see http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/api/?c=network
8
- #
9
- def create_network( name, config = {} )
10
- if name.is_a?(Hash)
11
- default_config = name
12
- default_config.reject! { |_k,v| v.nil? }
13
- else
14
- Fog::Logger.deprecation(
15
- 'This api is deprecated. The only expected param is a hash with the attributes.'
16
- )
17
-
18
- config.reject! { |k,v| v.nil? }
19
-
20
- default_config = {
21
- :name_label => name,
22
- # Description is mandatory in XenAPI but we default to empty
23
- :name_description => config[:description] || '',
24
- # Mandatory, but can be empty
25
- :other_config => {}
26
- }.merge config
27
- end
28
-
29
- @connection.request(
30
- {
31
- :parser => Fog::Parsers::XenServer::Base.new,
32
- :method => 'network.create'
33
- },
34
- default_config
35
- )
36
- end
37
- end
38
-
39
- class Mock
40
- def create_network( name, description = '', config = {} )
41
- Fog::Mock.not_implemented
42
- end
43
- end
44
- end
45
- end
46
- end
@@ -1,144 +0,0 @@
1
- module Fog
2
- module Compute
3
- class XenServer
4
- class Real
5
- def get_vm_by_name(label)
6
- Fog::Logger.deprecation(
7
- 'This method is deprecated. Use #get_by_name instead.'
8
- )
9
- @connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VM.get_by_name_label' }, label)
10
- end
11
-
12
- def get_vm_by_uuid(uuid)
13
- Fog::Logger.deprecation(
14
- 'This method is deprecated. Use #get_by_uuid instead.'
15
- )
16
- @connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VM.get_by_uuid' }, uuid)
17
- end
18
-
19
- def create_server_raw(config = {})
20
- Fog::Logger.deprecation(
21
- 'This method is deprecated. To create a server from scratch, use #create_server.'
22
- )
23
-
24
- config[:name_label] = config[:name] if config[:name]
25
- config.delete :name
26
- config[:affinity] = config[:__affinity] if config[:__affinity]
27
- config.delete :__affinity
28
- raise ArgumentError.new("Invalid :name_label attribute") \
29
- if !config[:name_label]
30
- raise ArgumentError.new("Invalid :affinity attribute") \
31
- if not config[:affinity]
32
- config[:affinity] = config[:affinity].reference \
33
- if config[:affinity].kind_of? Fog::Compute::XenServer::Host
34
- config.reduce({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
35
- %w{ VCPUs_at_startup
36
- VCPUs_max
37
- VCPUs_params
38
- PV_bootloader_args
39
- PV_bootloader
40
- PV_kernel
41
- PV_ramdisk
42
- PV_legacy_args
43
- HVM_boot_policy
44
- HVM_boot_params
45
- }.each do |k|
46
- if config[k.downcase.to_sym]
47
- config[k.to_sym] = config[k.downcase.to_sym]
48
- config.delete k.downcase.to_sym
49
- end
50
- end
51
- vm_record = {
52
- :name_label => '',
53
- :name_description => 'description',
54
- :user_version => '0',
55
- :affinity => '',
56
- :is_a_template => true,
57
- :auto_power_on => false,
58
- :memory_static_max => '536870912',
59
- :memory_static_min => '536870912',
60
- :memory_dynamic_max => '536870912',
61
- :memory_dynamic_min => '536870912',
62
- :VCPUs_params => {},
63
- :VCPUs_max => '1',
64
- :VCPUs_at_startup => '1',
65
- :actions_after_shutdown => 'Destroy',
66
- :actions_after_reboot => 'Restart',
67
- :actions_after_crash => 'Restart',
68
- :platform => { :'nx' => 'true', :'acpi' => 'true', :'apic' => 'true', :'pae' => 'true', :'viridian' => 'true' },
69
- :other_config => {},
70
- :pool_name => '',
71
- :PV_bootloader => 'pygrub', #pvgrub, eliloader
72
- :PV_kernel => '',
73
- :PV_ramdisk => '',
74
- :PV_args => '-- quiet console=hvc0',
75
- :PV_bootloader_args => '',
76
- :PV_legacy_args => '',
77
- :HVM_boot_policy => '',
78
- :HVM_boot_params => {},
79
- :PCI_bus => '',
80
- :recommendations => '',
81
- }.merge config
82
- ref = @connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VM.create' }, vm_record)
83
- ref
84
- end
85
-
86
- def create_server( name_label, template = nil, networks = [], extra_args = {})
87
- if name_label.is_a?(Hash)
88
- config = name_label.reject { |_k,v| v.nil? }
89
- ref = @connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VM.create' }, config)
90
- else
91
- Fog::Logger.deprecation(
92
- 'This api is deprecated. The only expected param is a hash with the attributes.' + "\n" +
93
- 'To create a server from a template, use #clone_server instead.'
94
- )
95
-
96
- if !networks.kind_of? Array
97
- raise "Invalid networks argument"
98
- end
99
-
100
- if template.kind_of? String
101
- template_string = template
102
- # try template by UUID
103
- template = servers.templates.find { |s| s.uuid == template_string }
104
- if template.nil?
105
- # Try with the template name just in case
106
- template = servers.get get_vm_by_name(template_string)
107
- end
108
- end
109
-
110
- if template.nil?
111
- raise "Invalid template"
112
- end
113
-
114
- raise "Template #{template_string} does not exist" if template.allowed_operations.nil?
115
- raise 'Clone Operation not Allowed' unless template.allowed_operations.include?('clone')
116
-
117
- # Clone the VM template
118
- ref = clone_server name_label, template.reference
119
- # Add additional NICs
120
- networks.each do |n|
121
- create_vif ref, n.reference
122
- end
123
- if !extra_args[:auto_start] == false
124
- @connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VM.provision'}, ref)
125
- start_vm( ref )
126
- end
127
- end
128
-
129
- ref
130
- end
131
- end
132
-
133
- class Mock
134
- def create_server( name_label, template = nil, network = nil, extra_args = {})
135
- Fog::Mock.not_implemented
136
- end
137
-
138
- def create_server_raw(config = {})
139
- Fog::Mock.not_implemented
140
- end
141
- end
142
- end
143
- end
144
- end
@@ -1,88 +0,0 @@
1
- module Fog
2
- module Compute
3
- class XenServer
4
- class Real
5
- #
6
- # Create a storage repository (SR)
7
- #
8
- # @see http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/api/?c=SR
9
- #
10
- # @param [String] host_ref host reference
11
- # @param [String] name_label repository label
12
- # @param [String] type storage repository type
13
- # @param [String] name_description storage repository description
14
- # @param [Hash] device_config used to specify block device path, like
15
- # { :device => /dev/sdb } for example
16
- # @param [String] physical_size '0' will use the whole device (FIXME
17
- # needs confirmation)
18
- # @param [String] content_type the type of the SR's content.
19
- # According to Citrix documentation, used only to distinguish ISO
20
- # libraries from other SRs. Set it to 'iso' for storage repositories
21
- # that store a library of ISOs, 'user' or '' (empty) otherwise.
22
- # @see http://docs.vmd.citrix.com/XenServer/6.1.0/1.0/en_gb/reference.html#cli-xe-commands_sr
23
- # @param [String] shared
24
- #
25
- # @return [String] an OpaqueRef to the storage repository
26
- def create_sr( host_ref,
27
- name_label,
28
- type = '',
29
- name_description = '',
30
- device_config = {},
31
- physical_size = '0',
32
- content_type = 'user',
33
- shared = false,
34
- sm_config = {} )
35
-
36
- if host_ref.is_a?(Hash)
37
- config = host_ref
38
- extra_params = name_label
39
-
40
- [:physical_size, :name, :description, :type, :content_type, :shared, :sm_config].each do |attribute|
41
- raise "Missing Argument in first param: #{attribute}" if config[attribute].nil?
42
- end
43
-
44
- [:host_ref, :device_config].each do |attribute|
45
- raise "Missing Argument in second param: #{attribute}" if extra_params[attribute].nil?
46
- end
47
-
48
- @connection.request({ :parser => Fog::Parsers::XenServer::Base.new, :method => 'SR.create' },
49
- extra_params[:host_ref], extra_params[:device_config], config[:physical_size],
50
- config[:name], config[:description], config[:type], config[:content_type],
51
- config[:shared], config[:sm_config])
52
- else
53
- Fog::Logger.deprecation(
54
- 'This api is deprecated. The expected params are two hashes of attributes.'
55
- )
56
-
57
- @connection.request(
58
- {:parser => Fog::Parsers::XenServer::Base.new, :method => 'SR.create'},
59
- host_ref,
60
- device_config || {},
61
- physical_size || '0',
62
- name_label,
63
- name_description || '',
64
- type,
65
- content_type,
66
- shared || false,
67
- sm_config || {}
68
- )
69
- end
70
- end
71
- end
72
-
73
- class Mock
74
- def create_sr( host_ref,
75
- name_label,
76
- type,
77
- name_description = nil,
78
- device_config = {},
79
- physical_size = '0',
80
- content_type = nil,
81
- shared = false,
82
- sm_config = {} )
83
- Fog::Mock.not_implemented
84
- end
85
- end
86
- end
87
- end
88
- end