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,94 +0,0 @@
1
- # Storage Repositories
2
-
3
- Official storage repository Citrix API documentation:
4
-
5
- http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/api/?c=SR
6
-
7
- Create the XenServer connection first, as usual:
8
-
9
- ```ruby
10
- require 'fog'
11
- require 'net/scp'
12
- require 'pp'
13
-
14
- xenserver = Fog::Compute.new({
15
- :provider => 'XenServer',
16
- :xenserver_url => 'xenserver-test',
17
- :xenserver_username => 'root',
18
- :xenserver_password => 'secret',
19
- })
20
- ```
21
-
22
- Listing the available storage repositories:
23
-
24
- ```ruby
25
- xenserver.storage_repositories
26
- ```
27
-
28
-
29
- Filter storage repositories by content type:
30
-
31
- ```ruby
32
- xenserver.storage_repositories.select { |sr| sr.content_type == 'iso' }
33
- ```
34
-
35
- Filter storage repositories by allowed operations:
36
-
37
- ```ruby
38
- rw_srs = xenserver.storage_repositories.select do |sr|
39
- # Are we allowed to create a VDI here?
40
- sr.allowed_operations.include? 'vdi_create'
41
- end
42
- ```
43
-
44
- Print some attributes of the first SR found:
45
-
46
- ```ruby
47
- sr = rw_srs.first
48
- puts sr.name
49
- puts sr.description
50
- puts sr.type
51
- puts sr.tags
52
- # in bytes
53
- puts sr.physical_size
54
- puts sr.physical_utilisation
55
- # sum of virtual_sizes of all VDIs in this storage repository (in bytes)
56
- puts sr.virtual_allocation
57
- ```
58
-
59
- List virtual disk images available and print some VDI's attributes:
60
-
61
- ```ruby
62
- sr.vdis.each do |vdi|
63
- # http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/api/?c=VDI
64
- puts vdi.uuid
65
- puts vdi.is_a_snapshot
66
- puts vdi.name
67
- # in bytes
68
- puts vdi.physical_utilisation
69
- puts vdi.virtual_size
70
- puts vdi.read_only
71
- # ["update", "resize", "destroy", "clone", "copy", "snapshot"],
72
- puts vdi.allowed_operations
73
- end
74
- ```
75
-
76
- Create a new VDI in this storage repository:
77
-
78
- ```ruby
79
- vdi = xenserver.vdis.create :name => 'super-vdi',
80
- :storage_repository => sr,
81
- :description => 'my super-vdi',
82
- :virtual_size => '1073741824' # 1 GB
83
- ```
84
-
85
- I have an ext3 storage repository and this creates a 1GB VHD file there:
86
-
87
- [root@xenserver ~]# vhd-util query -v -n /var/run/sr-mount/6edd263a-2da1-7533-840c-768417b5be25/4050057d-a3a8-4c00-8f2e-cf5531232921.vhd
88
- 1024
89
-
90
- Destroy the VDI:
91
-
92
- ```ruby
93
- vdi.destroy
94
- ```
@@ -1,22 +0,0 @@
1
- require 'fog/core/model'
2
-
3
- module Fog
4
- module Compute
5
- class XenServer
6
- class Blob < Fog::Model
7
- # API Reference here:
8
- # http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=blob
9
-
10
- identity :reference
11
-
12
- attribute :last_updated
13
- attribute :mime_type
14
- attribute :description, :aliases => :name_description
15
- attribute :name, :aliases => :name_label
16
- attribute :public
17
- attribute :size
18
- attribute :uuid
19
- end
20
- end
21
- end
22
- end
@@ -1,25 +0,0 @@
1
- require 'fog/core/collection'
2
- require 'fog/xenserver/models/compute/blob'
3
-
4
- module Fog
5
- module Compute
6
- class XenServer
7
- class Blobs < Fog::Collection
8
- model Fog::Compute::XenServer::Blob
9
-
10
- def all(options={})
11
- data = service.get_records 'blob'
12
- load(data)
13
- end
14
-
15
- def get( blob_ref )
16
- if blob_ref && blob = service.get_record( blob_ref, 'blob' )
17
- new(blob)
18
- else
19
- nil
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
@@ -1,23 +0,0 @@
1
- require 'fog/core/model'
2
-
3
- module Fog
4
- module Compute
5
- class XenServer
6
- class Bond < Fog::Model
7
- # API Reference here:
8
- # http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=Bond
9
-
10
- identity :reference
11
-
12
- attribute :links_up
13
- attribute :__master, :aliases => :master
14
- attribute :mode
15
- attribute :other_config
16
- attribute :__primary_slave, :aliases => :primary_slave
17
- attribute :properties
18
- attribute :__slaves, :aliases => :slaves
19
- attribute :uuid
20
- end
21
- end
22
- end
23
- end
@@ -1,25 +0,0 @@
1
- require 'fog/core/collection'
2
- require 'fog/xenserver/models/compute/bond'
3
-
4
- module Fog
5
- module Compute
6
- class XenServer
7
- class Bonds < Fog::Collection
8
- model Fog::Compute::XenServer::Bond
9
-
10
- def all(options={})
11
- data = service.get_records 'Bond'
12
- load(data)
13
- end
14
-
15
- def get( bond_ref )
16
- if bond_ref && bond = service.get_record( bond_ref, 'Bond' )
17
- new(bond)
18
- else
19
- nil
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
@@ -1,29 +0,0 @@
1
- require 'fog/core/model'
2
-
3
- module Fog
4
- module Compute
5
- class XenServer
6
- class Console < Fog::Model
7
- # API Reference here:
8
- # http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=console
9
-
10
- identity :reference
11
-
12
- attribute :location
13
- attribute :other_config
14
- attribute :protocol
15
- attribute :uuid
16
- attribute :__vm, aliases: :VM
17
-
18
- def vm
19
- begin
20
- vm = service.servers.get __vm
21
- rescue Fog::XenServer::RequestFailed => e
22
- vm = nil
23
- end
24
- vm
25
- end
26
- end
27
- end
28
- end
29
- end
@@ -1,25 +0,0 @@
1
- require 'fog/core/collection'
2
- require 'fog/xenserver/models/compute/console'
3
-
4
- module Fog
5
- module Compute
6
- class XenServer
7
- class Consoles < Fog::Collection
8
- model Fog::Compute::XenServer::Console
9
-
10
- def all(options={})
11
- data = service.get_records 'console'
12
- load(data)
13
- end
14
-
15
- def get( console_ref )
16
- if console_ref && console = service.get_record( console_ref, 'console' )
17
- new(console)
18
- else
19
- nil
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
@@ -1,19 +0,0 @@
1
- require 'fog/core/model'
2
-
3
- module Fog
4
- module Compute
5
- class XenServer
6
- class CrashDump < Fog::Model
7
- # API Reference here:
8
- # http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=crashdump
9
-
10
- identity :reference
11
-
12
- attribute :other_config
13
- attribute :__vdi, :aliases => :VDI
14
- attribute :__vm, :aliases => :VM
15
- attribute :uuid
16
- end
17
- end
18
- end
19
- end
@@ -1,25 +0,0 @@
1
- require 'fog/core/collection'
2
- require 'fog/xenserver/models/compute/crash_dump'
3
-
4
- module Fog
5
- module Compute
6
- class XenServer
7
- class Bonds < Fog::Collection
8
- model Fog::Compute::XenServer::CrashDump
9
-
10
- def all(options={})
11
- data = service.get_records 'crashdump'
12
- load(data)
13
- end
14
-
15
- def get( crashdump_ref )
16
- if crashdump_ref && crashdump = service.get_record( crashdump_ref, 'crashdump' )
17
- new(crashdump)
18
- else
19
- nil
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
@@ -1,17 +0,0 @@
1
- require 'fog/core/model'
2
-
3
- module Fog
4
- module Compute
5
- class XenServer
6
- class DrTask < Fog::Model
7
- # API Reference here:
8
- # http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=DR_task
9
-
10
- identity :reference
11
-
12
- attribute :__introduced_srs, :aliases => :introduced_SRs
13
- attribute :uuid
14
- end
15
- end
16
- end
17
- end
@@ -1,25 +0,0 @@
1
- require 'fog/core/collection'
2
- require 'fog/xenserver/models/compute/dr_task'
3
-
4
- module Fog
5
- module Compute
6
- class XenServer
7
- class DrTasks < Fog::Collection
8
- model Fog::Compute::XenServer::DrTask
9
-
10
- def all(options={})
11
- data = service.get_records 'DR_task'
12
- load(data)
13
- end
14
-
15
- def get( dr_task_ref )
16
- if dr_task_ref && dr_task = service.get_record( dr_task_ref, 'DR_task' )
17
- new(dr_task)
18
- else
19
- nil
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
@@ -1,22 +0,0 @@
1
- require 'fog/core/model'
2
-
3
- module Fog
4
- module Compute
5
- class XenServer
6
- class GpuGroup < Fog::Model
7
- # API Reference here:
8
- # http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=GPU_group
9
-
10
- identity :reference
11
-
12
- attribute :gpu_types, :aliases => :GPU_types
13
- attribute :description, :aliases => :name_description
14
- attribute :name, :aliases => :name_label
15
- attribute :other_config
16
- attribute :__pgpus, :aliases => :PGPUs
17
- attribute :__vgpus, :aliases => :VGPUs
18
- attribute :uuid
19
- end
20
- end
21
- end
22
- end
@@ -1,25 +0,0 @@
1
- require 'fog/core/collection'
2
- require 'fog/xenserver/models/compute/gpu_group'
3
-
4
- module Fog
5
- module Compute
6
- class XenServer
7
- class GpuGroups < Fog::Collection
8
- model Fog::Compute::XenServer::GpuGroup
9
-
10
- def all(options={})
11
- data = service.get_records 'GPU_group'
12
- load(data)
13
- end
14
-
15
- def get( gpu_group_ref )
16
- if gpu_group_ref && gpu_group = service.get_record( gpu_group_ref, 'GPU_group' )
17
- new(gpu_group)
18
- else
19
- nil
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
@@ -1,26 +0,0 @@
1
- require 'fog/core/model'
2
-
3
- module Fog
4
- module Compute
5
- class XenServer
6
- class GuestMetrics < Fog::Model
7
- # API Reference here:
8
- # http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=VM_guest_metrics
9
-
10
- identity :reference
11
-
12
- attribute :uuid
13
- attribute :disk
14
- attribute :last_updated
15
- attribute :live
16
- attribute :memory
17
- attribute :networks
18
- attribute :os_version
19
- attribute :other
20
- attribute :other_config
21
- attribute :pv_drivers_up_to_date, :aliases => :PV_drivers_up_to_date
22
- attribute :pv_drivers_version, :aliases => :PV_drivers_version
23
- end
24
- end
25
- end
26
- end
@@ -1,156 +0,0 @@
1
- require 'fog/core/model'
2
-
3
- module Fog
4
- module Compute
5
- class XenServer
6
- class Host < Fog::Model
7
- # API Reference here:
8
- # http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=host
9
-
10
- identity :reference
11
-
12
- attribute :name, :aliases => :name_label
13
- attribute :uuid
14
- attribute :address
15
- attribute :allowed_operations
16
- attribute :api_version_major, :aliases => :API_version_major
17
- attribute :api_version_minor, :aliases => :API_version_minor
18
- attribute :api_version_vendor, :aliases => :API_version_vendor
19
- attribute :api_version_vendor_implementation, :aliases => :API_version_vendor_implementation
20
- attribute :bios_strings
21
- attribute :blobs
22
- attribute :capabilities
23
- attribute :chipset_info
24
- attribute :cpu_configuration
25
- attribute :cpu_info
26
- attribute :__crash_dump_sr, :aliases => :crash_dump_sr
27
- attribute :__crashdumps, :aliases => :crashdumps
28
- attribute :current_operations
29
- attribute :enabled
30
- attribute :external_auth_configuration
31
- attribute :external_auth_service_name
32
- attribute :external_auth_type
33
- attribute :guest_vcpus_params, :aliases => :guest_VCPUs_params
34
- attribute :ha_network_peers
35
- attribute :ha_statefiles
36
- attribute :hostname
37
- attribute :license_params
38
- attribute :license_server
39
- attribute :__local_cache_sr, :aliases => :local_cache_sr
40
- attribute :logging
41
- attribute :memory_overhead
42
- attribute :__metrics, :aliases => :metrics
43
- attribute :description, :aliases => :name_description
44
- attribute :other_config
45
- attribute :patches
46
- attribute :__pbds, :aliases => :PBDs
47
- attribute :__pcis, :aliases => :PCIs
48
- attribute :__pgpus, :aliases => :PGPUs
49
- attribute :__pifs, :aliases => :PIFs
50
- attribute :power_on_config
51
- attribute :power_on_mode
52
- attribute :__resident_vms, :aliases => :resident_VMs
53
- attribute :sched_policy
54
- attribute :supported_bootloaders
55
- attribute :suspend_image_sr
56
- attribute :tags
57
- attribute :__host_cpus, :aliases => :host_CPUs
58
- attribute :edition
59
- attribute :software_version
60
-
61
- def pifs
62
- __pifs.map { |pif| service.pifs.get pif }
63
- end
64
-
65
- def pbds
66
- __pbds.map { |pbd| service.pbds.get pbd }
67
- end
68
-
69
- def resident_servers
70
- __resident_vms.map { |ref| service.servers.get ref }
71
- end
72
-
73
- def resident_vms
74
- resident_servers
75
- end
76
-
77
- def host_cpus
78
- cpus = []
79
- (__host_cpus || []).each do |ref|
80
- cpu_ref = service.get_record(ref, 'host_cpu' )
81
- cpu_ref[:service] = service
82
- cpus << Fog::Compute::XenServer::HostCpu.new(cpu_ref)
83
- end
84
- cpus
85
- end
86
-
87
- def metrics
88
- return nil unless __metrics
89
- rec = service.get_record(__metrics, 'host_metrics' )
90
- Fog::Compute::XenServer::HostMetrics.new(rec)
91
- end
92
-
93
- #
94
- # Reboot the host disabling it first unless auto_disable is
95
- # set to false
96
- #
97
- # This function can only be called if there are no currently running
98
- # VMs on the host and it is disabled. If there are running VMs, it will
99
- # raise an exception.
100
- #
101
- # @param [Boolean] auto_disable disable the host first
102
- #
103
- # @see http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/api/?c=host
104
- #
105
- def reboot(auto_disable = true)
106
- disable if auto_disable
107
- service.reboot_host(reference)
108
- end
109
-
110
- #
111
- # Puts the host into a state in which no new VMs can be started.
112
- # Currently active VMs on the host continue to execute.
113
- #
114
- # @see http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/api/?c=host
115
- #
116
- def disable
117
- service.disable_host(reference)
118
- end
119
-
120
- #
121
- # Puts the host into a state in which new VMs can be started.
122
- #
123
- # @see http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/api/?c=host
124
- #
125
- def enable
126
- service.enable_host(reference)
127
- end
128
-
129
- #
130
- # Shutdown the host disabling it first unless auto_disable is
131
- # set to false.
132
- #
133
- # This function can only be called if there are no currently running
134
- # VMs on the host and it is disabled. If there are running VMs, it will
135
- # raise an exception.
136
- #
137
- # @param [Boolean] auto_disable disable the host first
138
- #
139
- # @see http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/api/?c=host
140
- #
141
- def shutdown(auto_disable = true)
142
- disable if auto_disable
143
- service.shutdown_host(reference)
144
- end
145
-
146
- def set_attribute(name, *val)
147
- data = service.set_attribute( 'host', reference, name, *val )
148
- # Do not reload automatically for performance reasons
149
- # We can set multiple attributes at the same time and
150
- # then reload manually
151
- #reload
152
- end
153
- end
154
- end
155
- end
156
- end