fog-vcloud-director 0.1.10 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (331) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +2 -0
  3. data/.rubocop.yml +4 -240
  4. data/.rubocop_local.yml +1 -0
  5. data/.travis.yml +6 -10
  6. data/README.md +54 -51
  7. data/docs/examples-vapp-instantiate.md +2 -2
  8. data/docs/examples-vm-reconfigure.md +122 -0
  9. data/docs/vm-to-reconfigure.xml +373 -0
  10. data/fog-vcloud-director.gemspec +6 -3
  11. data/lib/fog/vcloud_director.rb +14 -1
  12. data/lib/fog/vcloud_director/compute.rb +45 -19
  13. data/lib/fog/vcloud_director/core.rb +3 -3
  14. data/lib/fog/vcloud_director/generators/compute/compose_common.rb +16 -3
  15. data/lib/fog/vcloud_director/generators/compute/compose_vapp.rb +3 -3
  16. data/lib/fog/vcloud_director/generators/compute/create_snapshot.rb +3 -3
  17. data/lib/fog/vcloud_director/generators/compute/customization.rb +3 -3
  18. data/lib/fog/vcloud_director/generators/compute/disks.rb +3 -3
  19. data/lib/fog/vcloud_director/generators/compute/edge_gateway_service_configuration.rb +3 -3
  20. data/lib/fog/vcloud_director/generators/compute/instantiate_vapp_template_params.rb +3 -3
  21. data/lib/fog/vcloud_director/generators/compute/metadata.rb +3 -3
  22. data/lib/fog/vcloud_director/generators/compute/org_vdc_network.rb +4 -4
  23. data/lib/fog/vcloud_director/generators/compute/recompose_vapp.rb +3 -3
  24. data/lib/fog/vcloud_director/generators/compute/reconfigure_vm.rb +189 -0
  25. data/lib/fog/vcloud_director/generators/compute/vapp.rb +3 -4
  26. data/lib/fog/vcloud_director/generators/compute/vm.rb +3 -3
  27. data/lib/fog/vcloud_director/generators/compute/vm_network.rb +3 -3
  28. data/lib/fog/vcloud_director/models/compute/catalog.rb +2 -4
  29. data/lib/fog/vcloud_director/models/compute/catalog_item.rb +2 -4
  30. data/lib/fog/vcloud_director/models/compute/catalog_items.rb +3 -4
  31. data/lib/fog/vcloud_director/models/compute/catalogs.rb +4 -5
  32. data/lib/fog/vcloud_director/models/compute/custom_field.rb +2 -4
  33. data/lib/fog/vcloud_director/models/compute/custom_fields.rb +3 -3
  34. data/lib/fog/vcloud_director/models/compute/disk.rb +5 -6
  35. data/lib/fog/vcloud_director/models/compute/disks.rb +4 -5
  36. data/lib/fog/vcloud_director/models/compute/media.rb +2 -4
  37. data/lib/fog/vcloud_director/models/compute/medias.rb +3 -4
  38. data/lib/fog/vcloud_director/models/compute/network.rb +2 -4
  39. data/lib/fog/vcloud_director/models/compute/networks.rb +3 -4
  40. data/lib/fog/vcloud_director/models/compute/organization.rb +2 -4
  41. data/lib/fog/vcloud_director/models/compute/organizations.rb +3 -4
  42. data/lib/fog/vcloud_director/models/compute/tag.rb +3 -4
  43. data/lib/fog/vcloud_director/models/compute/tags.rb +3 -4
  44. data/lib/fog/vcloud_director/models/compute/task.rb +2 -4
  45. data/lib/fog/vcloud_director/models/compute/tasks.rb +3 -4
  46. data/lib/fog/vcloud_director/models/compute/template_vm.rb +2 -3
  47. data/lib/fog/vcloud_director/models/compute/template_vms.rb +5 -6
  48. data/lib/fog/vcloud_director/models/compute/vapp.rb +36 -18
  49. data/lib/fog/vcloud_director/models/compute/vapp_template.rb +2 -4
  50. data/lib/fog/vcloud_director/models/compute/vapp_templates.rb +4 -5
  51. data/lib/fog/vcloud_director/models/compute/vapps.rb +3 -4
  52. data/lib/fog/vcloud_director/models/compute/vdc.rb +2 -4
  53. data/lib/fog/vcloud_director/models/compute/vdcs.rb +3 -4
  54. data/lib/fog/vcloud_director/models/compute/vm.rb +19 -39
  55. data/lib/fog/vcloud_director/models/compute/vm_customization.rb +2 -4
  56. data/lib/fog/vcloud_director/models/compute/vm_customizations.rb +3 -4
  57. data/lib/fog/vcloud_director/models/compute/vm_network.rb +2 -4
  58. data/lib/fog/vcloud_director/models/compute/vm_networks.rb +3 -4
  59. data/lib/fog/vcloud_director/models/compute/vms.rb +4 -5
  60. data/lib/fog/vcloud_director/parsers/compute/disks.rb +3 -3
  61. data/lib/fog/vcloud_director/parsers/compute/metadata.rb +3 -3
  62. data/lib/fog/vcloud_director/parsers/compute/network.rb +3 -3
  63. data/lib/fog/vcloud_director/parsers/compute/vapp.rb +93 -0
  64. data/lib/fog/vcloud_director/parsers/compute/vm.rb +6 -65
  65. data/lib/fog/vcloud_director/parsers/compute/vm_customization.rb +3 -3
  66. data/lib/fog/vcloud_director/parsers/compute/vm_network.rb +3 -3
  67. data/lib/fog/vcloud_director/parsers/compute/vm_parser_helper.rb +55 -3
  68. data/lib/fog/vcloud_director/parsers/compute/vms.rb +5 -26
  69. data/lib/fog/vcloud_director/parsers/compute/vms_by_metadata.rb +3 -3
  70. data/lib/fog/vcloud_director/query.rb +0 -1
  71. data/lib/fog/vcloud_director/requests/compute/delete_catalog_item.rb +2 -2
  72. data/lib/fog/vcloud_director/requests/compute/delete_catalog_item_metadata_item_metadata.rb +3 -3
  73. data/lib/fog/vcloud_director/requests/compute/delete_disk.rb +3 -3
  74. data/lib/fog/vcloud_director/requests/compute/delete_disk_metadata_item_metadata.rb +3 -3
  75. data/lib/fog/vcloud_director/requests/compute/delete_logout.rb +2 -2
  76. data/lib/fog/vcloud_director/requests/compute/delete_media.rb +4 -4
  77. data/lib/fog/vcloud_director/requests/compute/delete_media_metadata_item_metadata.rb +3 -3
  78. data/lib/fog/vcloud_director/requests/compute/delete_network.rb +4 -4
  79. data/lib/fog/vcloud_director/requests/compute/delete_shadow_vm.rb +2 -2
  80. data/lib/fog/vcloud_director/requests/compute/delete_vapp.rb +5 -5
  81. data/lib/fog/vcloud_director/requests/compute/delete_vapp_metadata_item_metadata.rb +3 -3
  82. data/lib/fog/vcloud_director/requests/compute/delete_vapp_template.rb +2 -2
  83. data/lib/fog/vcloud_director/requests/compute/delete_vapp_template_metadata_item_metadata.rb +3 -3
  84. data/lib/fog/vcloud_director/requests/compute/get_allocated_ip_addresses.rb +2 -2
  85. data/lib/fog/vcloud_director/requests/compute/get_catalog.rb +4 -4
  86. data/lib/fog/vcloud_director/requests/compute/get_catalog_item.rb +3 -3
  87. data/lib/fog/vcloud_director/requests/compute/get_catalog_item_metadata.rb +2 -2
  88. data/lib/fog/vcloud_director/requests/compute/get_catalog_item_metadata_item_metadata.rb +3 -3
  89. data/lib/fog/vcloud_director/requests/compute/get_catalog_metadata.rb +2 -2
  90. data/lib/fog/vcloud_director/requests/compute/get_catalog_metadata_item_metadata.rb +3 -3
  91. data/lib/fog/vcloud_director/requests/compute/get_catalogs_from_query.rb +3 -3
  92. data/lib/fog/vcloud_director/requests/compute/get_control_access_params_catalog.rb +2 -2
  93. data/lib/fog/vcloud_director/requests/compute/get_control_access_params_vapp.rb +2 -2
  94. data/lib/fog/vcloud_director/requests/compute/get_cpu_rasd_item.rb +3 -3
  95. data/lib/fog/vcloud_director/requests/compute/get_current_session.rb +2 -2
  96. data/lib/fog/vcloud_director/requests/compute/get_disk.rb +4 -4
  97. data/lib/fog/vcloud_director/requests/compute/get_disk_metadata.rb +2 -2
  98. data/lib/fog/vcloud_director/requests/compute/get_disk_metadata_item_metadata.rb +3 -3
  99. data/lib/fog/vcloud_director/requests/compute/get_disk_owner.rb +4 -4
  100. data/lib/fog/vcloud_director/requests/compute/get_disks_from_query.rb +3 -3
  101. data/lib/fog/vcloud_director/requests/compute/get_disks_rasd_items_list.rb +3 -3
  102. data/lib/fog/vcloud_director/requests/compute/get_edge_gateway.rb +4 -4
  103. data/lib/fog/vcloud_director/requests/compute/get_entity.rb +2 -2
  104. data/lib/fog/vcloud_director/requests/compute/get_execute_query.rb +2 -2
  105. data/lib/fog/vcloud_director/requests/compute/get_groups_from_query.rb +3 -3
  106. data/lib/fog/vcloud_director/requests/compute/get_guest_customization_system_section_vapp.rb +3 -3
  107. data/lib/fog/vcloud_director/requests/compute/get_guest_customization_system_section_vapp_template.rb +2 -2
  108. data/lib/fog/vcloud_director/requests/compute/get_href.rb +2 -2
  109. data/lib/fog/vcloud_director/requests/compute/get_lease_settings_section_vapp.rb +4 -4
  110. data/lib/fog/vcloud_director/requests/compute/get_lease_settings_section_vapp_template.rb +2 -2
  111. data/lib/fog/vcloud_director/requests/compute/get_media.rb +4 -4
  112. data/lib/fog/vcloud_director/requests/compute/get_media_drives_rasd_items_list.rb +3 -3
  113. data/lib/fog/vcloud_director/requests/compute/get_media_metadata.rb +2 -2
  114. data/lib/fog/vcloud_director/requests/compute/get_media_metadata_item_metadata.rb +3 -3
  115. data/lib/fog/vcloud_director/requests/compute/get_media_owner.rb +4 -4
  116. data/lib/fog/vcloud_director/requests/compute/get_medias_from_query.rb +3 -3
  117. data/lib/fog/vcloud_director/requests/compute/get_memory_rasd_item.rb +3 -3
  118. data/lib/fog/vcloud_director/requests/compute/get_metadata.rb +3 -3
  119. data/lib/fog/vcloud_director/requests/compute/get_network.rb +5 -5
  120. data/lib/fog/vcloud_director/requests/compute/get_network_cards_items_list.rb +3 -3
  121. data/lib/fog/vcloud_director/requests/compute/get_network_complete.rb +4 -4
  122. data/lib/fog/vcloud_director/requests/compute/get_network_config_section_vapp.rb +3 -3
  123. data/lib/fog/vcloud_director/requests/compute/get_network_config_section_vapp_template.rb +2 -2
  124. data/lib/fog/vcloud_director/requests/compute/get_network_connection_system_section_vapp.rb +3 -3
  125. data/lib/fog/vcloud_director/requests/compute/get_network_connection_system_section_vapp_template.rb +2 -2
  126. data/lib/fog/vcloud_director/requests/compute/get_network_metadata.rb +2 -2
  127. data/lib/fog/vcloud_director/requests/compute/get_network_metadata_item_metadata.rb +3 -3
  128. data/lib/fog/vcloud_director/requests/compute/get_network_section_vapp.rb +2 -2
  129. data/lib/fog/vcloud_director/requests/compute/get_network_section_vapp_template.rb +2 -2
  130. data/lib/fog/vcloud_director/requests/compute/get_operating_system_section.rb +3 -3
  131. data/lib/fog/vcloud_director/requests/compute/get_org_settings.rb +2 -2
  132. data/lib/fog/vcloud_director/requests/compute/get_org_vdc_gateways.rb +4 -4
  133. data/lib/fog/vcloud_director/requests/compute/get_organization.rb +4 -4
  134. data/lib/fog/vcloud_director/requests/compute/get_organization_metadata.rb +2 -2
  135. data/lib/fog/vcloud_director/requests/compute/get_organization_metadata_item_metadata.rb +3 -3
  136. data/lib/fog/vcloud_director/requests/compute/get_organizations.rb +2 -2
  137. data/lib/fog/vcloud_director/requests/compute/get_organizations_from_query.rb +3 -3
  138. data/lib/fog/vcloud_director/requests/compute/get_product_sections_vapp.rb +2 -2
  139. data/lib/fog/vcloud_director/requests/compute/get_product_sections_vapp_template.rb +2 -2
  140. data/lib/fog/vcloud_director/requests/compute/get_request.rb +2 -2
  141. data/lib/fog/vcloud_director/requests/compute/get_runtime_info_section_type.rb +3 -3
  142. data/lib/fog/vcloud_director/requests/compute/get_serial_ports_items_list.rb +2 -2
  143. data/lib/fog/vcloud_director/requests/compute/get_shadow_vm.rb +2 -2
  144. data/lib/fog/vcloud_director/requests/compute/get_snapshot_section.rb +3 -3
  145. data/lib/fog/vcloud_director/requests/compute/get_startup_section.rb +3 -3
  146. data/lib/fog/vcloud_director/requests/compute/get_supported_systems_info.rb +2 -2
  147. data/lib/fog/vcloud_director/requests/compute/get_supported_versions.rb +2 -2
  148. data/lib/fog/vcloud_director/requests/compute/get_task.rb +4 -4
  149. data/lib/fog/vcloud_director/requests/compute/get_task_list.rb +5 -5
  150. data/lib/fog/vcloud_director/requests/compute/get_template_vm.rb +4 -50
  151. data/lib/fog/vcloud_director/requests/compute/get_template_vms.rb +3 -16
  152. data/lib/fog/vcloud_director/requests/compute/get_thumbnail.rb +2 -2
  153. data/lib/fog/vcloud_director/requests/compute/get_users_from_query.rb +3 -3
  154. data/lib/fog/vcloud_director/requests/compute/get_vapp.rb +9 -8
  155. data/lib/fog/vcloud_director/requests/compute/get_vapp_metadata.rb +4 -4
  156. data/lib/fog/vcloud_director/requests/compute/get_vapp_metadata_item_metadata.rb +3 -3
  157. data/lib/fog/vcloud_director/requests/compute/get_vapp_ovf_descriptor.rb +2 -2
  158. data/lib/fog/vcloud_director/requests/compute/get_vapp_owner.rb +4 -4
  159. data/lib/fog/vcloud_director/requests/compute/get_vapp_template.rb +2 -2
  160. data/lib/fog/vcloud_director/requests/compute/get_vapp_template_customization_system_section.rb +2 -2
  161. data/lib/fog/vcloud_director/requests/compute/get_vapp_template_metadata.rb +2 -2
  162. data/lib/fog/vcloud_director/requests/compute/get_vapp_template_metadata_item_metadata.rb +3 -3
  163. data/lib/fog/vcloud_director/requests/compute/get_vapp_template_ovf_descriptor.rb +2 -2
  164. data/lib/fog/vcloud_director/requests/compute/get_vapp_template_owner.rb +2 -2
  165. data/lib/fog/vcloud_director/requests/compute/get_vapp_templates_from_query.rb +3 -3
  166. data/lib/fog/vcloud_director/requests/compute/get_vapps_in_lease_from_query.rb +3 -3
  167. data/lib/fog/vcloud_director/requests/compute/get_vcloud.rb +2 -2
  168. data/lib/fog/vcloud_director/requests/compute/get_vdc.rb +4 -4
  169. data/lib/fog/vcloud_director/requests/compute/get_vdc_metadata.rb +2 -2
  170. data/lib/fog/vcloud_director/requests/compute/get_vdc_metadata_item_metadata.rb +3 -3
  171. data/lib/fog/vcloud_director/requests/compute/get_vdc_storage_class.rb +4 -4
  172. data/lib/fog/vcloud_director/requests/compute/get_vdc_storage_class_metadata.rb +2 -2
  173. data/lib/fog/vcloud_director/requests/compute/get_vdc_storage_class_metadata_item_metadata.rb +3 -3
  174. data/lib/fog/vcloud_director/requests/compute/get_vdcs_from_query.rb +3 -3
  175. data/lib/fog/vcloud_director/requests/compute/get_virtual_hardware_section.rb +2 -2
  176. data/lib/fog/vcloud_director/requests/compute/get_vm.rb +3 -49
  177. data/lib/fog/vcloud_director/requests/compute/get_vm_capabilities.rb +3 -3
  178. data/lib/fog/vcloud_director/requests/compute/get_vm_compliance_results.rb +2 -2
  179. data/lib/fog/vcloud_director/requests/compute/get_vm_customization.rb +3 -3
  180. data/lib/fog/vcloud_director/requests/compute/get_vm_disks.rb +3 -3
  181. data/lib/fog/vcloud_director/requests/compute/get_vm_network.rb +3 -3
  182. data/lib/fog/vcloud_director/requests/compute/get_vm_pending_question.rb +2 -2
  183. data/lib/fog/vcloud_director/requests/compute/get_vms_by_metadata.rb +3 -3
  184. data/lib/fog/vcloud_director/requests/compute/get_vms_disk_attached_to.rb +3 -3
  185. data/lib/fog/vcloud_director/requests/compute/get_vms_in_lease_from_query.rb +3 -3
  186. data/lib/fog/vcloud_director/requests/compute/instantiate_vapp_template.rb +6 -6
  187. data/lib/fog/vcloud_director/requests/compute/post_acquire_mks_ticket.rb +3 -3
  188. data/lib/fog/vcloud_director/requests/compute/post_acquire_ticket.rb +3 -3
  189. data/lib/fog/vcloud_director/requests/compute/post_answer_vm_pending_question.rb +2 -2
  190. data/lib/fog/vcloud_director/requests/compute/post_attach_disk.rb +2 -2
  191. data/lib/fog/vcloud_director/requests/compute/post_cancel_task.rb +3 -3
  192. data/lib/fog/vcloud_director/requests/compute/post_capture_vapp.rb +2 -2
  193. data/lib/fog/vcloud_director/requests/compute/post_check_vm_compliance.rb +2 -2
  194. data/lib/fog/vcloud_director/requests/compute/post_clone_media.rb +4 -4
  195. data/lib/fog/vcloud_director/requests/compute/post_clone_vapp.rb +2 -2
  196. data/lib/fog/vcloud_director/requests/compute/post_clone_vapp_template.rb +2 -2
  197. data/lib/fog/vcloud_director/requests/compute/post_compose_vapp.rb +3 -3
  198. data/lib/fog/vcloud_director/requests/compute/post_configure_edge_gateway_services.rb +4 -4
  199. data/lib/fog/vcloud_director/requests/compute/post_consolidate_vm_vapp.rb +2 -2
  200. data/lib/fog/vcloud_director/requests/compute/post_consolidate_vm_vapp_template.rb +2 -2
  201. data/lib/fog/vcloud_director/requests/compute/post_create_catalog_item.rb +5 -5
  202. data/lib/fog/vcloud_director/requests/compute/post_create_org_vdc_network.rb +4 -4
  203. data/lib/fog/vcloud_director/requests/compute/post_create_snapshot.rb +3 -3
  204. data/lib/fog/vcloud_director/requests/compute/post_deploy_vapp.rb +2 -2
  205. data/lib/fog/vcloud_director/requests/compute/post_detach_disk.rb +2 -2
  206. data/lib/fog/vcloud_director/requests/compute/post_disable_nested_hv.rb +2 -2
  207. data/lib/fog/vcloud_director/requests/compute/post_disable_vapp_template_download.rb +2 -2
  208. data/lib/fog/vcloud_director/requests/compute/post_discard_vapp_state.rb +2 -2
  209. data/lib/fog/vcloud_director/requests/compute/post_eject_cd_rom.rb +2 -2
  210. data/lib/fog/vcloud_director/requests/compute/post_enable_nested_hv.rb +2 -2
  211. data/lib/fog/vcloud_director/requests/compute/post_enable_vapp_template_download.rb +2 -2
  212. data/lib/fog/vcloud_director/requests/compute/post_enter_maintenance_mode.rb +2 -2
  213. data/lib/fog/vcloud_director/requests/compute/post_exit_maintenance_mode.rb +2 -2
  214. data/lib/fog/vcloud_director/requests/compute/post_insert_cd_rom.rb +2 -2
  215. data/lib/fog/vcloud_director/requests/compute/post_install_vmware_tools.rb +2 -2
  216. data/lib/fog/vcloud_director/requests/compute/post_instantiate_vapp_template.rb +6 -6
  217. data/lib/fog/vcloud_director/requests/compute/post_login_session.rb +2 -2
  218. data/lib/fog/vcloud_director/requests/compute/post_power_off_vapp.rb +3 -3
  219. data/lib/fog/vcloud_director/requests/compute/post_power_on_vapp.rb +6 -6
  220. data/lib/fog/vcloud_director/requests/compute/post_reboot_vapp.rb +3 -3
  221. data/lib/fog/vcloud_director/requests/compute/post_recompose_vapp.rb +3 -3
  222. data/lib/fog/vcloud_director/requests/compute/post_reconfigure_vm.rb +6 -86
  223. data/lib/fog/vcloud_director/requests/compute/post_remove_all_snapshots.rb +2 -2
  224. data/lib/fog/vcloud_director/requests/compute/post_reset_vapp.rb +3 -3
  225. data/lib/fog/vcloud_director/requests/compute/post_revert_snapshot.rb +2 -2
  226. data/lib/fog/vcloud_director/requests/compute/post_shutdown_vapp.rb +3 -3
  227. data/lib/fog/vcloud_director/requests/compute/post_suspend_vapp.rb +3 -3
  228. data/lib/fog/vcloud_director/requests/compute/post_undeploy_vapp.rb +3 -3
  229. data/lib/fog/vcloud_director/requests/compute/post_update_catalog_item_metadata.rb +2 -2
  230. data/lib/fog/vcloud_director/requests/compute/post_update_disk_metadata.rb +2 -2
  231. data/lib/fog/vcloud_director/requests/compute/post_update_media_metadata.rb +2 -2
  232. data/lib/fog/vcloud_director/requests/compute/post_update_vapp_metadata.rb +4 -4
  233. data/lib/fog/vcloud_director/requests/compute/post_update_vapp_template_metadata.rb +2 -2
  234. data/lib/fog/vcloud_director/requests/compute/post_upgrade_hw_version.rb +2 -2
  235. data/lib/fog/vcloud_director/requests/compute/post_upload_disk.rb +4 -4
  236. data/lib/fog/vcloud_director/requests/compute/post_upload_media.rb +7 -7
  237. data/lib/fog/vcloud_director/requests/compute/post_upload_vapp_template.rb +2 -2
  238. data/lib/fog/vcloud_director/requests/compute/put_catalog_item_metadata_item_metadata.rb +3 -3
  239. data/lib/fog/vcloud_director/requests/compute/put_cpu.rb +4 -4
  240. data/lib/fog/vcloud_director/requests/compute/put_disk_metadata_item_metadata.rb +3 -3
  241. data/lib/fog/vcloud_director/requests/compute/put_disks.rb +3 -3
  242. data/lib/fog/vcloud_director/requests/compute/put_guest_customization_section_vapp.rb +2 -2
  243. data/lib/fog/vcloud_director/requests/compute/put_media_metadata_item_metadata.rb +3 -3
  244. data/lib/fog/vcloud_director/requests/compute/put_memory.rb +4 -4
  245. data/lib/fog/vcloud_director/requests/compute/put_metadata_value.rb +4 -4
  246. data/lib/fog/vcloud_director/requests/compute/put_network.rb +4 -4
  247. data/lib/fog/vcloud_director/requests/compute/put_network_connection_system_section_vapp.rb +4 -4
  248. data/lib/fog/vcloud_director/requests/compute/put_product_sections.rb +2 -2
  249. data/lib/fog/vcloud_director/requests/compute/put_vapp_metadata_item_metadata.rb +4 -4
  250. data/lib/fog/vcloud_director/requests/compute/put_vapp_name_and_description.rb +3 -3
  251. data/lib/fog/vcloud_director/requests/compute/put_vapp_template_metadata_item_metadata.rb +3 -3
  252. data/lib/fog/vcloud_director/requests/compute/put_vm.rb +5 -5
  253. data/lib/fog/vcloud_director/requests/compute/put_vm_capabilities.rb +2 -2
  254. data/lib/fog/vcloud_director/version.rb +1 -1
  255. data/spec/common_assertions.rb +42 -0
  256. data/spec/fixtures/empty_vm.xml +244 -0
  257. data/spec/fixtures/vm.xml +419 -0
  258. data/spec/secrets.yaml.templ +3 -0
  259. data/spec/spec_helper.rb +6 -6
  260. data/spec/vcloud_director/generators/compute/compose_common_spec.rb +3 -8
  261. data/spec/vcloud_director/generators/compute/compose_vapp_spec.rb +67 -0
  262. data/spec/vcloud_director/generators/compute/create_snapshot_spec.rb +4 -0
  263. data/spec/vcloud_director/generators/compute/customization_spec.rb +4 -0
  264. data/spec/vcloud_director/generators/compute/disks_spec.rb +4 -0
  265. data/spec/vcloud_director/generators/compute/edge_gateway_service_configuration_spec.rb +4 -0
  266. data/spec/vcloud_director/generators/compute/instantiate_vapp_template_params_spec.rb +7 -10
  267. data/spec/vcloud_director/generators/compute/metadata_spec.rb +4 -0
  268. data/spec/vcloud_director/generators/compute/org_vdc_network_spec.rb +4 -0
  269. data/spec/vcloud_director/generators/compute/recompose_vapp_spec.rb +4 -0
  270. data/spec/vcloud_director/generators/compute/reconfigure_vm_spec.rb +390 -0
  271. data/spec/vcloud_director/generators/compute/vapp_spec.rb +4 -0
  272. data/spec/vcloud_director/generators/compute/vm_network_spec.rb +4 -0
  273. data/spec/vcloud_director/generators/compute/vm_spec.rb +4 -0
  274. data/spec/vcloud_director/models/compute/basic_spec.rb +44 -0
  275. data/spec/vcloud_director/models/compute/vapps_spec.rb +104 -0
  276. data/spec/vcloud_director/models/compute/vms_spec.rb +80 -0
  277. data/spec/vcloud_director/parsers/compute/disks_spec.rb +4 -0
  278. data/spec/vcloud_director/parsers/compute/metadata_spec.rb +4 -0
  279. data/spec/vcloud_director/parsers/compute/network_spec.rb +4 -0
  280. data/spec/vcloud_director/parsers/compute/vm_customization_spec.rb +4 -0
  281. data/spec/vcloud_director/parsers/compute/vm_network_spec.rb +4 -0
  282. data/spec/vcloud_director/parsers/compute/vm_parser_helper_spec.rb +4 -0
  283. data/spec/vcloud_director/parsers/compute/vm_spec.rb +4 -0
  284. data/spec/vcloud_director/parsers/compute/vms_by_metadata_spec.rb +4 -0
  285. data/spec/vcloud_director/parsers/compute/vms_spec.rb +4 -0
  286. data/spec/vcloud_director/requests/compute/basic_spec.rb +212 -0
  287. data/spec/vcloud_director/requests/compute/get_vapp_spec.rb +11 -0
  288. data/spec/vcloud_director/requests/compute/get_vdc_spec.rb +10 -0
  289. data/spec/vcloud_director/requests/compute/instantiate_vapp_template_spec.rb +3 -5
  290. data/spec/vcloud_director/requests/compute/post_reconfigure_vm_spec.rb +26 -0
  291. data/spec/vcr_cassettes/authentication.yml +48 -0
  292. data/spec/vcr_cassettes/get_vapp-emptyvm.yml +806 -0
  293. data/spec/vcr_cassettes/get_vapp.yml +937 -0
  294. data/spec/vcr_cassettes/get_vapps-expired.yml +918 -0
  295. data/spec/vcr_cassettes/get_vapps-novms.yml +215 -0
  296. data/spec/vcr_cassettes/get_vapps.yml +118 -0
  297. data/spec/vcr_cassettes/get_vdc.yml +118 -0
  298. data/spec/vcr_cassettes/get_vm.yml +398 -0
  299. data/spec/vcr_cassettes/post_reconfigure_vm-virtual_hardware.yml +445 -0
  300. data/spec/vcr_spec_helper.rb +34 -0
  301. data/tasks/test.rake +3 -10
  302. data/tests/vcloud_director/ensure_list_tests.rb +1 -1
  303. data/tests/vcloud_director/generators/compute/compose_vapp_tests.rb +1 -1
  304. data/tests/vcloud_director/models/compute/helper.rb +1 -1
  305. data/tests/vcloud_director/models/compute/media_tests.rb +1 -1
  306. data/tests/vcloud_director/models/compute/network_tests.rb +1 -1
  307. data/tests/vcloud_director/models/compute/tasks_tests.rb +1 -1
  308. data/tests/vcloud_director/models/compute/vapp_template_tests.rb +1 -1
  309. data/tests/vcloud_director/models/compute/vms_tests.rb +6 -6
  310. data/tests/vcloud_director/requests/compute/admin_tests.rb +1 -1
  311. data/tests/vcloud_director/requests/compute/catalog_tests.rb +2 -2
  312. data/tests/vcloud_director/requests/compute/disk_tests.rb +11 -11
  313. data/tests/vcloud_director/requests/compute/edge_gateway_tests.rb +8 -8
  314. data/tests/vcloud_director/requests/compute/groups_tests.rb +1 -1
  315. data/tests/vcloud_director/requests/compute/media_tests.rb +11 -11
  316. data/tests/vcloud_director/requests/compute/network_tests.rb +6 -6
  317. data/tests/vcloud_director/requests/compute/organization_tests.rb +2 -2
  318. data/tests/vcloud_director/requests/compute/ovf_descriptor_tests.rb +1 -1
  319. data/tests/vcloud_director/requests/compute/query_tests.rb +1 -1
  320. data/tests/vcloud_director/requests/compute/session_tests.rb +1 -1
  321. data/tests/vcloud_director/requests/compute/supported_systems_tests.rb +1 -1
  322. data/tests/vcloud_director/requests/compute/task_tests.rb +4 -4
  323. data/tests/vcloud_director/requests/compute/users_tests.rb +1 -1
  324. data/tests/vcloud_director/requests/compute/vapp_tests.rb +4 -4
  325. data/tests/vcloud_director/requests/compute/vdc_storage_profile_tests.rb +2 -2
  326. data/tests/vcloud_director/requests/compute/vdc_tests.rb +2 -2
  327. data/tests/vcloud_director/requests/compute/versions_tests.rb +1 -1
  328. data/tests/vcloud_director/requests/compute/vm_tests.rb +4 -4
  329. metadata +140 -13
  330. data/lib/fog/vcloud_director/requests/compute/get_vms.rb +0 -41
  331. data/spec/vcloud_director/spec_helper.rb +0 -13
@@ -0,0 +1,4 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Generators::Compute::Vapp do
4
+ end
@@ -0,0 +1,4 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Generators::Compute::VmNetwork do
4
+ end
@@ -0,0 +1,4 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Generators::Compute::Vm do
4
+ end
@@ -0,0 +1,44 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Compute do
4
+ describe 'No load errors' do
5
+ [
6
+ Fog::VcloudDirector::Compute::Catalogs,
7
+ Fog::VcloudDirector::Compute::Catalog,
8
+ Fog::VcloudDirector::Compute::CatalogItems,
9
+ Fog::VcloudDirector::Compute::CatalogItem,
10
+ Fog::VcloudDirector::Compute::CustomFields,
11
+ Fog::VcloudDirector::Compute::CustomField,
12
+ Fog::VcloudDirector::Compute::Disks,
13
+ Fog::VcloudDirector::Compute::Disk,
14
+ Fog::VcloudDirector::Compute::Medias,
15
+ Fog::VcloudDirector::Compute::Media,
16
+ Fog::VcloudDirector::Compute::Networks,
17
+ Fog::VcloudDirector::Compute::Network,
18
+ Fog::VcloudDirector::Compute::Organizations,
19
+ Fog::VcloudDirector::Compute::Organization,
20
+ Fog::VcloudDirector::Compute::Tags,
21
+ Fog::VcloudDirector::Compute::Tag,
22
+ Fog::VcloudDirector::Compute::Tasks,
23
+ Fog::VcloudDirector::Compute::Task,
24
+ Fog::VcloudDirector::Compute::TemplateVms,
25
+ Fog::VcloudDirector::Compute::TemplateVm,
26
+ Fog::VcloudDirector::Compute::Vapps,
27
+ Fog::VcloudDirector::Compute::Vapp,
28
+ Fog::VcloudDirector::Compute::VappTemplates,
29
+ Fog::VcloudDirector::Compute::VappTemplate,
30
+ Fog::VcloudDirector::Compute::Vdcs,
31
+ Fog::VcloudDirector::Compute::Vdc,
32
+ Fog::VcloudDirector::Compute::Vms,
33
+ Fog::VcloudDirector::Compute::Vm,
34
+ Fog::VcloudDirector::Compute::VmCustomizations,
35
+ Fog::VcloudDirector::Compute::VmCustomization,
36
+ Fog::VcloudDirector::Compute::VmNetworks,
37
+ Fog::VcloudDirector::Compute::VmNetwork
38
+ ].each do |klass|
39
+ it "Instantiating #{klass}" do
40
+ assert_instance_of(klass, klass.new)
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,104 @@
1
+ require './spec/vcr_spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Compute::Vapps do
4
+ let(:subject) { Fog::VcloudDirector::Compute::Vapps.new(:service => vcr_service, :vdc => vdc) }
5
+ let(:vdc_id) { 'cf6ea964-a67f-4ba1-b69e-3dd5d6cb0c89' }
6
+ let(:vdc) { Object.new.tap { |vapp| vapp.stubs(:id).returns(vdc_id) } }
7
+ let(:vapp_id) { 'vapp-fe8d013d-dd2f-4ac6-9e8a-3a4a18e0a62e' }
8
+ let(:vm_id) { 'vm-314172f1-1835-4598-b049-5c1d4dce39ad' }
9
+ let(:vm2_id) { 'vm-8dc9990c-a55a-418e-8e21-5942a20b93ef' }
10
+
11
+ describe '.all' do
12
+ let(:expired_vapp_id) { 'vapp-5d61572f-f76d-45fc-9f59-f36ca6651781' }
13
+ let(:no_vms_vapp_id) { 'vapp-6420bb6b-daab-4015-8ab8-f5d8105040fd' }
14
+
15
+ it 'vapp skeleton' do
16
+ VCR.use_cassette('get_vapps') do
17
+ vapps = subject.all
18
+ vapps.size.must_equal 7
19
+ expect_vapp_skeleton(
20
+ vapps.detect { |vapp| vapp.id == vapp_id },
21
+ :id => vapp_id,
22
+ :name => 'cfme-vapp'
23
+ )
24
+ end
25
+ end
26
+
27
+ it 'expired vapp' do
28
+ VCR.use_cassette('get_vapps-expired') do
29
+ vapps = subject.all
30
+ vapps.size.must_equal 7
31
+ vapp = vapps.detect { |vapp| vapp.id == expired_vapp_id }
32
+
33
+ vms = vapp.vms.all
34
+ vms.size.must_equal 2
35
+ vms[0].vapp_id.must_equal expired_vapp_id
36
+ vms[1].vapp_id.must_equal expired_vapp_id
37
+ end
38
+ end
39
+
40
+ it 'vapp without vms' do
41
+ VCR.use_cassette('get_vapps-novms') do
42
+ vapps = subject.all
43
+ vapps.size.must_equal 7
44
+ vapp = vapps.detect { |vapp| vapp.id == no_vms_vapp_id }
45
+
46
+ vms = vapp.vms.all
47
+ vms.size.must_equal 0
48
+ end
49
+ end
50
+ end
51
+
52
+ it '.get_single_vapp' do
53
+ VCR.use_cassette('get_vapp') do
54
+ vapp = subject.get_single_vapp(vapp_id)
55
+ expect_vapp(
56
+ vapp,
57
+ :id => vapp_id,
58
+ :name => 'cfme-vapp',
59
+ :description => '',
60
+ :deployed => false,
61
+ :status => '8',
62
+ :h_status => 'off',
63
+ :lease => 'not-implemented',
64
+ :net_section => 'not-implemented',
65
+ :net_config => 'not-implemented',
66
+ :owner => 'e0d6e74d-efde-49fe-b19f-ace7e55b68dd',
67
+ :maintenance => false,
68
+ :num_vms => 2
69
+ )
70
+ expect_vm(
71
+ vapp.vms.detect { |vm| vm.id == vm_id },
72
+ :vapp_id => vapp_id,
73
+ :name => 'Web Server VM',
74
+ :status => 'off',
75
+ :deployed => false,
76
+ :os => 'Microsoft Windows Server 2016 (64-bit)',
77
+ :ip => '',
78
+ :cpu => 4,
79
+ :cores_per_socket => 2,
80
+ :cpu_hot => false,
81
+ :mem => 1024,
82
+ :mem_hot => false,
83
+ :num_hdds => 1,
84
+ :num_nics => 2
85
+ )
86
+ expect_vm(
87
+ vapp.vms.detect { |vm| vm.id == vm2_id },
88
+ :vapp_id => vapp_id,
89
+ :name => 'Databasy Machiny',
90
+ :status => 'off',
91
+ :deployed => false,
92
+ :os => 'Microsoft Windows Server 2016 (64-bit)',
93
+ :ip => '192.168.43.2',
94
+ :cpu => 8,
95
+ :cores_per_socket => 4,
96
+ :cpu_hot => true,
97
+ :mem => 4096,
98
+ :mem_hot => true,
99
+ :num_hdds => 3,
100
+ :num_nics => 2
101
+ )
102
+ end
103
+ end
104
+ end
@@ -0,0 +1,80 @@
1
+ require './spec/vcr_spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Compute::Vms do
4
+ let(:subject) { Fog::VcloudDirector::Compute::Vms.new(:service => vcr_service, :vapp => vapp) }
5
+ let(:vapp_id) { 'vapp-fe8d013d-dd2f-4ac6-9e8a-3a4a18e0a62e' }
6
+ let(:vapp) { Object.new.tap { |vapp| vapp.stubs(:id).returns(vapp_id) } }
7
+ let(:vm_id) { 'vm-314172f1-1835-4598-b049-5c1d4dce39ad' }
8
+ let(:vm2_id) { 'vm-8dc9990c-a55a-418e-8e21-5942a20b93ef' }
9
+
10
+ describe '.all' do
11
+ it 'regular' do
12
+ VCR.use_cassette('get_vapp') do
13
+ vms = subject.all
14
+ vms.size.must_equal 2
15
+ expect_vm(
16
+ vms.to_a.detect { |vm| vm.id == vm_id },
17
+ :vapp_id => vapp_id,
18
+ :name => 'Web Server VM',
19
+ :status => 'off',
20
+ :deployed => false,
21
+ :os => 'Microsoft Windows Server 2016 (64-bit)',
22
+ :ip => '',
23
+ :cpu => 4,
24
+ :cores_per_socket => 2,
25
+ :cpu_hot => false,
26
+ :mem => 1024,
27
+ :mem_hot => false,
28
+ :num_hdds => 1,
29
+ :num_nics => 2
30
+ )
31
+ end
32
+ end
33
+
34
+ it 'when vm has no disks and nics' do
35
+ VCR.use_cassette('get_vapp-emptyvm') do
36
+ vms = subject.all
37
+ vms.size.must_equal 2
38
+ expect_vm(
39
+ vms.to_a.detect { |vm| vm.id == vm2_id },
40
+ :vapp_id => vapp_id,
41
+ :name => 'Databasy Machiny',
42
+ :status => 'off',
43
+ :deployed => false,
44
+ :os => 'Microsoft Windows Server 2016 (64-bit)',
45
+ :ip => '',
46
+ :cpu => 2,
47
+ :cores_per_socket => 1,
48
+ :cpu_hot => false,
49
+ :mem => 1024,
50
+ :mem_hot => false,
51
+ :num_hdds => 0,
52
+ :num_nics => 0
53
+ )
54
+ end
55
+ end
56
+ end
57
+
58
+ it '.get_single_vm' do
59
+ VCR.use_cassette('get_vm') do
60
+ vm = subject.get_single_vm(vm_id)
61
+ puts vm.network_adapters
62
+ expect_vm(
63
+ vm,
64
+ :vapp_id => vapp_id,
65
+ :name => 'Web Server VM',
66
+ :status => 'off',
67
+ :deployed => false,
68
+ :os => 'Microsoft Windows Server 2016 (64-bit)',
69
+ :ip => '',
70
+ :cpu => 4,
71
+ :cpu_hot => true,
72
+ :cores_per_socket => 2,
73
+ :mem => 1024,
74
+ :mem_hot => true,
75
+ :num_hdds => 1,
76
+ :num_nics => 2
77
+ )
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,4 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Parsers::Compute::Disks do
4
+ end
@@ -0,0 +1,4 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Parsers::Compute::Metadata do
4
+ end
@@ -0,0 +1,4 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Parsers::Compute::Network do
4
+ end
@@ -0,0 +1,4 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Parsers::Compute::VmCustomization do
4
+ end
@@ -0,0 +1,4 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Parsers::Compute::VmNetwork do
4
+ end
@@ -0,0 +1,4 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Parsers::Compute::VmParserHelper do
4
+ end
@@ -0,0 +1,4 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Parsers::Compute::Vm do
4
+ end
@@ -0,0 +1,4 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Parsers::Compute::VmsByMetadata do
4
+ end
@@ -0,0 +1,4 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Parsers::Compute::Vms do
4
+ end
@@ -0,0 +1,212 @@
1
+ require './spec/spec_helper.rb'
2
+
3
+ describe Fog::VcloudDirector::Compute::Real do
4
+ describe 'Requests exist' do
5
+ let(:service) do
6
+ response = Object.new
7
+ response.stubs(:body).returns(
8
+ {
9
+ :Link => {},
10
+ :Configuration => {
11
+ :EdgeGatewayServiceConfiguration => {},
12
+ :IpScopes => {}
13
+ }
14
+ })
15
+ connection = Object.new
16
+ connection.stubs(:request).returns(response)
17
+ service = Fog::VcloudDirector::Compute::Real.new
18
+ service.instance_variable_set(:@connection, connection)
19
+ service.stubs(:request).returns(response)
20
+ service.stubs(:ensure_list!).returns(true)
21
+ service
22
+ end
23
+
24
+ [
25
+ { :req => :delete_catalog_item, :args => %w(id) },
26
+ { :req => :delete_catalog_item_metadata_item_metadata, :args => %w(id key) },
27
+ { :req => :delete_disk, :args => %w(id) },
28
+ { :req => :delete_disk_metadata_item_metadata, :args => %w(id key) },
29
+ { :req => :delete_logout, :args => %w() },
30
+ { :req => :delete_media, :args => %w(id) },
31
+ { :req => :delete_media_metadata_item_metadata, :args => %w(id key) },
32
+ { :req => :delete_network, :args => %w(id) },
33
+ { :req => :delete_shadow_vm, :args => %w(id) },
34
+ { :req => :delete_vapp, :args => %w(id) },
35
+ { :req => :delete_vapp_metadata_item_metadata, :args => %w(id key) },
36
+ { :req => :delete_vapp_template, :args => %w(id) },
37
+ { :req => :delete_vapp_template_metadata_item_metadata, :args => %w(id key) },
38
+ { :req => :get_allocated_ip_addresses, :args => %w(id) },
39
+ { :req => :get_catalog, :args => %w(id) },
40
+ { :req => :get_catalog_item, :args => %w(id) },
41
+ { :req => :get_catalog_item_metadata, :args => %w(id) },
42
+ { :req => :get_catalog_item_metadata_item_metadata, :args => %w(id key) },
43
+ { :req => :get_catalog_metadata, :args => %w(id) },
44
+ { :req => :get_catalog_metadata_item_metadata, :args => %w(id key) },
45
+ { :req => :get_catalogs_from_query, :args => %w() },
46
+ { :req => :get_control_access_params_catalog, :args => %w(id, id) },
47
+ { :req => :get_control_access_params_vapp, :args => %w(id) },
48
+ { :req => :get_cpu_rasd_item, :args => %w(id) },
49
+ { :req => :get_current_session, :args => %w() },
50
+ { :req => :get_disk, :args => %w(id) },
51
+ { :req => :get_disk_metadata, :args => %w(id) },
52
+ { :req => :get_disk_metadata_item_metadata, :args => %w(id key) },
53
+ { :req => :get_disk_owner, :args => %w(id) },
54
+ { :req => :get_disks_from_query, :args => %w() },
55
+ { :req => :get_disks_rasd_items_list, :args => %w(id) },
56
+ { :req => :get_edge_gateway, :args => %w(id) },
57
+ { :req => :get_entity, :args => %w(id) },
58
+ { :req => :get_execute_query, :args => %w() },
59
+ { :req => :get_groups_from_query, :args => %w() },
60
+ { :req => :get_guest_customization_system_section_vapp, :args => %w(id) },
61
+ { :req => :get_guest_customization_system_section_vapp_template, :args => %w(id) },
62
+ { :req => :get_href, :args => %w(href) },
63
+ { :req => :get_lease_settings_section_vapp, :args => %w(id) },
64
+ { :req => :get_lease_settings_section_vapp_template, :args => %w(id) },
65
+ { :req => :get_media, :args => %w(id) },
66
+ { :req => :get_media_drives_rasd_items_list, :args => %w(id) },
67
+ { :req => :get_media_metadata, :args => %w(id) },
68
+ { :req => :get_media_metadata_item_metadata, :args => %w(id key) },
69
+ { :req => :get_media_owner, :args => %w(id) },
70
+ { :req => :get_medias_from_query, :args => %w() },
71
+ { :req => :get_memory_rasd_item, :args => %w(id) },
72
+ { :req => :get_metadata, :args => %w(id) },
73
+ { :req => :get_network, :args => %w(id) },
74
+ { :req => :get_network_cards_items_list, :args => %w(id) },
75
+ { :req => :get_network_complete, :args => %w(id) },
76
+ { :req => :get_network_config_section_vapp, :args => %w(id) },
77
+ { :req => :get_network_config_section_vapp_template, :args => %w(id) },
78
+ { :req => :get_network_connection_system_section_vapp, :args => %w(id) },
79
+ { :req => :get_network_connection_system_section_vapp_template, :args => %w(id) },
80
+ { :req => :get_network_metadata, :args => %w(id) },
81
+ { :req => :get_network_metadata_item_metadata, :args => %w(id key) },
82
+ { :req => :get_network_section_vapp, :args => %w(id) },
83
+ { :req => :get_network_section_vapp_template, :args => %w(id) },
84
+ { :req => :get_operating_system_section, :args => %w(id) },
85
+ { :req => :get_org_settings, :args => %w(id) },
86
+ { :req => :get_org_vdc_gateways, :args => %w(id) },
87
+ { :req => :get_organization, :args => %w(id) },
88
+ { :req => :get_organization_metadata, :args => %w(id) },
89
+ { :req => :get_organization_metadata_item_metadata, :args => %w(id domain key) },
90
+ { :req => :get_organizations, :args => %w() },
91
+ { :req => :get_organizations_from_query, :args => %w() },
92
+ { :req => :get_product_sections_vapp, :args => %w(id) },
93
+ { :req => :get_product_sections_vapp_template, :args => %w(id) },
94
+ { :req => :get_request, :args => %w(url) },
95
+ { :req => :get_runtime_info_section_type, :args => %w(id) },
96
+ { :req => :get_serial_ports_items_list, :args => %w(id) },
97
+ { :req => :get_shadow_vm, :args => %w(id) },
98
+ { :req => :get_snapshot_section, :args => %w(id) },
99
+ { :req => :get_startup_section, :args => %w(id) },
100
+ { :req => :get_supported_systems_info, :args => %w() },
101
+ { :req => :get_supported_versions, :args => %w() },
102
+ { :req => :get_task, :args => %w(id) },
103
+ { :req => :get_task_list, :args => %w(id) },
104
+ { :req => :get_template_vm, :args => %w(id) },
105
+ { :req => :get_template_vms, :args => %w(id) },
106
+ { :req => :get_thumbnail, :args => %w(id) },
107
+ { :req => :get_users_from_query, :args => %w() },
108
+ { :req => :get_vapp, :args => %w(id) },
109
+ { :req => :get_vapp_metadata, :args => %w(id) },
110
+ { :req => :get_vapp_metadata_item_metadata, :args => %w(id key) },
111
+ { :req => :get_vapp_ovf_descriptor, :args => %w(id) },
112
+ { :req => :get_vapp_owner, :args => %w(id) },
113
+ { :req => :get_vapp_template, :args => %w(id) },
114
+ { :req => :get_vapp_template_customization_system_section, :args => %w(id) },
115
+ { :req => :get_vapp_template_metadata, :args => %w(id) },
116
+ { :req => :get_vapp_template_metadata_item_metadata, :args => %w(id key) },
117
+ { :req => :get_vapp_template_ovf_descriptor, :args => %w(id) },
118
+ { :req => :get_vapp_template_owner, :args => %w(id) },
119
+ { :req => :get_vapp_templates_from_query, :args => %w() },
120
+ { :req => :get_vapps_in_lease_from_query, :args => %w() },
121
+ { :req => :get_vcloud, :args => %w() },
122
+ { :req => :get_vdc, :args => %w(id) },
123
+ { :req => :get_vdc_metadata, :args => %w(id) },
124
+ { :req => :get_vdc_metadata_item_metadata, :args => %w(id domain key) },
125
+ { :req => :get_vdc_storage_class, :args => %w(id) },
126
+ { :req => :get_vdc_storage_class_metadata, :args => %w(id) },
127
+ { :req => :get_vdc_storage_class_metadata_item_metadata, :args => %w(id key) },
128
+ { :req => :get_vdcs_from_query, :args => %w() },
129
+ { :req => :get_virtual_hardware_section, :args => %w(id) },
130
+ { :req => :get_vm, :args => %w(id) },
131
+ { :req => :get_vm_capabilities, :args => %w(id) },
132
+ { :req => :get_vm_compliance_results, :args => %w(id) },
133
+ { :req => :get_vm_customization, :args => %w(id) },
134
+ { :req => :get_vm_disks, :args => %w(id) },
135
+ { :req => :get_vm_network, :args => %w(id) },
136
+ { :req => :get_vm_pending_question, :args => %w(id) },
137
+ { :req => :get_vms_by_metadata, :args => %w(key value) },
138
+ { :req => :get_vms_disk_attached_to, :args => %w(id) },
139
+ { :req => :get_vms_in_lease_from_query, :args => %w() },
140
+ { :req => :instantiate_vapp_template, :args => ['name', 'id', { :vdc_id => 'vid', :source_vms => [] }] },
141
+ { :req => :post_acquire_ticket, :args => %w(id) },
142
+ { :req => :post_answer_pending_vm_question, :args => %w(id cid qid) },
143
+ { :req => :post_attach_disk, :args => %w(id did) },
144
+ { :req => :post_cancel_task, :args => %w(id) },
145
+ { :req => :post_capture_vapp, :args => %w(id name sid) },
146
+ { :req => :post_check_vm_compliance, :args => %w(id) },
147
+ { :req => :post_clone_media, :args => %w(id sid) },
148
+ { :req => :post_clone_vapp, :args => %w(id name sid) },
149
+ { :req => :post_clone_vapp_template, :args => %w(id name sid) },
150
+ { :req => :post_compose_vapp, :args => %w(id) },
151
+ { :req => :post_configure_edge_gateway_services, :args => ['id', {}] },
152
+ { :req => :post_consolidate_vm_vapp, :args => %w(id) },
153
+ { :req => :post_consolidate_vm_vapp_template, :args => %w(id) },
154
+ { :req => :post_create_catalog_item, :args => %w(id name entity) },
155
+ { :req => :post_create_org_vdc_network, :args => %w(id name) },
156
+ { :req => :post_create_snapshot, :args => %w(id) },
157
+ { :req => :post_deploy_vapp, :args => %w(id) },
158
+ { :req => :post_detach_disk, :args => %w(id did) },
159
+ { :req => :post_disable_nested_hv, :args => %w(id) },
160
+ { :req => :post_disable_vapp_template_download, :args => %w(id) },
161
+ { :req => :post_discard_vapp_state, :args => %w(id) },
162
+ { :req => :post_eject_cd_rom, :args => %w(id mid) },
163
+ { :req => :post_enable_nested_hv, :args => %w(id) },
164
+ { :req => :post_enable_vapp_template_download, :args => %w(id) },
165
+ { :req => :post_enter_maintenance_mode, :args => %w(id) },
166
+ { :req => :post_exit_maintenance_mode, :args => %w(id) },
167
+ { :req => :post_insert_cd_rom, :args => %w(id mid) },
168
+ { :req => :post_install_vmware_tools, :args => %w(id) },
169
+ { :req => :post_instantiate_vapp_template, :args => %w(id tid name) },
170
+ { :req => :post_login_session, :args => %w() },
171
+ { :req => :post_power_off_vapp, :args => %w(id) },
172
+ { :req => :post_power_on_vapp, :args => %w(id) },
173
+ { :req => :post_reboot_vapp, :args => %w(id) },
174
+ { :req => :post_recompose_vapp, :args => ['id', { :vms_to_delete => [] }] },
175
+ { :req => :post_remove_all_snapshots, :args => %w(id) },
176
+ { :req => :post_reset_vapp, :args => %w(id) },
177
+ { :req => :post_revert_snapshot, :args => %w(id) },
178
+ { :req => :post_shutdown_vapp, :args => %w(id) },
179
+ { :req => :post_suspend_vapp, :args => %w(id) },
180
+ { :req => :post_undeploy_vapp, :args => %w(id) },
181
+ { :req => :post_update_catalog_item_metadata, :args => %w(id) },
182
+ { :req => :post_update_disk_metadata, :args => %w(id) },
183
+ { :req => :post_update_media_metadata, :args => %w(id) },
184
+ { :req => :post_update_vapp_metadata, :args => %w(id) },
185
+ { :req => :post_update_vapp_template_metadata, :args => %w(id) },
186
+ { :req => :post_upgrade_hw_version, :args => %w(id) },
187
+ { :req => :post_upload_disk, :args => %w(id name size) },
188
+ { :req => :post_upload_media, :args => %w(id name type size) },
189
+ { :req => :post_upload_vapp_template, :args => %w(id name) },
190
+ { :req => :put_catalog_item_metadata_item_metadata, :args => %w(id key value) },
191
+ { :req => :put_cpu, :args => %w(id num) },
192
+ { :req => :put_disk_metadata_item_metadata, :args => %w(id key value) },
193
+ { :req => :put_disks, :args => ['id', { :disks => [] }] },
194
+ { :req => :put_guest_customization_section_vapp, :args => %w(id) },
195
+ { :req => :put_media_metadata_item_metadata, :args => %w(id key value) },
196
+ { :req => :put_memory, :args => %w(id memory) },
197
+ { :req => :put_metadata_value, :args => %w(id key value) },
198
+ { :req => :put_network, :args => %w(id name) },
199
+ { :req => :put_network_connection_system_section_vapp, :args => %w(id) },
200
+ { :req => :put_product_sections, :args => ['id', []] },
201
+ { :req => :put_vapp_metadata_item_metadata, :args => %w(id key value) },
202
+ { :req => :put_vapp_name_and_description, :args => %w(id name) },
203
+ { :req => :put_vapp_template_metadata_item_metadata, :args => %w(id key value) },
204
+ { :req => :put_vm, :args => ['id', 'name', {}] },
205
+ { :req => :put_vm_capabilities, :args => %w(id) },
206
+ ].each do |data|
207
+ it "Invoking #{data[:req]}" do
208
+ service.send(data[:req], *data[:args])
209
+ end
210
+ end
211
+ end
212
+ end