azure_mgmt_compute 0.21.1 → 0.22.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (307) hide show
  1. checksums.yaml +4 -4
  2. data/lib/2015-06-15/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  3. data/lib/2016-03-30/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  4. data/lib/2016-04-30-preview/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  5. data/lib/2017-03-30/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  6. data/lib/2017-09-01/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  7. data/lib/2017-12-01/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  8. data/lib/2018-04-01/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  9. data/lib/2018-06-01/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  10. data/lib/2018-09-30/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  11. data/lib/2018-10-01/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  12. data/lib/2019-03-01/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  13. data/lib/2019-04-01/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  14. data/lib/2019-07-01/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  15. data/lib/2019-11-01/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  16. data/lib/2019-12-01/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  17. data/lib/2019-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_managed_disk_parameters.rb +3 -2
  18. data/lib/2020-06-01/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  19. data/lib/2020-06-30/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  20. data/lib/2020-09-30-preview/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  21. data/lib/2020-09-30/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  22. data/lib/2020-10-01-preview/generated/azure_mgmt_compute/compute_management_client.rb +1 -1
  23. data/lib/2020-12-01/generated/azure_mgmt_compute.rb +305 -0
  24. data/lib/2020-12-01/generated/azure_mgmt_compute/availability_sets.rb +920 -0
  25. data/lib/2020-12-01/generated/azure_mgmt_compute/compute_management_client.rb +221 -0
  26. data/lib/2020-12-01/generated/azure_mgmt_compute/dedicated_host_groups.rb +861 -0
  27. data/lib/2020-12-01/generated/azure_mgmt_compute/dedicated_hosts.rb +806 -0
  28. data/lib/2020-12-01/generated/azure_mgmt_compute/images.rb +975 -0
  29. data/lib/2020-12-01/generated/azure_mgmt_compute/log_analytics.rb +341 -0
  30. data/lib/2020-12-01/generated/azure_mgmt_compute/models/additional_capabilities.rb +51 -0
  31. data/lib/2020-12-01/generated/azure_mgmt_compute/models/additional_unattend_content.rb +93 -0
  32. data/lib/2020-12-01/generated/azure_mgmt_compute/models/api_entity_reference.rb +47 -0
  33. data/lib/2020-12-01/generated/azure_mgmt_compute/models/api_error.rb +100 -0
  34. data/lib/2020-12-01/generated/azure_mgmt_compute/models/api_error_base.rb +68 -0
  35. data/lib/2020-12-01/generated/azure_mgmt_compute/models/automatic_osupgrade_policy.rb +63 -0
  36. data/lib/2020-12-01/generated/azure_mgmt_compute/models/automatic_osupgrade_properties.rb +47 -0
  37. data/lib/2020-12-01/generated/azure_mgmt_compute/models/automatic_repairs_policy.rb +64 -0
  38. data/lib/2020-12-01/generated/azure_mgmt_compute/models/availability_set.rb +189 -0
  39. data/lib/2020-12-01/generated/azure_mgmt_compute/models/availability_set_list_result.rb +100 -0
  40. data/lib/2020-12-01/generated/azure_mgmt_compute/models/availability_set_sku_types.rb +16 -0
  41. data/lib/2020-12-01/generated/azure_mgmt_compute/models/availability_set_update.rb +142 -0
  42. data/lib/2020-12-01/generated/azure_mgmt_compute/models/available_patch_summary.rb +143 -0
  43. data/lib/2020-12-01/generated/azure_mgmt_compute/models/billing_profile.rb +60 -0
  44. data/lib/2020-12-01/generated/azure_mgmt_compute/models/boot_diagnostics.rb +63 -0
  45. data/lib/2020-12-01/generated/azure_mgmt_compute/models/boot_diagnostics_instance_view.rb +78 -0
  46. data/lib/2020-12-01/generated/azure_mgmt_compute/models/caching_types.rb +17 -0
  47. data/lib/2020-12-01/generated/azure_mgmt_compute/models/component_names.rb +15 -0
  48. data/lib/2020-12-01/generated/azure_mgmt_compute/models/compute_operation_list_result.rb +56 -0
  49. data/lib/2020-12-01/generated/azure_mgmt_compute/models/compute_operation_value.rb +108 -0
  50. data/lib/2020-12-01/generated/azure_mgmt_compute/models/data_disk.rb +224 -0
  51. data/lib/2020-12-01/generated/azure_mgmt_compute/models/data_disk_image.rb +49 -0
  52. data/lib/2020-12-01/generated/azure_mgmt_compute/models/dedicated_host.rb +219 -0
  53. data/lib/2020-12-01/generated/azure_mgmt_compute/models/dedicated_host_allocatable_vm.rb +60 -0
  54. data/lib/2020-12-01/generated/azure_mgmt_compute/models/dedicated_host_available_capacity.rb +57 -0
  55. data/lib/2020-12-01/generated/azure_mgmt_compute/models/dedicated_host_group.rb +178 -0
  56. data/lib/2020-12-01/generated/azure_mgmt_compute/models/dedicated_host_group_instance_view.rb +57 -0
  57. data/lib/2020-12-01/generated/azure_mgmt_compute/models/dedicated_host_group_list_result.rb +100 -0
  58. data/lib/2020-12-01/generated/azure_mgmt_compute/models/dedicated_host_group_update.rb +141 -0
  59. data/lib/2020-12-01/generated/azure_mgmt_compute/models/dedicated_host_instance_view.rb +81 -0
  60. data/lib/2020-12-01/generated/azure_mgmt_compute/models/dedicated_host_instance_view_with_name.rb +84 -0
  61. data/lib/2020-12-01/generated/azure_mgmt_compute/models/dedicated_host_license_types.rb +17 -0
  62. data/lib/2020-12-01/generated/azure_mgmt_compute/models/dedicated_host_list_result.rb +100 -0
  63. data/lib/2020-12-01/generated/azure_mgmt_compute/models/dedicated_host_update.rb +171 -0
  64. data/lib/2020-12-01/generated/azure_mgmt_compute/models/diagnostics_profile.rb +52 -0
  65. data/lib/2020-12-01/generated/azure_mgmt_compute/models/diff_disk_options.rb +15 -0
  66. data/lib/2020-12-01/generated/azure_mgmt_compute/models/diff_disk_placement.rb +16 -0
  67. data/lib/2020-12-01/generated/azure_mgmt_compute/models/diff_disk_settings.rb +69 -0
  68. data/lib/2020-12-01/generated/azure_mgmt_compute/models/disallowed_configuration.rb +47 -0
  69. data/lib/2020-12-01/generated/azure_mgmt_compute/models/disk_create_option_types.rb +17 -0
  70. data/lib/2020-12-01/generated/azure_mgmt_compute/models/disk_detach_option_types.rb +15 -0
  71. data/lib/2020-12-01/generated/azure_mgmt_compute/models/disk_encryption_set_parameters.rb +46 -0
  72. data/lib/2020-12-01/generated/azure_mgmt_compute/models/disk_encryption_settings.rb +73 -0
  73. data/lib/2020-12-01/generated/azure_mgmt_compute/models/disk_instance_view.rb +87 -0
  74. data/lib/2020-12-01/generated/azure_mgmt_compute/models/execution_state.rb +21 -0
  75. data/lib/2020-12-01/generated/azure_mgmt_compute/models/extended_location.rb +58 -0
  76. data/lib/2020-12-01/generated/azure_mgmt_compute/models/extended_location_types.rb +15 -0
  77. data/lib/2020-12-01/generated/azure_mgmt_compute/models/hardware_profile.rb +106 -0
  78. data/lib/2020-12-01/generated/azure_mgmt_compute/models/hyper_vgeneration_type.rb +16 -0
  79. data/lib/2020-12-01/generated/azure_mgmt_compute/models/hyper_vgeneration_types.rb +16 -0
  80. data/lib/2020-12-01/generated/azure_mgmt_compute/models/image.rb +151 -0
  81. data/lib/2020-12-01/generated/azure_mgmt_compute/models/image_data_disk.rb +108 -0
  82. data/lib/2020-12-01/generated/azure_mgmt_compute/models/image_disk.rb +126 -0
  83. data/lib/2020-12-01/generated/azure_mgmt_compute/models/image_list_result.rb +99 -0
  84. data/lib/2020-12-01/generated/azure_mgmt_compute/models/image_osdisk.rb +123 -0
  85. data/lib/2020-12-01/generated/azure_mgmt_compute/models/image_reference.rb +114 -0
  86. data/lib/2020-12-01/generated/azure_mgmt_compute/models/image_storage_profile.rb +86 -0
  87. data/lib/2020-12-01/generated/azure_mgmt_compute/models/image_update.rb +102 -0
  88. data/lib/2020-12-01/generated/azure_mgmt_compute/models/inner_error.rb +57 -0
  89. data/lib/2020-12-01/generated/azure_mgmt_compute/models/instance_view_status.rb +93 -0
  90. data/lib/2020-12-01/generated/azure_mgmt_compute/models/instance_view_types.rb +15 -0
  91. data/lib/2020-12-01/generated/azure_mgmt_compute/models/interval_in_mins.rb +18 -0
  92. data/lib/2020-12-01/generated/azure_mgmt_compute/models/ipversion.rb +16 -0
  93. data/lib/2020-12-01/generated/azure_mgmt_compute/models/key_vault_key_reference.rb +59 -0
  94. data/lib/2020-12-01/generated/azure_mgmt_compute/models/key_vault_secret_reference.rb +59 -0
  95. data/lib/2020-12-01/generated/azure_mgmt_compute/models/last_patch_installation_summary.rb +179 -0
  96. data/lib/2020-12-01/generated/azure_mgmt_compute/models/linux_configuration.rb +94 -0
  97. data/lib/2020-12-01/generated/azure_mgmt_compute/models/linux_parameters.rb +107 -0
  98. data/lib/2020-12-01/generated/azure_mgmt_compute/models/linux_patch_settings.rb +52 -0
  99. data/lib/2020-12-01/generated/azure_mgmt_compute/models/linux_vmguest_patch_mode.rb +16 -0
  100. data/lib/2020-12-01/generated/azure_mgmt_compute/models/list_usages_result.rb +100 -0
  101. data/lib/2020-12-01/generated/azure_mgmt_compute/models/log_analytics_input_base.rb +124 -0
  102. data/lib/2020-12-01/generated/azure_mgmt_compute/models/log_analytics_operation_result.rb +48 -0
  103. data/lib/2020-12-01/generated/azure_mgmt_compute/models/log_analytics_output.rb +47 -0
  104. data/lib/2020-12-01/generated/azure_mgmt_compute/models/maintenance_operation_result_code_types.rb +18 -0
  105. data/lib/2020-12-01/generated/azure_mgmt_compute/models/maintenance_redeploy_status.rb +115 -0
  106. data/lib/2020-12-01/generated/azure_mgmt_compute/models/managed_disk_parameters.rb +70 -0
  107. data/lib/2020-12-01/generated/azure_mgmt_compute/models/network_interface_reference.rb +55 -0
  108. data/lib/2020-12-01/generated/azure_mgmt_compute/models/network_profile.rb +57 -0
  109. data/lib/2020-12-01/generated/azure_mgmt_compute/models/operating_system_state_types.rb +16 -0
  110. data/lib/2020-12-01/generated/azure_mgmt_compute/models/operating_system_types.rb +16 -0
  111. data/lib/2020-12-01/generated/azure_mgmt_compute/models/orchestration_mode.rb +16 -0
  112. data/lib/2020-12-01/generated/azure_mgmt_compute/models/orchestration_service_names.rb +16 -0
  113. data/lib/2020-12-01/generated/azure_mgmt_compute/models/orchestration_service_state.rb +17 -0
  114. data/lib/2020-12-01/generated/azure_mgmt_compute/models/orchestration_service_state_action.rb +16 -0
  115. data/lib/2020-12-01/generated/azure_mgmt_compute/models/orchestration_service_state_input.rb +59 -0
  116. data/lib/2020-12-01/generated/azure_mgmt_compute/models/orchestration_service_summary.rb +61 -0
  117. data/lib/2020-12-01/generated/azure_mgmt_compute/models/osdisk.rb +191 -0
  118. data/lib/2020-12-01/generated/azure_mgmt_compute/models/osdisk_image.rb +48 -0
  119. data/lib/2020-12-01/generated/azure_mgmt_compute/models/osprofile.rb +204 -0
  120. data/lib/2020-12-01/generated/azure_mgmt_compute/models/pass_names.rb +15 -0
  121. data/lib/2020-12-01/generated/azure_mgmt_compute/models/patch_assessment_state.rb +16 -0
  122. data/lib/2020-12-01/generated/azure_mgmt_compute/models/patch_installation_detail.rb +121 -0
  123. data/lib/2020-12-01/generated/azure_mgmt_compute/models/patch_installation_state.rb +20 -0
  124. data/lib/2020-12-01/generated/azure_mgmt_compute/models/patch_operation_status.rb +19 -0
  125. data/lib/2020-12-01/generated/azure_mgmt_compute/models/patch_settings.rb +71 -0
  126. data/lib/2020-12-01/generated/azure_mgmt_compute/models/plan.rb +86 -0
  127. data/lib/2020-12-01/generated/azure_mgmt_compute/models/protocol_types.rb +16 -0
  128. data/lib/2020-12-01/generated/azure_mgmt_compute/models/proximity_placement_group.rb +180 -0
  129. data/lib/2020-12-01/generated/azure_mgmt_compute/models/proximity_placement_group_list_result.rb +100 -0
  130. data/lib/2020-12-01/generated/azure_mgmt_compute/models/proximity_placement_group_type.rb +16 -0
  131. data/lib/2020-12-01/generated/azure_mgmt_compute/models/proximity_placement_group_update.rb +51 -0
  132. data/lib/2020-12-01/generated/azure_mgmt_compute/models/purchase_plan.rb +71 -0
  133. data/lib/2020-12-01/generated/azure_mgmt_compute/models/recovery_walk_response.rb +60 -0
  134. data/lib/2020-12-01/generated/azure_mgmt_compute/models/request_rate_by_interval_input.rb +113 -0
  135. data/lib/2020-12-01/generated/azure_mgmt_compute/models/resource.rb +110 -0
  136. data/lib/2020-12-01/generated/azure_mgmt_compute/models/resource_identity_type.rb +18 -0
  137. data/lib/2020-12-01/generated/azure_mgmt_compute/models/retrieve_boot_diagnostics_data_result.rb +59 -0
  138. data/lib/2020-12-01/generated/azure_mgmt_compute/models/rollback_status_info.rb +74 -0
  139. data/lib/2020-12-01/generated/azure_mgmt_compute/models/rolling_upgrade_action_type.rb +16 -0
  140. data/lib/2020-12-01/generated/azure_mgmt_compute/models/rolling_upgrade_policy.rb +133 -0
  141. data/lib/2020-12-01/generated/azure_mgmt_compute/models/rolling_upgrade_progress_info.rb +88 -0
  142. data/lib/2020-12-01/generated/azure_mgmt_compute/models/rolling_upgrade_running_status.rb +88 -0
  143. data/lib/2020-12-01/generated/azure_mgmt_compute/models/rolling_upgrade_status_code.rb +18 -0
  144. data/lib/2020-12-01/generated/azure_mgmt_compute/models/rolling_upgrade_status_info.rb +141 -0
  145. data/lib/2020-12-01/generated/azure_mgmt_compute/models/run_command_document.rb +116 -0
  146. data/lib/2020-12-01/generated/azure_mgmt_compute/models/run_command_document_base.rb +92 -0
  147. data/lib/2020-12-01/generated/azure_mgmt_compute/models/run_command_input.rb +87 -0
  148. data/lib/2020-12-01/generated/azure_mgmt_compute/models/run_command_input_parameter.rb +57 -0
  149. data/lib/2020-12-01/generated/azure_mgmt_compute/models/run_command_list_result.rb +100 -0
  150. data/lib/2020-12-01/generated/azure_mgmt_compute/models/run_command_parameter_definition.rb +81 -0
  151. data/lib/2020-12-01/generated/azure_mgmt_compute/models/run_command_result.rb +56 -0
  152. data/lib/2020-12-01/generated/azure_mgmt_compute/models/scale_in_policy.rb +71 -0
  153. data/lib/2020-12-01/generated/azure_mgmt_compute/models/scheduled_events_profile.rb +49 -0
  154. data/lib/2020-12-01/generated/azure_mgmt_compute/models/security_profile.rb +81 -0
  155. data/lib/2020-12-01/generated/azure_mgmt_compute/models/security_types.rb +15 -0
  156. data/lib/2020-12-01/generated/azure_mgmt_compute/models/setting_names.rb +16 -0
  157. data/lib/2020-12-01/generated/azure_mgmt_compute/models/sku.rb +73 -0
  158. data/lib/2020-12-01/generated/azure_mgmt_compute/models/ssh_configuration.rb +56 -0
  159. data/lib/2020-12-01/generated/azure_mgmt_compute/models/ssh_public_key.rb +64 -0
  160. data/lib/2020-12-01/generated/azure_mgmt_compute/models/ssh_public_key_generate_key_pair_result.rb +73 -0
  161. data/lib/2020-12-01/generated/azure_mgmt_compute/models/ssh_public_key_resource.rb +102 -0
  162. data/lib/2020-12-01/generated/azure_mgmt_compute/models/ssh_public_key_update_resource.rb +67 -0
  163. data/lib/2020-12-01/generated/azure_mgmt_compute/models/ssh_public_keys_group_list_result.rb +100 -0
  164. data/lib/2020-12-01/generated/azure_mgmt_compute/models/status_level_types.rb +17 -0
  165. data/lib/2020-12-01/generated/azure_mgmt_compute/models/storage_account_types.rb +18 -0
  166. data/lib/2020-12-01/generated/azure_mgmt_compute/models/storage_profile.rb +89 -0
  167. data/lib/2020-12-01/generated/azure_mgmt_compute/models/sub_resource.rb +47 -0
  168. data/lib/2020-12-01/generated/azure_mgmt_compute/models/sub_resource_read_only.rb +48 -0
  169. data/lib/2020-12-01/generated/azure_mgmt_compute/models/sub_resource_with_colocation_status.rb +57 -0
  170. data/lib/2020-12-01/generated/azure_mgmt_compute/models/terminate_notification_profile.rb +62 -0
  171. data/lib/2020-12-01/generated/azure_mgmt_compute/models/throttled_requests_input.rb +99 -0
  172. data/lib/2020-12-01/generated/azure_mgmt_compute/models/uefi_settings.rb +60 -0
  173. data/lib/2020-12-01/generated/azure_mgmt_compute/models/update_resource.rb +54 -0
  174. data/lib/2020-12-01/generated/azure_mgmt_compute/models/upgrade_mode.rb +17 -0
  175. data/lib/2020-12-01/generated/azure_mgmt_compute/models/upgrade_operation_historical_status_info.rb +73 -0
  176. data/lib/2020-12-01/generated/azure_mgmt_compute/models/upgrade_operation_historical_status_info_properties.rb +116 -0
  177. data/lib/2020-12-01/generated/azure_mgmt_compute/models/upgrade_operation_history_status.rb +74 -0
  178. data/lib/2020-12-01/generated/azure_mgmt_compute/models/upgrade_operation_invoker.rb +17 -0
  179. data/lib/2020-12-01/generated/azure_mgmt_compute/models/upgrade_policy.rb +79 -0
  180. data/lib/2020-12-01/generated/azure_mgmt_compute/models/upgrade_state.rb +18 -0
  181. data/lib/2020-12-01/generated/azure_mgmt_compute/models/usage.rb +83 -0
  182. data/lib/2020-12-01/generated/azure_mgmt_compute/models/usage_name.rb +57 -0
  183. data/lib/2020-12-01/generated/azure_mgmt_compute/models/vault_certificate.rb +72 -0
  184. data/lib/2020-12-01/generated/azure_mgmt_compute/models/vault_secret_group.rb +69 -0
  185. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_hard_disk.rb +46 -0
  186. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine.rb +488 -0
  187. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_agent_instance_view.rb +87 -0
  188. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_assess_patches_result.rb +152 -0
  189. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_capture_parameters.rb +69 -0
  190. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_capture_result.rb +99 -0
  191. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_eviction_policy_types.rb +16 -0
  192. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_extension.rb +208 -0
  193. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_extension_handler_instance_view.rb +71 -0
  194. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_extension_image.rb +146 -0
  195. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_extension_instance_view.rb +109 -0
  196. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_extension_update.rb +147 -0
  197. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_extensions_list_result.rb +55 -0
  198. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_health_status.rb +48 -0
  199. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_identity.rb +102 -0
  200. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_identity_user_assigned_identities_value.rb +61 -0
  201. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_image.rb +184 -0
  202. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_image_feature.rb +57 -0
  203. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_image_resource.rb +100 -0
  204. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_install_patches_parameters.rb +87 -0
  205. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_install_patches_result.rb +204 -0
  206. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_instance_view.rb +258 -0
  207. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_list_result.rb +99 -0
  208. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_patch_status.rb +83 -0
  209. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_priority_types.rb +17 -0
  210. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_reimage_parameters.rb +49 -0
  211. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_run_command.rb +241 -0
  212. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_run_command_instance_view.rb +135 -0
  213. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_run_command_script_source.rb +68 -0
  214. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_run_command_update.rb +206 -0
  215. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_run_commands_list_result.rb +98 -0
  216. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set.rb +358 -0
  217. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_data_disk.rb +153 -0
  218. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_extension.rb +197 -0
  219. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_extension_list_result.rb +103 -0
  220. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_extension_profile.rb +70 -0
  221. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_extension_update.rb +198 -0
  222. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_identity.rb +105 -0
  223. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_identity_user_assigned_identities_value.rb +61 -0
  224. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_instance_view.rb +113 -0
  225. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_instance_view_statuses_summary.rb +59 -0
  226. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_ip_tag.rb +58 -0
  227. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_ipconfiguration.rb +195 -0
  228. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_list_osupgrade_history.rb +104 -0
  229. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_list_result.rb +100 -0
  230. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_list_skus_result.rb +101 -0
  231. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_list_with_link_result.rb +102 -0
  232. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_managed_disk_parameters.rb +63 -0
  233. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_network_configuration.rb +149 -0
  234. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_network_configuration_dns_settings.rb +56 -0
  235. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_network_profile.rb +71 -0
  236. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_osdisk.rb +180 -0
  237. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_osprofile.rb +167 -0
  238. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_public_ipaddress_configuration.rb +120 -0
  239. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_public_ipaddress_configuration_dns_settings.rb +51 -0
  240. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_reimage_parameters.rb +65 -0
  241. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_scale_in_rules.rb +17 -0
  242. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_sku.rb +74 -0
  243. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_sku_capacity.rb +85 -0
  244. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_sku_scale_type.rb +16 -0
  245. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_storage_profile.rb +91 -0
  246. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_update.rb +210 -0
  247. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_update_ipconfiguration.rb +190 -0
  248. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_update_network_configuration.rb +148 -0
  249. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_update_network_profile.rb +72 -0
  250. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_update_osdisk.rb +122 -0
  251. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_update_osprofile.rb +92 -0
  252. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_update_public_ipaddress_configuration.rb +72 -0
  253. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_update_storage_profile.rb +80 -0
  254. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_update_vmprofile.rb +151 -0
  255. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_vm.rb +398 -0
  256. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_vmextension.rb +190 -0
  257. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_vmextension_update.rb +164 -0
  258. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_vmextensions_list_result.rb +57 -0
  259. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_vmextensions_summary.rb +70 -0
  260. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_vminstance_ids.rb +57 -0
  261. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_vminstance_required_ids.rb +55 -0
  262. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_vminstance_view.rb +211 -0
  263. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_vmlist_result.rb +101 -0
  264. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_vmnetwork_profile_configuration.rb +57 -0
  265. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_vmprofile.rb +190 -0
  266. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_vmprotection_policy.rb +60 -0
  267. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_scale_set_vmreimage_parameters.rb +44 -0
  268. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_size.rb +106 -0
  269. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_size_list_result.rb +55 -0
  270. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_size_types.rb +180 -0
  271. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_software_patch_properties.rb +172 -0
  272. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_status_code_count.rb +61 -0
  273. data/lib/2020-12-01/generated/azure_mgmt_compute/models/virtual_machine_update.rb +418 -0
  274. data/lib/2020-12-01/generated/azure_mgmt_compute/models/vm_disk_types.rb +16 -0
  275. data/lib/2020-12-01/generated/azure_mgmt_compute/models/vmguest_patch_classification_linux.rb +17 -0
  276. data/lib/2020-12-01/generated/azure_mgmt_compute/models/vmguest_patch_classification_windows.rb +22 -0
  277. data/lib/2020-12-01/generated/azure_mgmt_compute/models/vmguest_patch_reboot_behavior.rb +18 -0
  278. data/lib/2020-12-01/generated/azure_mgmt_compute/models/vmguest_patch_reboot_setting.rb +17 -0
  279. data/lib/2020-12-01/generated/azure_mgmt_compute/models/vmguest_patch_reboot_status.rb +20 -0
  280. data/lib/2020-12-01/generated/azure_mgmt_compute/models/vmscale_set_convert_to_single_placement_group_input.rb +52 -0
  281. data/lib/2020-12-01/generated/azure_mgmt_compute/models/win_rmconfiguration.rb +56 -0
  282. data/lib/2020-12-01/generated/azure_mgmt_compute/models/win_rmlistener.rb +67 -0
  283. data/lib/2020-12-01/generated/azure_mgmt_compute/models/windows_configuration.rb +127 -0
  284. data/lib/2020-12-01/generated/azure_mgmt_compute/models/windows_parameters.rb +117 -0
  285. data/lib/2020-12-01/generated/azure_mgmt_compute/models/windows_vmguest_patch_mode.rb +17 -0
  286. data/lib/2020-12-01/generated/azure_mgmt_compute/module_definition.rb +9 -0
  287. data/lib/2020-12-01/generated/azure_mgmt_compute/operations.rb +109 -0
  288. data/lib/2020-12-01/generated/azure_mgmt_compute/proximity_placement_groups.rb +846 -0
  289. data/lib/2020-12-01/generated/azure_mgmt_compute/ssh_public_keys.rb +939 -0
  290. data/lib/2020-12-01/generated/azure_mgmt_compute/usage_operations.rb +241 -0
  291. data/lib/2020-12-01/generated/azure_mgmt_compute/virtual_machine_extension_images.rb +360 -0
  292. data/lib/2020-12-01/generated/azure_mgmt_compute/virtual_machine_extensions.rb +701 -0
  293. data/lib/2020-12-01/generated/azure_mgmt_compute/virtual_machine_images.rb +600 -0
  294. data/lib/2020-12-01/generated/azure_mgmt_compute/virtual_machine_images_edge_zone.rb +626 -0
  295. data/lib/2020-12-01/generated/azure_mgmt_compute/virtual_machine_run_commands.rb +1112 -0
  296. data/lib/2020-12-01/generated/azure_mgmt_compute/virtual_machine_scale_set_extensions.rb +821 -0
  297. data/lib/2020-12-01/generated/azure_mgmt_compute/virtual_machine_scale_set_rolling_upgrades.rb +498 -0
  298. data/lib/2020-12-01/generated/azure_mgmt_compute/virtual_machine_scale_set_vmextensions.rb +709 -0
  299. data/lib/2020-12-01/generated/azure_mgmt_compute/virtual_machine_scale_set_vmrun_commands.rb +827 -0
  300. data/lib/2020-12-01/generated/azure_mgmt_compute/virtual_machine_scale_set_vms.rb +2230 -0
  301. data/lib/2020-12-01/generated/azure_mgmt_compute/virtual_machine_scale_sets.rb +3523 -0
  302. data/lib/2020-12-01/generated/azure_mgmt_compute/virtual_machine_sizes.rb +122 -0
  303. data/lib/2020-12-01/generated/azure_mgmt_compute/virtual_machines.rb +3446 -0
  304. data/lib/azure_mgmt_compute.rb +1 -0
  305. data/lib/profiles/latest/modules/compute_profile_module.rb +1010 -944
  306. data/lib/version.rb +1 -1
  307. metadata +283 -2
@@ -0,0 +1,2230 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Compute::Mgmt::V2020_12_01
7
+ #
8
+ # Compute Client
9
+ #
10
+ class VirtualMachineScaleSetVMs
11
+ include MsRestAzure
12
+
13
+ #
14
+ # Creates and initializes a new instance of the VirtualMachineScaleSetVMs class.
15
+ # @param client service class for accessing basic functionality.
16
+ #
17
+ def initialize(client)
18
+ @client = client
19
+ end
20
+
21
+ # @return [ComputeManagementClient] reference to the ComputeManagementClient
22
+ attr_reader :client
23
+
24
+ #
25
+ # Reimages (upgrade the operating system) a specific virtual machine in a VM
26
+ # scale set.
27
+ #
28
+ # @param resource_group_name [String] The name of the resource group.
29
+ # @param vm_scale_set_name [String] The name of the VM scale set.
30
+ # @param instance_id [String] The instance ID of the virtual machine.
31
+ # @param vm_scale_set_vmreimage_input
32
+ # [VirtualMachineScaleSetVMReimageParameters] Parameters for the Reimaging
33
+ # Virtual machine in ScaleSet.
34
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
35
+ # will be added to the HTTP request.
36
+ #
37
+ def reimage(resource_group_name, vm_scale_set_name, instance_id, vm_scale_set_vmreimage_input:nil, custom_headers:nil)
38
+ response = reimage_async(resource_group_name, vm_scale_set_name, instance_id, vm_scale_set_vmreimage_input:vm_scale_set_vmreimage_input, custom_headers:custom_headers).value!
39
+ nil
40
+ end
41
+
42
+ #
43
+ # @param resource_group_name [String] The name of the resource group.
44
+ # @param vm_scale_set_name [String] The name of the VM scale set.
45
+ # @param instance_id [String] The instance ID of the virtual machine.
46
+ # @param vm_scale_set_vmreimage_input
47
+ # [VirtualMachineScaleSetVMReimageParameters] Parameters for the Reimaging
48
+ # Virtual machine in ScaleSet.
49
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
50
+ # will be added to the HTTP request.
51
+ #
52
+ # @return [Concurrent::Promise] promise which provides async access to http
53
+ # response.
54
+ #
55
+ def reimage_async(resource_group_name, vm_scale_set_name, instance_id, vm_scale_set_vmreimage_input:nil, custom_headers:nil)
56
+ # Send request
57
+ promise = begin_reimage_async(resource_group_name, vm_scale_set_name, instance_id, vm_scale_set_vmreimage_input:vm_scale_set_vmreimage_input, custom_headers:custom_headers)
58
+
59
+ promise = promise.then do |response|
60
+ # Defining deserialization method.
61
+ deserialize_method = lambda do |parsed_response|
62
+ end
63
+
64
+ # Waiting for response.
65
+ @client.get_long_running_operation_result(response, deserialize_method)
66
+ end
67
+
68
+ promise
69
+ end
70
+
71
+ #
72
+ # Allows you to re-image all the disks ( including data disks ) in the a VM
73
+ # scale set instance. This operation is only supported for managed disks.
74
+ #
75
+ # @param resource_group_name [String] The name of the resource group.
76
+ # @param vm_scale_set_name [String] The name of the VM scale set.
77
+ # @param instance_id [String] The instance ID of the virtual machine.
78
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
79
+ # will be added to the HTTP request.
80
+ #
81
+ def reimage_all(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
82
+ response = reimage_all_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
83
+ nil
84
+ end
85
+
86
+ #
87
+ # @param resource_group_name [String] The name of the resource group.
88
+ # @param vm_scale_set_name [String] The name of the VM scale set.
89
+ # @param instance_id [String] The instance ID of the virtual machine.
90
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
91
+ # will be added to the HTTP request.
92
+ #
93
+ # @return [Concurrent::Promise] promise which provides async access to http
94
+ # response.
95
+ #
96
+ def reimage_all_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
97
+ # Send request
98
+ promise = begin_reimage_all_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers)
99
+
100
+ promise = promise.then do |response|
101
+ # Defining deserialization method.
102
+ deserialize_method = lambda do |parsed_response|
103
+ end
104
+
105
+ # Waiting for response.
106
+ @client.get_long_running_operation_result(response, deserialize_method)
107
+ end
108
+
109
+ promise
110
+ end
111
+
112
+ #
113
+ # Deallocates a specific virtual machine in a VM scale set. Shuts down the
114
+ # virtual machine and releases the compute resources it uses. You are not
115
+ # billed for the compute resources of this virtual machine once it is
116
+ # deallocated.
117
+ #
118
+ # @param resource_group_name [String] The name of the resource group.
119
+ # @param vm_scale_set_name [String] The name of the VM scale set.
120
+ # @param instance_id [String] The instance ID of the virtual machine.
121
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
122
+ # will be added to the HTTP request.
123
+ #
124
+ def deallocate(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
125
+ response = deallocate_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
126
+ nil
127
+ end
128
+
129
+ #
130
+ # @param resource_group_name [String] The name of the resource group.
131
+ # @param vm_scale_set_name [String] The name of the VM scale set.
132
+ # @param instance_id [String] The instance ID of the virtual machine.
133
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
134
+ # will be added to the HTTP request.
135
+ #
136
+ # @return [Concurrent::Promise] promise which provides async access to http
137
+ # response.
138
+ #
139
+ def deallocate_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
140
+ # Send request
141
+ promise = begin_deallocate_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers)
142
+
143
+ promise = promise.then do |response|
144
+ # Defining deserialization method.
145
+ deserialize_method = lambda do |parsed_response|
146
+ end
147
+
148
+ # Waiting for response.
149
+ @client.get_long_running_operation_result(response, deserialize_method)
150
+ end
151
+
152
+ promise
153
+ end
154
+
155
+ #
156
+ # Updates a virtual machine of a VM scale set.
157
+ #
158
+ # @param resource_group_name [String] The name of the resource group.
159
+ # @param vm_scale_set_name [String] The name of the VM scale set where the
160
+ # extension should be create or updated.
161
+ # @param instance_id [String] The instance ID of the virtual machine.
162
+ # @param parameters [VirtualMachineScaleSetVM] Parameters supplied to the
163
+ # Update Virtual Machine Scale Sets VM operation.
164
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
165
+ # will be added to the HTTP request.
166
+ #
167
+ # @return [VirtualMachineScaleSetVM] operation results.
168
+ #
169
+ def update(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:nil)
170
+ response = update_async(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:custom_headers).value!
171
+ response.body unless response.nil?
172
+ end
173
+
174
+ #
175
+ # @param resource_group_name [String] The name of the resource group.
176
+ # @param vm_scale_set_name [String] The name of the VM scale set where the
177
+ # extension should be create or updated.
178
+ # @param instance_id [String] The instance ID of the virtual machine.
179
+ # @param parameters [VirtualMachineScaleSetVM] Parameters supplied to the
180
+ # Update Virtual Machine Scale Sets VM operation.
181
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
182
+ # will be added to the HTTP request.
183
+ #
184
+ # @return [Concurrent::Promise] promise which provides async access to http
185
+ # response.
186
+ #
187
+ def update_async(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:nil)
188
+ # Send request
189
+ promise = begin_update_async(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:custom_headers)
190
+
191
+ promise = promise.then do |response|
192
+ # Defining deserialization method.
193
+ deserialize_method = lambda do |parsed_response|
194
+ result_mapper = Azure::Compute::Mgmt::V2020_12_01::Models::VirtualMachineScaleSetVM.mapper()
195
+ parsed_response = @client.deserialize(result_mapper, parsed_response)
196
+ end
197
+
198
+ # Waiting for response.
199
+ @client.get_long_running_operation_result(response, deserialize_method)
200
+ end
201
+
202
+ promise
203
+ end
204
+
205
+ #
206
+ # Deletes a virtual machine from a VM scale set.
207
+ #
208
+ # @param resource_group_name [String] The name of the resource group.
209
+ # @param vm_scale_set_name [String] The name of the VM scale set.
210
+ # @param instance_id [String] The instance ID of the virtual machine.
211
+ # @param force_deletion [Boolean] Optional parameter to force delete a virtual
212
+ # machine from a VM scale set. (Feature in Preview)
213
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
214
+ # will be added to the HTTP request.
215
+ #
216
+ def delete(resource_group_name, vm_scale_set_name, instance_id, force_deletion:nil, custom_headers:nil)
217
+ response = delete_async(resource_group_name, vm_scale_set_name, instance_id, force_deletion:force_deletion, custom_headers:custom_headers).value!
218
+ nil
219
+ end
220
+
221
+ #
222
+ # @param resource_group_name [String] The name of the resource group.
223
+ # @param vm_scale_set_name [String] The name of the VM scale set.
224
+ # @param instance_id [String] The instance ID of the virtual machine.
225
+ # @param force_deletion [Boolean] Optional parameter to force delete a virtual
226
+ # machine from a VM scale set. (Feature in Preview)
227
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
228
+ # will be added to the HTTP request.
229
+ #
230
+ # @return [Concurrent::Promise] promise which provides async access to http
231
+ # response.
232
+ #
233
+ def delete_async(resource_group_name, vm_scale_set_name, instance_id, force_deletion:nil, custom_headers:nil)
234
+ # Send request
235
+ promise = begin_delete_async(resource_group_name, vm_scale_set_name, instance_id, force_deletion:force_deletion, custom_headers:custom_headers)
236
+
237
+ promise = promise.then do |response|
238
+ # Defining deserialization method.
239
+ deserialize_method = lambda do |parsed_response|
240
+ end
241
+
242
+ # Waiting for response.
243
+ @client.get_long_running_operation_result(response, deserialize_method)
244
+ end
245
+
246
+ promise
247
+ end
248
+
249
+ #
250
+ # Gets a virtual machine from a VM scale set.
251
+ #
252
+ # @param resource_group_name [String] The name of the resource group.
253
+ # @param vm_scale_set_name [String] The name of the VM scale set.
254
+ # @param instance_id [String] The instance ID of the virtual machine.
255
+ # @param expand [InstanceViewTypes] The expand expression to apply on the
256
+ # operation. Possible values include: 'instanceView'
257
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
258
+ # will be added to the HTTP request.
259
+ #
260
+ # @return [VirtualMachineScaleSetVM] operation results.
261
+ #
262
+ def get(resource_group_name, vm_scale_set_name, instance_id, expand:nil, custom_headers:nil)
263
+ response = get_async(resource_group_name, vm_scale_set_name, instance_id, expand:expand, custom_headers:custom_headers).value!
264
+ response.body unless response.nil?
265
+ end
266
+
267
+ #
268
+ # Gets a virtual machine from a VM scale set.
269
+ #
270
+ # @param resource_group_name [String] The name of the resource group.
271
+ # @param vm_scale_set_name [String] The name of the VM scale set.
272
+ # @param instance_id [String] The instance ID of the virtual machine.
273
+ # @param expand [InstanceViewTypes] The expand expression to apply on the
274
+ # operation. Possible values include: 'instanceView'
275
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
276
+ # will be added to the HTTP request.
277
+ #
278
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
279
+ #
280
+ def get_with_http_info(resource_group_name, vm_scale_set_name, instance_id, expand:nil, custom_headers:nil)
281
+ get_async(resource_group_name, vm_scale_set_name, instance_id, expand:expand, custom_headers:custom_headers).value!
282
+ end
283
+
284
+ #
285
+ # Gets a virtual machine from a VM scale set.
286
+ #
287
+ # @param resource_group_name [String] The name of the resource group.
288
+ # @param vm_scale_set_name [String] The name of the VM scale set.
289
+ # @param instance_id [String] The instance ID of the virtual machine.
290
+ # @param expand [InstanceViewTypes] The expand expression to apply on the
291
+ # operation. Possible values include: 'instanceView'
292
+ # @param [Hash{String => String}] A hash of custom headers that will be added
293
+ # to the HTTP request.
294
+ #
295
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
296
+ #
297
+ def get_async(resource_group_name, vm_scale_set_name, instance_id, expand:nil, custom_headers:nil)
298
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
299
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
300
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
301
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
302
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
303
+
304
+
305
+ request_headers = {}
306
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
307
+
308
+ # Set Headers
309
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
310
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
311
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}'
312
+
313
+ request_url = @base_url || @client.base_url
314
+
315
+ options = {
316
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
317
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
318
+ query_params: {'$expand' => expand,'api-version' => @client.api_version},
319
+ headers: request_headers.merge(custom_headers || {}),
320
+ base_url: request_url
321
+ }
322
+ promise = @client.make_request_async(:get, path_template, options)
323
+
324
+ promise = promise.then do |result|
325
+ http_response = result.response
326
+ status_code = http_response.status
327
+ response_content = http_response.body
328
+ unless status_code == 200
329
+ error_model = JSON.load(response_content)
330
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
331
+ end
332
+
333
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
334
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
335
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
336
+ # Deserialize Response
337
+ if status_code == 200
338
+ begin
339
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
340
+ result_mapper = Azure::Compute::Mgmt::V2020_12_01::Models::VirtualMachineScaleSetVM.mapper()
341
+ result.body = @client.deserialize(result_mapper, parsed_response)
342
+ rescue Exception => e
343
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
344
+ end
345
+ end
346
+
347
+ result
348
+ end
349
+
350
+ promise.execute
351
+ end
352
+
353
+ #
354
+ # Gets the status of a virtual machine from a VM scale set.
355
+ #
356
+ # @param resource_group_name [String] The name of the resource group.
357
+ # @param vm_scale_set_name [String] The name of the VM scale set.
358
+ # @param instance_id [String] The instance ID of the virtual machine.
359
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
360
+ # will be added to the HTTP request.
361
+ #
362
+ # @return [VirtualMachineScaleSetVMInstanceView] operation results.
363
+ #
364
+ def get_instance_view(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
365
+ response = get_instance_view_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
366
+ response.body unless response.nil?
367
+ end
368
+
369
+ #
370
+ # Gets the status of a virtual machine from a VM scale set.
371
+ #
372
+ # @param resource_group_name [String] The name of the resource group.
373
+ # @param vm_scale_set_name [String] The name of the VM scale set.
374
+ # @param instance_id [String] The instance ID of the virtual machine.
375
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
376
+ # will be added to the HTTP request.
377
+ #
378
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
379
+ #
380
+ def get_instance_view_with_http_info(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
381
+ get_instance_view_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
382
+ end
383
+
384
+ #
385
+ # Gets the status of a virtual machine from a VM scale set.
386
+ #
387
+ # @param resource_group_name [String] The name of the resource group.
388
+ # @param vm_scale_set_name [String] The name of the VM scale set.
389
+ # @param instance_id [String] The instance ID of the virtual machine.
390
+ # @param [Hash{String => String}] A hash of custom headers that will be added
391
+ # to the HTTP request.
392
+ #
393
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
394
+ #
395
+ def get_instance_view_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
396
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
397
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
398
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
399
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
400
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
401
+
402
+
403
+ request_headers = {}
404
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
405
+
406
+ # Set Headers
407
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
408
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
409
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/instanceView'
410
+
411
+ request_url = @base_url || @client.base_url
412
+
413
+ options = {
414
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
415
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
416
+ query_params: {'api-version' => @client.api_version},
417
+ headers: request_headers.merge(custom_headers || {}),
418
+ base_url: request_url
419
+ }
420
+ promise = @client.make_request_async(:get, path_template, options)
421
+
422
+ promise = promise.then do |result|
423
+ http_response = result.response
424
+ status_code = http_response.status
425
+ response_content = http_response.body
426
+ unless status_code == 200
427
+ error_model = JSON.load(response_content)
428
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
429
+ end
430
+
431
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
432
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
433
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
434
+ # Deserialize Response
435
+ if status_code == 200
436
+ begin
437
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
438
+ result_mapper = Azure::Compute::Mgmt::V2020_12_01::Models::VirtualMachineScaleSetVMInstanceView.mapper()
439
+ result.body = @client.deserialize(result_mapper, parsed_response)
440
+ rescue Exception => e
441
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
442
+ end
443
+ end
444
+
445
+ result
446
+ end
447
+
448
+ promise.execute
449
+ end
450
+
451
+ #
452
+ # Gets a list of all virtual machines in a VM scale sets.
453
+ #
454
+ # @param resource_group_name [String] The name of the resource group.
455
+ # @param virtual_machine_scale_set_name [String] The name of the VM scale set.
456
+ # @param filter [String] The filter to apply to the operation. Allowed values
457
+ # are 'startswith(instanceView/statuses/code, 'PowerState') eq true',
458
+ # 'properties/latestModelApplied eq true', 'properties/latestModelApplied eq
459
+ # false'.
460
+ # @param select [String] The list parameters. Allowed values are
461
+ # 'instanceView', 'instanceView/statuses'.
462
+ # @param expand [String] The expand expression to apply to the operation.
463
+ # Allowed values are 'instanceView'.
464
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
465
+ # will be added to the HTTP request.
466
+ #
467
+ # @return [Array<VirtualMachineScaleSetVM>] operation results.
468
+ #
469
+ def list(resource_group_name, virtual_machine_scale_set_name, filter:nil, select:nil, expand:nil, custom_headers:nil)
470
+ first_page = list_as_lazy(resource_group_name, virtual_machine_scale_set_name, filter:filter, select:select, expand:expand, custom_headers:custom_headers)
471
+ first_page.get_all_items
472
+ end
473
+
474
+ #
475
+ # Gets a list of all virtual machines in a VM scale sets.
476
+ #
477
+ # @param resource_group_name [String] The name of the resource group.
478
+ # @param virtual_machine_scale_set_name [String] The name of the VM scale set.
479
+ # @param filter [String] The filter to apply to the operation. Allowed values
480
+ # are 'startswith(instanceView/statuses/code, 'PowerState') eq true',
481
+ # 'properties/latestModelApplied eq true', 'properties/latestModelApplied eq
482
+ # false'.
483
+ # @param select [String] The list parameters. Allowed values are
484
+ # 'instanceView', 'instanceView/statuses'.
485
+ # @param expand [String] The expand expression to apply to the operation.
486
+ # Allowed values are 'instanceView'.
487
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
488
+ # will be added to the HTTP request.
489
+ #
490
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
491
+ #
492
+ def list_with_http_info(resource_group_name, virtual_machine_scale_set_name, filter:nil, select:nil, expand:nil, custom_headers:nil)
493
+ list_async(resource_group_name, virtual_machine_scale_set_name, filter:filter, select:select, expand:expand, custom_headers:custom_headers).value!
494
+ end
495
+
496
+ #
497
+ # Gets a list of all virtual machines in a VM scale sets.
498
+ #
499
+ # @param resource_group_name [String] The name of the resource group.
500
+ # @param virtual_machine_scale_set_name [String] The name of the VM scale set.
501
+ # @param filter [String] The filter to apply to the operation. Allowed values
502
+ # are 'startswith(instanceView/statuses/code, 'PowerState') eq true',
503
+ # 'properties/latestModelApplied eq true', 'properties/latestModelApplied eq
504
+ # false'.
505
+ # @param select [String] The list parameters. Allowed values are
506
+ # 'instanceView', 'instanceView/statuses'.
507
+ # @param expand [String] The expand expression to apply to the operation.
508
+ # Allowed values are 'instanceView'.
509
+ # @param [Hash{String => String}] A hash of custom headers that will be added
510
+ # to the HTTP request.
511
+ #
512
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
513
+ #
514
+ def list_async(resource_group_name, virtual_machine_scale_set_name, filter:nil, select:nil, expand:nil, custom_headers:nil)
515
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
516
+ fail ArgumentError, 'virtual_machine_scale_set_name is nil' if virtual_machine_scale_set_name.nil?
517
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
518
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
519
+
520
+
521
+ request_headers = {}
522
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
523
+
524
+ # Set Headers
525
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
526
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
527
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines'
528
+
529
+ request_url = @base_url || @client.base_url
530
+
531
+ options = {
532
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
533
+ path_params: {'resourceGroupName' => resource_group_name,'virtualMachineScaleSetName' => virtual_machine_scale_set_name,'subscriptionId' => @client.subscription_id},
534
+ query_params: {'$filter' => filter,'$select' => select,'$expand' => expand,'api-version' => @client.api_version},
535
+ headers: request_headers.merge(custom_headers || {}),
536
+ base_url: request_url
537
+ }
538
+ promise = @client.make_request_async(:get, path_template, options)
539
+
540
+ promise = promise.then do |result|
541
+ http_response = result.response
542
+ status_code = http_response.status
543
+ response_content = http_response.body
544
+ unless status_code == 200
545
+ error_model = JSON.load(response_content)
546
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
547
+ end
548
+
549
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
550
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
551
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
552
+ # Deserialize Response
553
+ if status_code == 200
554
+ begin
555
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
556
+ result_mapper = Azure::Compute::Mgmt::V2020_12_01::Models::VirtualMachineScaleSetVMListResult.mapper()
557
+ result.body = @client.deserialize(result_mapper, parsed_response)
558
+ rescue Exception => e
559
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
560
+ end
561
+ end
562
+
563
+ result
564
+ end
565
+
566
+ promise.execute
567
+ end
568
+
569
+ #
570
+ # Power off (stop) a virtual machine in a VM scale set. Note that resources are
571
+ # still attached and you are getting charged for the resources. Instead, use
572
+ # deallocate to release resources and avoid charges.
573
+ #
574
+ # @param resource_group_name [String] The name of the resource group.
575
+ # @param vm_scale_set_name [String] The name of the VM scale set.
576
+ # @param instance_id [String] The instance ID of the virtual machine.
577
+ # @param skip_shutdown [Boolean] The parameter to request non-graceful VM
578
+ # shutdown. True value for this flag indicates non-graceful shutdown whereas
579
+ # false indicates otherwise. Default value for this flag is false if not
580
+ # specified
581
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
582
+ # will be added to the HTTP request.
583
+ #
584
+ def power_off(resource_group_name, vm_scale_set_name, instance_id, skip_shutdown:false, custom_headers:nil)
585
+ response = power_off_async(resource_group_name, vm_scale_set_name, instance_id, skip_shutdown:skip_shutdown, custom_headers:custom_headers).value!
586
+ nil
587
+ end
588
+
589
+ #
590
+ # @param resource_group_name [String] The name of the resource group.
591
+ # @param vm_scale_set_name [String] The name of the VM scale set.
592
+ # @param instance_id [String] The instance ID of the virtual machine.
593
+ # @param skip_shutdown [Boolean] The parameter to request non-graceful VM
594
+ # shutdown. True value for this flag indicates non-graceful shutdown whereas
595
+ # false indicates otherwise. Default value for this flag is false if not
596
+ # specified
597
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
598
+ # will be added to the HTTP request.
599
+ #
600
+ # @return [Concurrent::Promise] promise which provides async access to http
601
+ # response.
602
+ #
603
+ def power_off_async(resource_group_name, vm_scale_set_name, instance_id, skip_shutdown:false, custom_headers:nil)
604
+ # Send request
605
+ promise = begin_power_off_async(resource_group_name, vm_scale_set_name, instance_id, skip_shutdown:skip_shutdown, custom_headers:custom_headers)
606
+
607
+ promise = promise.then do |response|
608
+ # Defining deserialization method.
609
+ deserialize_method = lambda do |parsed_response|
610
+ end
611
+
612
+ # Waiting for response.
613
+ @client.get_long_running_operation_result(response, deserialize_method)
614
+ end
615
+
616
+ promise
617
+ end
618
+
619
+ #
620
+ # Restarts a virtual machine in a VM scale set.
621
+ #
622
+ # @param resource_group_name [String] The name of the resource group.
623
+ # @param vm_scale_set_name [String] The name of the VM scale set.
624
+ # @param instance_id [String] The instance ID of the virtual machine.
625
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
626
+ # will be added to the HTTP request.
627
+ #
628
+ def restart(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
629
+ response = restart_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
630
+ nil
631
+ end
632
+
633
+ #
634
+ # @param resource_group_name [String] The name of the resource group.
635
+ # @param vm_scale_set_name [String] The name of the VM scale set.
636
+ # @param instance_id [String] The instance ID of the virtual machine.
637
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
638
+ # will be added to the HTTP request.
639
+ #
640
+ # @return [Concurrent::Promise] promise which provides async access to http
641
+ # response.
642
+ #
643
+ def restart_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
644
+ # Send request
645
+ promise = begin_restart_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers)
646
+
647
+ promise = promise.then do |response|
648
+ # Defining deserialization method.
649
+ deserialize_method = lambda do |parsed_response|
650
+ end
651
+
652
+ # Waiting for response.
653
+ @client.get_long_running_operation_result(response, deserialize_method)
654
+ end
655
+
656
+ promise
657
+ end
658
+
659
+ #
660
+ # Starts a virtual machine in a VM scale set.
661
+ #
662
+ # @param resource_group_name [String] The name of the resource group.
663
+ # @param vm_scale_set_name [String] The name of the VM scale set.
664
+ # @param instance_id [String] The instance ID of the virtual machine.
665
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
666
+ # will be added to the HTTP request.
667
+ #
668
+ def start(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
669
+ response = start_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
670
+ nil
671
+ end
672
+
673
+ #
674
+ # @param resource_group_name [String] The name of the resource group.
675
+ # @param vm_scale_set_name [String] The name of the VM scale set.
676
+ # @param instance_id [String] The instance ID of the virtual machine.
677
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
678
+ # will be added to the HTTP request.
679
+ #
680
+ # @return [Concurrent::Promise] promise which provides async access to http
681
+ # response.
682
+ #
683
+ def start_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
684
+ # Send request
685
+ promise = begin_start_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers)
686
+
687
+ promise = promise.then do |response|
688
+ # Defining deserialization method.
689
+ deserialize_method = lambda do |parsed_response|
690
+ end
691
+
692
+ # Waiting for response.
693
+ @client.get_long_running_operation_result(response, deserialize_method)
694
+ end
695
+
696
+ promise
697
+ end
698
+
699
+ #
700
+ # Shuts down the virtual machine in the virtual machine scale set, moves it to
701
+ # a new node, and powers it back on.
702
+ #
703
+ # @param resource_group_name [String] The name of the resource group.
704
+ # @param vm_scale_set_name [String] The name of the VM scale set.
705
+ # @param instance_id [String] The instance ID of the virtual machine.
706
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
707
+ # will be added to the HTTP request.
708
+ #
709
+ def redeploy(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
710
+ response = redeploy_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
711
+ nil
712
+ end
713
+
714
+ #
715
+ # @param resource_group_name [String] The name of the resource group.
716
+ # @param vm_scale_set_name [String] The name of the VM scale set.
717
+ # @param instance_id [String] The instance ID of the virtual machine.
718
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
719
+ # will be added to the HTTP request.
720
+ #
721
+ # @return [Concurrent::Promise] promise which provides async access to http
722
+ # response.
723
+ #
724
+ def redeploy_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
725
+ # Send request
726
+ promise = begin_redeploy_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers)
727
+
728
+ promise = promise.then do |response|
729
+ # Defining deserialization method.
730
+ deserialize_method = lambda do |parsed_response|
731
+ end
732
+
733
+ # Waiting for response.
734
+ @client.get_long_running_operation_result(response, deserialize_method)
735
+ end
736
+
737
+ promise
738
+ end
739
+
740
+ #
741
+ # The operation to retrieve SAS URIs of boot diagnostic logs for a virtual
742
+ # machine in a VM scale set.
743
+ #
744
+ # @param resource_group_name [String] The name of the resource group.
745
+ # @param vm_scale_set_name [String] The name of the VM scale set.
746
+ # @param instance_id [String] The instance ID of the virtual machine.
747
+ # @param sas_uri_expiration_time_in_minutes [Integer] Expiration duration in
748
+ # minutes for the SAS URIs with a value between 1 to 1440 minutes.
749
+ # <br><br>NOTE: If not specified, SAS URIs will be generated with a default
750
+ # expiration duration of 120 minutes.
751
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
752
+ # will be added to the HTTP request.
753
+ #
754
+ # @return [RetrieveBootDiagnosticsDataResult] operation results.
755
+ #
756
+ def retrieve_boot_diagnostics_data(resource_group_name, vm_scale_set_name, instance_id, sas_uri_expiration_time_in_minutes:nil, custom_headers:nil)
757
+ response = retrieve_boot_diagnostics_data_async(resource_group_name, vm_scale_set_name, instance_id, sas_uri_expiration_time_in_minutes:sas_uri_expiration_time_in_minutes, custom_headers:custom_headers).value!
758
+ response.body unless response.nil?
759
+ end
760
+
761
+ #
762
+ # The operation to retrieve SAS URIs of boot diagnostic logs for a virtual
763
+ # machine in a VM scale set.
764
+ #
765
+ # @param resource_group_name [String] The name of the resource group.
766
+ # @param vm_scale_set_name [String] The name of the VM scale set.
767
+ # @param instance_id [String] The instance ID of the virtual machine.
768
+ # @param sas_uri_expiration_time_in_minutes [Integer] Expiration duration in
769
+ # minutes for the SAS URIs with a value between 1 to 1440 minutes.
770
+ # <br><br>NOTE: If not specified, SAS URIs will be generated with a default
771
+ # expiration duration of 120 minutes.
772
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
773
+ # will be added to the HTTP request.
774
+ #
775
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
776
+ #
777
+ def retrieve_boot_diagnostics_data_with_http_info(resource_group_name, vm_scale_set_name, instance_id, sas_uri_expiration_time_in_minutes:nil, custom_headers:nil)
778
+ retrieve_boot_diagnostics_data_async(resource_group_name, vm_scale_set_name, instance_id, sas_uri_expiration_time_in_minutes:sas_uri_expiration_time_in_minutes, custom_headers:custom_headers).value!
779
+ end
780
+
781
+ #
782
+ # The operation to retrieve SAS URIs of boot diagnostic logs for a virtual
783
+ # machine in a VM scale set.
784
+ #
785
+ # @param resource_group_name [String] The name of the resource group.
786
+ # @param vm_scale_set_name [String] The name of the VM scale set.
787
+ # @param instance_id [String] The instance ID of the virtual machine.
788
+ # @param sas_uri_expiration_time_in_minutes [Integer] Expiration duration in
789
+ # minutes for the SAS URIs with a value between 1 to 1440 minutes.
790
+ # <br><br>NOTE: If not specified, SAS URIs will be generated with a default
791
+ # expiration duration of 120 minutes.
792
+ # @param [Hash{String => String}] A hash of custom headers that will be added
793
+ # to the HTTP request.
794
+ #
795
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
796
+ #
797
+ def retrieve_boot_diagnostics_data_async(resource_group_name, vm_scale_set_name, instance_id, sas_uri_expiration_time_in_minutes:nil, custom_headers:nil)
798
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
799
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
800
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
801
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
802
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
803
+
804
+
805
+ request_headers = {}
806
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
807
+
808
+ # Set Headers
809
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
810
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
811
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/retrieveBootDiagnosticsData'
812
+
813
+ request_url = @base_url || @client.base_url
814
+
815
+ options = {
816
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
817
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
818
+ query_params: {'sasUriExpirationTimeInMinutes' => sas_uri_expiration_time_in_minutes,'api-version' => @client.api_version},
819
+ headers: request_headers.merge(custom_headers || {}),
820
+ base_url: request_url
821
+ }
822
+ promise = @client.make_request_async(:post, path_template, options)
823
+
824
+ promise = promise.then do |result|
825
+ http_response = result.response
826
+ status_code = http_response.status
827
+ response_content = http_response.body
828
+ unless status_code == 200
829
+ error_model = JSON.load(response_content)
830
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
831
+ end
832
+
833
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
834
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
835
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
836
+ # Deserialize Response
837
+ if status_code == 200
838
+ begin
839
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
840
+ result_mapper = Azure::Compute::Mgmt::V2020_12_01::Models::RetrieveBootDiagnosticsDataResult.mapper()
841
+ result.body = @client.deserialize(result_mapper, parsed_response)
842
+ rescue Exception => e
843
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
844
+ end
845
+ end
846
+
847
+ result
848
+ end
849
+
850
+ promise.execute
851
+ end
852
+
853
+ #
854
+ # Performs maintenance on a virtual machine in a VM scale set.
855
+ #
856
+ # @param resource_group_name [String] The name of the resource group.
857
+ # @param vm_scale_set_name [String] The name of the VM scale set.
858
+ # @param instance_id [String] The instance ID of the virtual machine.
859
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
860
+ # will be added to the HTTP request.
861
+ #
862
+ def perform_maintenance(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
863
+ response = perform_maintenance_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
864
+ nil
865
+ end
866
+
867
+ #
868
+ # @param resource_group_name [String] The name of the resource group.
869
+ # @param vm_scale_set_name [String] The name of the VM scale set.
870
+ # @param instance_id [String] The instance ID of the virtual machine.
871
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
872
+ # will be added to the HTTP request.
873
+ #
874
+ # @return [Concurrent::Promise] promise which provides async access to http
875
+ # response.
876
+ #
877
+ def perform_maintenance_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
878
+ # Send request
879
+ promise = begin_perform_maintenance_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers)
880
+
881
+ promise = promise.then do |response|
882
+ # Defining deserialization method.
883
+ deserialize_method = lambda do |parsed_response|
884
+ end
885
+
886
+ # Waiting for response.
887
+ @client.get_long_running_operation_result(response, deserialize_method)
888
+ end
889
+
890
+ promise
891
+ end
892
+
893
+ #
894
+ # The operation to simulate the eviction of spot virtual machine in a VM scale
895
+ # set.
896
+ #
897
+ # @param resource_group_name [String] The name of the resource group.
898
+ # @param vm_scale_set_name [String] The name of the VM scale set.
899
+ # @param instance_id [String] The instance ID of the virtual machine.
900
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
901
+ # will be added to the HTTP request.
902
+ #
903
+ #
904
+ def simulate_eviction(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
905
+ response = simulate_eviction_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
906
+ nil
907
+ end
908
+
909
+ #
910
+ # The operation to simulate the eviction of spot virtual machine in a VM scale
911
+ # set.
912
+ #
913
+ # @param resource_group_name [String] The name of the resource group.
914
+ # @param vm_scale_set_name [String] The name of the VM scale set.
915
+ # @param instance_id [String] The instance ID of the virtual machine.
916
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
917
+ # will be added to the HTTP request.
918
+ #
919
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
920
+ #
921
+ def simulate_eviction_with_http_info(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
922
+ simulate_eviction_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
923
+ end
924
+
925
+ #
926
+ # The operation to simulate the eviction of spot virtual machine in a VM scale
927
+ # set.
928
+ #
929
+ # @param resource_group_name [String] The name of the resource group.
930
+ # @param vm_scale_set_name [String] The name of the VM scale set.
931
+ # @param instance_id [String] The instance ID of the virtual machine.
932
+ # @param [Hash{String => String}] A hash of custom headers that will be added
933
+ # to the HTTP request.
934
+ #
935
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
936
+ #
937
+ def simulate_eviction_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
938
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
939
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
940
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
941
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
942
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
943
+
944
+
945
+ request_headers = {}
946
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
947
+
948
+ # Set Headers
949
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
950
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
951
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/simulateEviction'
952
+
953
+ request_url = @base_url || @client.base_url
954
+
955
+ options = {
956
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
957
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
958
+ query_params: {'api-version' => @client.api_version},
959
+ headers: request_headers.merge(custom_headers || {}),
960
+ base_url: request_url
961
+ }
962
+ promise = @client.make_request_async(:post, path_template, options)
963
+
964
+ promise = promise.then do |result|
965
+ http_response = result.response
966
+ status_code = http_response.status
967
+ response_content = http_response.body
968
+ unless status_code == 204
969
+ error_model = JSON.load(response_content)
970
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
971
+ end
972
+
973
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
974
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
975
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
976
+
977
+ result
978
+ end
979
+
980
+ promise.execute
981
+ end
982
+
983
+ #
984
+ # Run command on a virtual machine in a VM scale set.
985
+ #
986
+ # @param resource_group_name [String] The name of the resource group.
987
+ # @param vm_scale_set_name [String] The name of the VM scale set.
988
+ # @param instance_id [String] The instance ID of the virtual machine.
989
+ # @param parameters [RunCommandInput] Parameters supplied to the Run command
990
+ # operation.
991
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
992
+ # will be added to the HTTP request.
993
+ #
994
+ # @return [RunCommandResult] operation results.
995
+ #
996
+ def run_command(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:nil)
997
+ response = run_command_async(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:custom_headers).value!
998
+ response.body unless response.nil?
999
+ end
1000
+
1001
+ #
1002
+ # @param resource_group_name [String] The name of the resource group.
1003
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1004
+ # @param instance_id [String] The instance ID of the virtual machine.
1005
+ # @param parameters [RunCommandInput] Parameters supplied to the Run command
1006
+ # operation.
1007
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1008
+ # will be added to the HTTP request.
1009
+ #
1010
+ # @return [Concurrent::Promise] promise which provides async access to http
1011
+ # response.
1012
+ #
1013
+ def run_command_async(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:nil)
1014
+ # Send request
1015
+ promise = begin_run_command_async(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:custom_headers)
1016
+
1017
+ promise = promise.then do |response|
1018
+ # Defining deserialization method.
1019
+ deserialize_method = lambda do |parsed_response|
1020
+ result_mapper = Azure::Compute::Mgmt::V2020_12_01::Models::RunCommandResult.mapper()
1021
+ parsed_response = @client.deserialize(result_mapper, parsed_response)
1022
+ end
1023
+
1024
+ # Waiting for response.
1025
+ @client.get_long_running_operation_result(response, deserialize_method, FinalStateVia::LOCATION)
1026
+ end
1027
+
1028
+ promise
1029
+ end
1030
+
1031
+ #
1032
+ # Reimages (upgrade the operating system) a specific virtual machine in a VM
1033
+ # scale set.
1034
+ #
1035
+ # @param resource_group_name [String] The name of the resource group.
1036
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1037
+ # @param instance_id [String] The instance ID of the virtual machine.
1038
+ # @param vm_scale_set_vmreimage_input
1039
+ # [VirtualMachineScaleSetVMReimageParameters] Parameters for the Reimaging
1040
+ # Virtual machine in ScaleSet.
1041
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1042
+ # will be added to the HTTP request.
1043
+ #
1044
+ #
1045
+ def begin_reimage(resource_group_name, vm_scale_set_name, instance_id, vm_scale_set_vmreimage_input:nil, custom_headers:nil)
1046
+ response = begin_reimage_async(resource_group_name, vm_scale_set_name, instance_id, vm_scale_set_vmreimage_input:vm_scale_set_vmreimage_input, custom_headers:custom_headers).value!
1047
+ nil
1048
+ end
1049
+
1050
+ #
1051
+ # Reimages (upgrade the operating system) a specific virtual machine in a VM
1052
+ # scale set.
1053
+ #
1054
+ # @param resource_group_name [String] The name of the resource group.
1055
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1056
+ # @param instance_id [String] The instance ID of the virtual machine.
1057
+ # @param vm_scale_set_vmreimage_input
1058
+ # [VirtualMachineScaleSetVMReimageParameters] Parameters for the Reimaging
1059
+ # Virtual machine in ScaleSet.
1060
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1061
+ # will be added to the HTTP request.
1062
+ #
1063
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1064
+ #
1065
+ def begin_reimage_with_http_info(resource_group_name, vm_scale_set_name, instance_id, vm_scale_set_vmreimage_input:nil, custom_headers:nil)
1066
+ begin_reimage_async(resource_group_name, vm_scale_set_name, instance_id, vm_scale_set_vmreimage_input:vm_scale_set_vmreimage_input, custom_headers:custom_headers).value!
1067
+ end
1068
+
1069
+ #
1070
+ # Reimages (upgrade the operating system) a specific virtual machine in a VM
1071
+ # scale set.
1072
+ #
1073
+ # @param resource_group_name [String] The name of the resource group.
1074
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1075
+ # @param instance_id [String] The instance ID of the virtual machine.
1076
+ # @param vm_scale_set_vmreimage_input
1077
+ # [VirtualMachineScaleSetVMReimageParameters] Parameters for the Reimaging
1078
+ # Virtual machine in ScaleSet.
1079
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1080
+ # to the HTTP request.
1081
+ #
1082
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1083
+ #
1084
+ def begin_reimage_async(resource_group_name, vm_scale_set_name, instance_id, vm_scale_set_vmreimage_input:nil, custom_headers:nil)
1085
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
1086
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
1087
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
1088
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
1089
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
1090
+
1091
+
1092
+ request_headers = {}
1093
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
1094
+
1095
+ # Set Headers
1096
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1097
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1098
+
1099
+ # Serialize Request
1100
+ request_mapper = Azure::Compute::Mgmt::V2020_12_01::Models::VirtualMachineScaleSetVMReimageParameters.mapper()
1101
+ request_content = @client.serialize(request_mapper, vm_scale_set_vmreimage_input)
1102
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
1103
+
1104
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimage'
1105
+
1106
+ request_url = @base_url || @client.base_url
1107
+
1108
+ options = {
1109
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1110
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
1111
+ query_params: {'api-version' => @client.api_version},
1112
+ body: request_content,
1113
+ headers: request_headers.merge(custom_headers || {}),
1114
+ base_url: request_url
1115
+ }
1116
+ promise = @client.make_request_async(:post, path_template, options)
1117
+
1118
+ promise = promise.then do |result|
1119
+ http_response = result.response
1120
+ status_code = http_response.status
1121
+ response_content = http_response.body
1122
+ unless status_code == 200 || status_code == 202
1123
+ error_model = JSON.load(response_content)
1124
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
1125
+ end
1126
+
1127
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1128
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
1129
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
1130
+
1131
+ result
1132
+ end
1133
+
1134
+ promise.execute
1135
+ end
1136
+
1137
+ #
1138
+ # Allows you to re-image all the disks ( including data disks ) in the a VM
1139
+ # scale set instance. This operation is only supported for managed disks.
1140
+ #
1141
+ # @param resource_group_name [String] The name of the resource group.
1142
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1143
+ # @param instance_id [String] The instance ID of the virtual machine.
1144
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1145
+ # will be added to the HTTP request.
1146
+ #
1147
+ #
1148
+ def begin_reimage_all(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1149
+ response = begin_reimage_all_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
1150
+ nil
1151
+ end
1152
+
1153
+ #
1154
+ # Allows you to re-image all the disks ( including data disks ) in the a VM
1155
+ # scale set instance. This operation is only supported for managed disks.
1156
+ #
1157
+ # @param resource_group_name [String] The name of the resource group.
1158
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1159
+ # @param instance_id [String] The instance ID of the virtual machine.
1160
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1161
+ # will be added to the HTTP request.
1162
+ #
1163
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1164
+ #
1165
+ def begin_reimage_all_with_http_info(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1166
+ begin_reimage_all_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
1167
+ end
1168
+
1169
+ #
1170
+ # Allows you to re-image all the disks ( including data disks ) in the a VM
1171
+ # scale set instance. This operation is only supported for managed disks.
1172
+ #
1173
+ # @param resource_group_name [String] The name of the resource group.
1174
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1175
+ # @param instance_id [String] The instance ID of the virtual machine.
1176
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1177
+ # to the HTTP request.
1178
+ #
1179
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1180
+ #
1181
+ def begin_reimage_all_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1182
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
1183
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
1184
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
1185
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
1186
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
1187
+
1188
+
1189
+ request_headers = {}
1190
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
1191
+
1192
+ # Set Headers
1193
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1194
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1195
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimageall'
1196
+
1197
+ request_url = @base_url || @client.base_url
1198
+
1199
+ options = {
1200
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1201
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
1202
+ query_params: {'api-version' => @client.api_version},
1203
+ headers: request_headers.merge(custom_headers || {}),
1204
+ base_url: request_url
1205
+ }
1206
+ promise = @client.make_request_async(:post, path_template, options)
1207
+
1208
+ promise = promise.then do |result|
1209
+ http_response = result.response
1210
+ status_code = http_response.status
1211
+ response_content = http_response.body
1212
+ unless status_code == 200 || status_code == 202
1213
+ error_model = JSON.load(response_content)
1214
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
1215
+ end
1216
+
1217
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1218
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
1219
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
1220
+
1221
+ result
1222
+ end
1223
+
1224
+ promise.execute
1225
+ end
1226
+
1227
+ #
1228
+ # Deallocates a specific virtual machine in a VM scale set. Shuts down the
1229
+ # virtual machine and releases the compute resources it uses. You are not
1230
+ # billed for the compute resources of this virtual machine once it is
1231
+ # deallocated.
1232
+ #
1233
+ # @param resource_group_name [String] The name of the resource group.
1234
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1235
+ # @param instance_id [String] The instance ID of the virtual machine.
1236
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1237
+ # will be added to the HTTP request.
1238
+ #
1239
+ #
1240
+ def begin_deallocate(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1241
+ response = begin_deallocate_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
1242
+ nil
1243
+ end
1244
+
1245
+ #
1246
+ # Deallocates a specific virtual machine in a VM scale set. Shuts down the
1247
+ # virtual machine and releases the compute resources it uses. You are not
1248
+ # billed for the compute resources of this virtual machine once it is
1249
+ # deallocated.
1250
+ #
1251
+ # @param resource_group_name [String] The name of the resource group.
1252
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1253
+ # @param instance_id [String] The instance ID of the virtual machine.
1254
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1255
+ # will be added to the HTTP request.
1256
+ #
1257
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1258
+ #
1259
+ def begin_deallocate_with_http_info(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1260
+ begin_deallocate_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
1261
+ end
1262
+
1263
+ #
1264
+ # Deallocates a specific virtual machine in a VM scale set. Shuts down the
1265
+ # virtual machine and releases the compute resources it uses. You are not
1266
+ # billed for the compute resources of this virtual machine once it is
1267
+ # deallocated.
1268
+ #
1269
+ # @param resource_group_name [String] The name of the resource group.
1270
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1271
+ # @param instance_id [String] The instance ID of the virtual machine.
1272
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1273
+ # to the HTTP request.
1274
+ #
1275
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1276
+ #
1277
+ def begin_deallocate_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1278
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
1279
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
1280
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
1281
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
1282
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
1283
+
1284
+
1285
+ request_headers = {}
1286
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
1287
+
1288
+ # Set Headers
1289
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1290
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1291
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/deallocate'
1292
+
1293
+ request_url = @base_url || @client.base_url
1294
+
1295
+ options = {
1296
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1297
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
1298
+ query_params: {'api-version' => @client.api_version},
1299
+ headers: request_headers.merge(custom_headers || {}),
1300
+ base_url: request_url
1301
+ }
1302
+ promise = @client.make_request_async(:post, path_template, options)
1303
+
1304
+ promise = promise.then do |result|
1305
+ http_response = result.response
1306
+ status_code = http_response.status
1307
+ response_content = http_response.body
1308
+ unless status_code == 200 || status_code == 202
1309
+ error_model = JSON.load(response_content)
1310
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
1311
+ end
1312
+
1313
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1314
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
1315
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
1316
+
1317
+ result
1318
+ end
1319
+
1320
+ promise.execute
1321
+ end
1322
+
1323
+ #
1324
+ # Updates a virtual machine of a VM scale set.
1325
+ #
1326
+ # @param resource_group_name [String] The name of the resource group.
1327
+ # @param vm_scale_set_name [String] The name of the VM scale set where the
1328
+ # extension should be create or updated.
1329
+ # @param instance_id [String] The instance ID of the virtual machine.
1330
+ # @param parameters [VirtualMachineScaleSetVM] Parameters supplied to the
1331
+ # Update Virtual Machine Scale Sets VM operation.
1332
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1333
+ # will be added to the HTTP request.
1334
+ #
1335
+ # @return [VirtualMachineScaleSetVM] operation results.
1336
+ #
1337
+ def begin_update(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:nil)
1338
+ response = begin_update_async(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:custom_headers).value!
1339
+ response.body unless response.nil?
1340
+ end
1341
+
1342
+ #
1343
+ # Updates a virtual machine of a VM scale set.
1344
+ #
1345
+ # @param resource_group_name [String] The name of the resource group.
1346
+ # @param vm_scale_set_name [String] The name of the VM scale set where the
1347
+ # extension should be create or updated.
1348
+ # @param instance_id [String] The instance ID of the virtual machine.
1349
+ # @param parameters [VirtualMachineScaleSetVM] Parameters supplied to the
1350
+ # Update Virtual Machine Scale Sets VM operation.
1351
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1352
+ # will be added to the HTTP request.
1353
+ #
1354
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1355
+ #
1356
+ def begin_update_with_http_info(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:nil)
1357
+ begin_update_async(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:custom_headers).value!
1358
+ end
1359
+
1360
+ #
1361
+ # Updates a virtual machine of a VM scale set.
1362
+ #
1363
+ # @param resource_group_name [String] The name of the resource group.
1364
+ # @param vm_scale_set_name [String] The name of the VM scale set where the
1365
+ # extension should be create or updated.
1366
+ # @param instance_id [String] The instance ID of the virtual machine.
1367
+ # @param parameters [VirtualMachineScaleSetVM] Parameters supplied to the
1368
+ # Update Virtual Machine Scale Sets VM operation.
1369
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1370
+ # to the HTTP request.
1371
+ #
1372
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1373
+ #
1374
+ def begin_update_async(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:nil)
1375
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
1376
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
1377
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
1378
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
1379
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
1380
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
1381
+
1382
+
1383
+ request_headers = {}
1384
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
1385
+
1386
+ # Set Headers
1387
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1388
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1389
+
1390
+ # Serialize Request
1391
+ request_mapper = Azure::Compute::Mgmt::V2020_12_01::Models::VirtualMachineScaleSetVM.mapper()
1392
+ request_content = @client.serialize(request_mapper, parameters)
1393
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
1394
+
1395
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}'
1396
+
1397
+ request_url = @base_url || @client.base_url
1398
+
1399
+ options = {
1400
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1401
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
1402
+ query_params: {'api-version' => @client.api_version},
1403
+ body: request_content,
1404
+ headers: request_headers.merge(custom_headers || {}),
1405
+ base_url: request_url
1406
+ }
1407
+ promise = @client.make_request_async(:put, path_template, options)
1408
+
1409
+ promise = promise.then do |result|
1410
+ http_response = result.response
1411
+ status_code = http_response.status
1412
+ response_content = http_response.body
1413
+ unless status_code == 200 || status_code == 202
1414
+ error_model = JSON.load(response_content)
1415
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
1416
+ end
1417
+
1418
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1419
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
1420
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
1421
+ # Deserialize Response
1422
+ if status_code == 200
1423
+ begin
1424
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
1425
+ result_mapper = Azure::Compute::Mgmt::V2020_12_01::Models::VirtualMachineScaleSetVM.mapper()
1426
+ result.body = @client.deserialize(result_mapper, parsed_response)
1427
+ rescue Exception => e
1428
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
1429
+ end
1430
+ end
1431
+ # Deserialize Response
1432
+ if status_code == 202
1433
+ begin
1434
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
1435
+ result_mapper = Azure::Compute::Mgmt::V2020_12_01::Models::VirtualMachineScaleSetVM.mapper()
1436
+ result.body = @client.deserialize(result_mapper, parsed_response)
1437
+ rescue Exception => e
1438
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
1439
+ end
1440
+ end
1441
+
1442
+ result
1443
+ end
1444
+
1445
+ promise.execute
1446
+ end
1447
+
1448
+ #
1449
+ # Deletes a virtual machine from a VM scale set.
1450
+ #
1451
+ # @param resource_group_name [String] The name of the resource group.
1452
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1453
+ # @param instance_id [String] The instance ID of the virtual machine.
1454
+ # @param force_deletion [Boolean] Optional parameter to force delete a virtual
1455
+ # machine from a VM scale set. (Feature in Preview)
1456
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1457
+ # will be added to the HTTP request.
1458
+ #
1459
+ #
1460
+ def begin_delete(resource_group_name, vm_scale_set_name, instance_id, force_deletion:nil, custom_headers:nil)
1461
+ response = begin_delete_async(resource_group_name, vm_scale_set_name, instance_id, force_deletion:force_deletion, custom_headers:custom_headers).value!
1462
+ nil
1463
+ end
1464
+
1465
+ #
1466
+ # Deletes a virtual machine from a VM scale set.
1467
+ #
1468
+ # @param resource_group_name [String] The name of the resource group.
1469
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1470
+ # @param instance_id [String] The instance ID of the virtual machine.
1471
+ # @param force_deletion [Boolean] Optional parameter to force delete a virtual
1472
+ # machine from a VM scale set. (Feature in Preview)
1473
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1474
+ # will be added to the HTTP request.
1475
+ #
1476
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1477
+ #
1478
+ def begin_delete_with_http_info(resource_group_name, vm_scale_set_name, instance_id, force_deletion:nil, custom_headers:nil)
1479
+ begin_delete_async(resource_group_name, vm_scale_set_name, instance_id, force_deletion:force_deletion, custom_headers:custom_headers).value!
1480
+ end
1481
+
1482
+ #
1483
+ # Deletes a virtual machine from a VM scale set.
1484
+ #
1485
+ # @param resource_group_name [String] The name of the resource group.
1486
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1487
+ # @param instance_id [String] The instance ID of the virtual machine.
1488
+ # @param force_deletion [Boolean] Optional parameter to force delete a virtual
1489
+ # machine from a VM scale set. (Feature in Preview)
1490
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1491
+ # to the HTTP request.
1492
+ #
1493
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1494
+ #
1495
+ def begin_delete_async(resource_group_name, vm_scale_set_name, instance_id, force_deletion:nil, custom_headers:nil)
1496
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
1497
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
1498
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
1499
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
1500
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
1501
+
1502
+
1503
+ request_headers = {}
1504
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
1505
+
1506
+ # Set Headers
1507
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1508
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1509
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}'
1510
+
1511
+ request_url = @base_url || @client.base_url
1512
+
1513
+ options = {
1514
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1515
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
1516
+ query_params: {'forceDeletion' => force_deletion,'api-version' => @client.api_version},
1517
+ headers: request_headers.merge(custom_headers || {}),
1518
+ base_url: request_url
1519
+ }
1520
+ promise = @client.make_request_async(:delete, path_template, options)
1521
+
1522
+ promise = promise.then do |result|
1523
+ http_response = result.response
1524
+ status_code = http_response.status
1525
+ response_content = http_response.body
1526
+ unless status_code == 200 || status_code == 202 || status_code == 204
1527
+ error_model = JSON.load(response_content)
1528
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
1529
+ end
1530
+
1531
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1532
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
1533
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
1534
+
1535
+ result
1536
+ end
1537
+
1538
+ promise.execute
1539
+ end
1540
+
1541
+ #
1542
+ # Power off (stop) a virtual machine in a VM scale set. Note that resources are
1543
+ # still attached and you are getting charged for the resources. Instead, use
1544
+ # deallocate to release resources and avoid charges.
1545
+ #
1546
+ # @param resource_group_name [String] The name of the resource group.
1547
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1548
+ # @param instance_id [String] The instance ID of the virtual machine.
1549
+ # @param skip_shutdown [Boolean] The parameter to request non-graceful VM
1550
+ # shutdown. True value for this flag indicates non-graceful shutdown whereas
1551
+ # false indicates otherwise. Default value for this flag is false if not
1552
+ # specified
1553
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1554
+ # will be added to the HTTP request.
1555
+ #
1556
+ #
1557
+ def begin_power_off(resource_group_name, vm_scale_set_name, instance_id, skip_shutdown:false, custom_headers:nil)
1558
+ response = begin_power_off_async(resource_group_name, vm_scale_set_name, instance_id, skip_shutdown:skip_shutdown, custom_headers:custom_headers).value!
1559
+ nil
1560
+ end
1561
+
1562
+ #
1563
+ # Power off (stop) a virtual machine in a VM scale set. Note that resources are
1564
+ # still attached and you are getting charged for the resources. Instead, use
1565
+ # deallocate to release resources and avoid charges.
1566
+ #
1567
+ # @param resource_group_name [String] The name of the resource group.
1568
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1569
+ # @param instance_id [String] The instance ID of the virtual machine.
1570
+ # @param skip_shutdown [Boolean] The parameter to request non-graceful VM
1571
+ # shutdown. True value for this flag indicates non-graceful shutdown whereas
1572
+ # false indicates otherwise. Default value for this flag is false if not
1573
+ # specified
1574
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1575
+ # will be added to the HTTP request.
1576
+ #
1577
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1578
+ #
1579
+ def begin_power_off_with_http_info(resource_group_name, vm_scale_set_name, instance_id, skip_shutdown:false, custom_headers:nil)
1580
+ begin_power_off_async(resource_group_name, vm_scale_set_name, instance_id, skip_shutdown:skip_shutdown, custom_headers:custom_headers).value!
1581
+ end
1582
+
1583
+ #
1584
+ # Power off (stop) a virtual machine in a VM scale set. Note that resources are
1585
+ # still attached and you are getting charged for the resources. Instead, use
1586
+ # deallocate to release resources and avoid charges.
1587
+ #
1588
+ # @param resource_group_name [String] The name of the resource group.
1589
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1590
+ # @param instance_id [String] The instance ID of the virtual machine.
1591
+ # @param skip_shutdown [Boolean] The parameter to request non-graceful VM
1592
+ # shutdown. True value for this flag indicates non-graceful shutdown whereas
1593
+ # false indicates otherwise. Default value for this flag is false if not
1594
+ # specified
1595
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1596
+ # to the HTTP request.
1597
+ #
1598
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1599
+ #
1600
+ def begin_power_off_async(resource_group_name, vm_scale_set_name, instance_id, skip_shutdown:false, custom_headers:nil)
1601
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
1602
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
1603
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
1604
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
1605
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
1606
+
1607
+
1608
+ request_headers = {}
1609
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
1610
+
1611
+ # Set Headers
1612
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1613
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1614
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/poweroff'
1615
+
1616
+ request_url = @base_url || @client.base_url
1617
+
1618
+ options = {
1619
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1620
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
1621
+ query_params: {'skipShutdown' => skip_shutdown,'api-version' => @client.api_version},
1622
+ headers: request_headers.merge(custom_headers || {}),
1623
+ base_url: request_url
1624
+ }
1625
+ promise = @client.make_request_async(:post, path_template, options)
1626
+
1627
+ promise = promise.then do |result|
1628
+ http_response = result.response
1629
+ status_code = http_response.status
1630
+ response_content = http_response.body
1631
+ unless status_code == 200 || status_code == 202
1632
+ error_model = JSON.load(response_content)
1633
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
1634
+ end
1635
+
1636
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1637
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
1638
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
1639
+
1640
+ result
1641
+ end
1642
+
1643
+ promise.execute
1644
+ end
1645
+
1646
+ #
1647
+ # Restarts a virtual machine in a VM scale set.
1648
+ #
1649
+ # @param resource_group_name [String] The name of the resource group.
1650
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1651
+ # @param instance_id [String] The instance ID of the virtual machine.
1652
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1653
+ # will be added to the HTTP request.
1654
+ #
1655
+ #
1656
+ def begin_restart(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1657
+ response = begin_restart_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
1658
+ nil
1659
+ end
1660
+
1661
+ #
1662
+ # Restarts a virtual machine in a VM scale set.
1663
+ #
1664
+ # @param resource_group_name [String] The name of the resource group.
1665
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1666
+ # @param instance_id [String] The instance ID of the virtual machine.
1667
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1668
+ # will be added to the HTTP request.
1669
+ #
1670
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1671
+ #
1672
+ def begin_restart_with_http_info(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1673
+ begin_restart_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
1674
+ end
1675
+
1676
+ #
1677
+ # Restarts a virtual machine in a VM scale set.
1678
+ #
1679
+ # @param resource_group_name [String] The name of the resource group.
1680
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1681
+ # @param instance_id [String] The instance ID of the virtual machine.
1682
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1683
+ # to the HTTP request.
1684
+ #
1685
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1686
+ #
1687
+ def begin_restart_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1688
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
1689
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
1690
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
1691
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
1692
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
1693
+
1694
+
1695
+ request_headers = {}
1696
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
1697
+
1698
+ # Set Headers
1699
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1700
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1701
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/restart'
1702
+
1703
+ request_url = @base_url || @client.base_url
1704
+
1705
+ options = {
1706
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1707
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
1708
+ query_params: {'api-version' => @client.api_version},
1709
+ headers: request_headers.merge(custom_headers || {}),
1710
+ base_url: request_url
1711
+ }
1712
+ promise = @client.make_request_async(:post, path_template, options)
1713
+
1714
+ promise = promise.then do |result|
1715
+ http_response = result.response
1716
+ status_code = http_response.status
1717
+ response_content = http_response.body
1718
+ unless status_code == 200 || status_code == 202
1719
+ error_model = JSON.load(response_content)
1720
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
1721
+ end
1722
+
1723
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1724
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
1725
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
1726
+
1727
+ result
1728
+ end
1729
+
1730
+ promise.execute
1731
+ end
1732
+
1733
+ #
1734
+ # Starts a virtual machine in a VM scale set.
1735
+ #
1736
+ # @param resource_group_name [String] The name of the resource group.
1737
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1738
+ # @param instance_id [String] The instance ID of the virtual machine.
1739
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1740
+ # will be added to the HTTP request.
1741
+ #
1742
+ #
1743
+ def begin_start(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1744
+ response = begin_start_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
1745
+ nil
1746
+ end
1747
+
1748
+ #
1749
+ # Starts a virtual machine in a VM scale set.
1750
+ #
1751
+ # @param resource_group_name [String] The name of the resource group.
1752
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1753
+ # @param instance_id [String] The instance ID of the virtual machine.
1754
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1755
+ # will be added to the HTTP request.
1756
+ #
1757
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1758
+ #
1759
+ def begin_start_with_http_info(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1760
+ begin_start_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
1761
+ end
1762
+
1763
+ #
1764
+ # Starts a virtual machine in a VM scale set.
1765
+ #
1766
+ # @param resource_group_name [String] The name of the resource group.
1767
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1768
+ # @param instance_id [String] The instance ID of the virtual machine.
1769
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1770
+ # to the HTTP request.
1771
+ #
1772
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1773
+ #
1774
+ def begin_start_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1775
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
1776
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
1777
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
1778
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
1779
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
1780
+
1781
+
1782
+ request_headers = {}
1783
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
1784
+
1785
+ # Set Headers
1786
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1787
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1788
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/start'
1789
+
1790
+ request_url = @base_url || @client.base_url
1791
+
1792
+ options = {
1793
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1794
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
1795
+ query_params: {'api-version' => @client.api_version},
1796
+ headers: request_headers.merge(custom_headers || {}),
1797
+ base_url: request_url
1798
+ }
1799
+ promise = @client.make_request_async(:post, path_template, options)
1800
+
1801
+ promise = promise.then do |result|
1802
+ http_response = result.response
1803
+ status_code = http_response.status
1804
+ response_content = http_response.body
1805
+ unless status_code == 200 || status_code == 202
1806
+ error_model = JSON.load(response_content)
1807
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
1808
+ end
1809
+
1810
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1811
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
1812
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
1813
+
1814
+ result
1815
+ end
1816
+
1817
+ promise.execute
1818
+ end
1819
+
1820
+ #
1821
+ # Shuts down the virtual machine in the virtual machine scale set, moves it to
1822
+ # a new node, and powers it back on.
1823
+ #
1824
+ # @param resource_group_name [String] The name of the resource group.
1825
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1826
+ # @param instance_id [String] The instance ID of the virtual machine.
1827
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1828
+ # will be added to the HTTP request.
1829
+ #
1830
+ #
1831
+ def begin_redeploy(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1832
+ response = begin_redeploy_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
1833
+ nil
1834
+ end
1835
+
1836
+ #
1837
+ # Shuts down the virtual machine in the virtual machine scale set, moves it to
1838
+ # a new node, and powers it back on.
1839
+ #
1840
+ # @param resource_group_name [String] The name of the resource group.
1841
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1842
+ # @param instance_id [String] The instance ID of the virtual machine.
1843
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1844
+ # will be added to the HTTP request.
1845
+ #
1846
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1847
+ #
1848
+ def begin_redeploy_with_http_info(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1849
+ begin_redeploy_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
1850
+ end
1851
+
1852
+ #
1853
+ # Shuts down the virtual machine in the virtual machine scale set, moves it to
1854
+ # a new node, and powers it back on.
1855
+ #
1856
+ # @param resource_group_name [String] The name of the resource group.
1857
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1858
+ # @param instance_id [String] The instance ID of the virtual machine.
1859
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1860
+ # to the HTTP request.
1861
+ #
1862
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1863
+ #
1864
+ def begin_redeploy_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1865
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
1866
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
1867
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
1868
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
1869
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
1870
+
1871
+
1872
+ request_headers = {}
1873
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
1874
+
1875
+ # Set Headers
1876
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1877
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1878
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/redeploy'
1879
+
1880
+ request_url = @base_url || @client.base_url
1881
+
1882
+ options = {
1883
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1884
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
1885
+ query_params: {'api-version' => @client.api_version},
1886
+ headers: request_headers.merge(custom_headers || {}),
1887
+ base_url: request_url
1888
+ }
1889
+ promise = @client.make_request_async(:post, path_template, options)
1890
+
1891
+ promise = promise.then do |result|
1892
+ http_response = result.response
1893
+ status_code = http_response.status
1894
+ response_content = http_response.body
1895
+ unless status_code == 200 || status_code == 202
1896
+ error_model = JSON.load(response_content)
1897
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
1898
+ end
1899
+
1900
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1901
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
1902
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
1903
+
1904
+ result
1905
+ end
1906
+
1907
+ promise.execute
1908
+ end
1909
+
1910
+ #
1911
+ # Performs maintenance on a virtual machine in a VM scale set.
1912
+ #
1913
+ # @param resource_group_name [String] The name of the resource group.
1914
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1915
+ # @param instance_id [String] The instance ID of the virtual machine.
1916
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1917
+ # will be added to the HTTP request.
1918
+ #
1919
+ #
1920
+ def begin_perform_maintenance(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1921
+ response = begin_perform_maintenance_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
1922
+ nil
1923
+ end
1924
+
1925
+ #
1926
+ # Performs maintenance on a virtual machine in a VM scale set.
1927
+ #
1928
+ # @param resource_group_name [String] The name of the resource group.
1929
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1930
+ # @param instance_id [String] The instance ID of the virtual machine.
1931
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1932
+ # will be added to the HTTP request.
1933
+ #
1934
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1935
+ #
1936
+ def begin_perform_maintenance_with_http_info(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1937
+ begin_perform_maintenance_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:custom_headers).value!
1938
+ end
1939
+
1940
+ #
1941
+ # Performs maintenance on a virtual machine in a VM scale set.
1942
+ #
1943
+ # @param resource_group_name [String] The name of the resource group.
1944
+ # @param vm_scale_set_name [String] The name of the VM scale set.
1945
+ # @param instance_id [String] The instance ID of the virtual machine.
1946
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1947
+ # to the HTTP request.
1948
+ #
1949
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1950
+ #
1951
+ def begin_perform_maintenance_async(resource_group_name, vm_scale_set_name, instance_id, custom_headers:nil)
1952
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
1953
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
1954
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
1955
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
1956
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
1957
+
1958
+
1959
+ request_headers = {}
1960
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
1961
+
1962
+ # Set Headers
1963
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1964
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1965
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/performMaintenance'
1966
+
1967
+ request_url = @base_url || @client.base_url
1968
+
1969
+ options = {
1970
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1971
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
1972
+ query_params: {'api-version' => @client.api_version},
1973
+ headers: request_headers.merge(custom_headers || {}),
1974
+ base_url: request_url
1975
+ }
1976
+ promise = @client.make_request_async(:post, path_template, options)
1977
+
1978
+ promise = promise.then do |result|
1979
+ http_response = result.response
1980
+ status_code = http_response.status
1981
+ response_content = http_response.body
1982
+ unless status_code == 200 || status_code == 202
1983
+ error_model = JSON.load(response_content)
1984
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
1985
+ end
1986
+
1987
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1988
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
1989
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
1990
+
1991
+ result
1992
+ end
1993
+
1994
+ promise.execute
1995
+ end
1996
+
1997
+ #
1998
+ # Run command on a virtual machine in a VM scale set.
1999
+ #
2000
+ # @param resource_group_name [String] The name of the resource group.
2001
+ # @param vm_scale_set_name [String] The name of the VM scale set.
2002
+ # @param instance_id [String] The instance ID of the virtual machine.
2003
+ # @param parameters [RunCommandInput] Parameters supplied to the Run command
2004
+ # operation.
2005
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
2006
+ # will be added to the HTTP request.
2007
+ #
2008
+ # @return [RunCommandResult] operation results.
2009
+ #
2010
+ def begin_run_command(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:nil)
2011
+ response = begin_run_command_async(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:custom_headers).value!
2012
+ response.body unless response.nil?
2013
+ end
2014
+
2015
+ #
2016
+ # Run command on a virtual machine in a VM scale set.
2017
+ #
2018
+ # @param resource_group_name [String] The name of the resource group.
2019
+ # @param vm_scale_set_name [String] The name of the VM scale set.
2020
+ # @param instance_id [String] The instance ID of the virtual machine.
2021
+ # @param parameters [RunCommandInput] Parameters supplied to the Run command
2022
+ # operation.
2023
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
2024
+ # will be added to the HTTP request.
2025
+ #
2026
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
2027
+ #
2028
+ def begin_run_command_with_http_info(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:nil)
2029
+ begin_run_command_async(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:custom_headers).value!
2030
+ end
2031
+
2032
+ #
2033
+ # Run command on a virtual machine in a VM scale set.
2034
+ #
2035
+ # @param resource_group_name [String] The name of the resource group.
2036
+ # @param vm_scale_set_name [String] The name of the VM scale set.
2037
+ # @param instance_id [String] The instance ID of the virtual machine.
2038
+ # @param parameters [RunCommandInput] Parameters supplied to the Run command
2039
+ # operation.
2040
+ # @param [Hash{String => String}] A hash of custom headers that will be added
2041
+ # to the HTTP request.
2042
+ #
2043
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
2044
+ #
2045
+ def begin_run_command_async(resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers:nil)
2046
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
2047
+ fail ArgumentError, 'vm_scale_set_name is nil' if vm_scale_set_name.nil?
2048
+ fail ArgumentError, 'instance_id is nil' if instance_id.nil?
2049
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
2050
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
2051
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
2052
+
2053
+
2054
+ request_headers = {}
2055
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
2056
+
2057
+ # Set Headers
2058
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
2059
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
2060
+
2061
+ # Serialize Request
2062
+ request_mapper = Azure::Compute::Mgmt::V2020_12_01::Models::RunCommandInput.mapper()
2063
+ request_content = @client.serialize(request_mapper, parameters)
2064
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
2065
+
2066
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/runCommand'
2067
+
2068
+ request_url = @base_url || @client.base_url
2069
+
2070
+ options = {
2071
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
2072
+ path_params: {'resourceGroupName' => resource_group_name,'vmScaleSetName' => vm_scale_set_name,'instanceId' => instance_id,'subscriptionId' => @client.subscription_id},
2073
+ query_params: {'api-version' => @client.api_version},
2074
+ body: request_content,
2075
+ headers: request_headers.merge(custom_headers || {}),
2076
+ base_url: request_url
2077
+ }
2078
+ promise = @client.make_request_async(:post, path_template, options)
2079
+
2080
+ promise = promise.then do |result|
2081
+ http_response = result.response
2082
+ status_code = http_response.status
2083
+ response_content = http_response.body
2084
+ unless status_code == 200 || status_code == 202
2085
+ error_model = JSON.load(response_content)
2086
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
2087
+ end
2088
+
2089
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
2090
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
2091
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
2092
+ # Deserialize Response
2093
+ if status_code == 200
2094
+ begin
2095
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
2096
+ result_mapper = Azure::Compute::Mgmt::V2020_12_01::Models::RunCommandResult.mapper()
2097
+ result.body = @client.deserialize(result_mapper, parsed_response)
2098
+ rescue Exception => e
2099
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
2100
+ end
2101
+ end
2102
+
2103
+ result
2104
+ end
2105
+
2106
+ promise.execute
2107
+ end
2108
+
2109
+ #
2110
+ # Gets a list of all virtual machines in a VM scale sets.
2111
+ #
2112
+ # @param next_page_link [String] The NextLink from the previous successful call
2113
+ # to List operation.
2114
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
2115
+ # will be added to the HTTP request.
2116
+ #
2117
+ # @return [VirtualMachineScaleSetVMListResult] operation results.
2118
+ #
2119
+ def list_next(next_page_link, custom_headers:nil)
2120
+ response = list_next_async(next_page_link, custom_headers:custom_headers).value!
2121
+ response.body unless response.nil?
2122
+ end
2123
+
2124
+ #
2125
+ # Gets a list of all virtual machines in a VM scale sets.
2126
+ #
2127
+ # @param next_page_link [String] The NextLink from the previous successful call
2128
+ # to List operation.
2129
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
2130
+ # will be added to the HTTP request.
2131
+ #
2132
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
2133
+ #
2134
+ def list_next_with_http_info(next_page_link, custom_headers:nil)
2135
+ list_next_async(next_page_link, custom_headers:custom_headers).value!
2136
+ end
2137
+
2138
+ #
2139
+ # Gets a list of all virtual machines in a VM scale sets.
2140
+ #
2141
+ # @param next_page_link [String] The NextLink from the previous successful call
2142
+ # to List operation.
2143
+ # @param [Hash{String => String}] A hash of custom headers that will be added
2144
+ # to the HTTP request.
2145
+ #
2146
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
2147
+ #
2148
+ def list_next_async(next_page_link, custom_headers:nil)
2149
+ fail ArgumentError, 'next_page_link is nil' if next_page_link.nil?
2150
+
2151
+
2152
+ request_headers = {}
2153
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
2154
+
2155
+ # Set Headers
2156
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
2157
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
2158
+ path_template = '{nextLink}'
2159
+
2160
+ request_url = @base_url || @client.base_url
2161
+
2162
+ options = {
2163
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
2164
+ skip_encoding_path_params: {'nextLink' => next_page_link},
2165
+ headers: request_headers.merge(custom_headers || {}),
2166
+ base_url: request_url
2167
+ }
2168
+ promise = @client.make_request_async(:get, path_template, options)
2169
+
2170
+ promise = promise.then do |result|
2171
+ http_response = result.response
2172
+ status_code = http_response.status
2173
+ response_content = http_response.body
2174
+ unless status_code == 200
2175
+ error_model = JSON.load(response_content)
2176
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
2177
+ end
2178
+
2179
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
2180
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
2181
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
2182
+ # Deserialize Response
2183
+ if status_code == 200
2184
+ begin
2185
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
2186
+ result_mapper = Azure::Compute::Mgmt::V2020_12_01::Models::VirtualMachineScaleSetVMListResult.mapper()
2187
+ result.body = @client.deserialize(result_mapper, parsed_response)
2188
+ rescue Exception => e
2189
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
2190
+ end
2191
+ end
2192
+
2193
+ result
2194
+ end
2195
+
2196
+ promise.execute
2197
+ end
2198
+
2199
+ #
2200
+ # Gets a list of all virtual machines in a VM scale sets.
2201
+ #
2202
+ # @param resource_group_name [String] The name of the resource group.
2203
+ # @param virtual_machine_scale_set_name [String] The name of the VM scale set.
2204
+ # @param filter [String] The filter to apply to the operation. Allowed values
2205
+ # are 'startswith(instanceView/statuses/code, 'PowerState') eq true',
2206
+ # 'properties/latestModelApplied eq true', 'properties/latestModelApplied eq
2207
+ # false'.
2208
+ # @param select [String] The list parameters. Allowed values are
2209
+ # 'instanceView', 'instanceView/statuses'.
2210
+ # @param expand [String] The expand expression to apply to the operation.
2211
+ # Allowed values are 'instanceView'.
2212
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
2213
+ # will be added to the HTTP request.
2214
+ #
2215
+ # @return [VirtualMachineScaleSetVMListResult] which provide lazy access to
2216
+ # pages of the response.
2217
+ #
2218
+ def list_as_lazy(resource_group_name, virtual_machine_scale_set_name, filter:nil, select:nil, expand:nil, custom_headers:nil)
2219
+ response = list_async(resource_group_name, virtual_machine_scale_set_name, filter:filter, select:select, expand:expand, custom_headers:custom_headers).value!
2220
+ unless response.nil?
2221
+ page = response.body
2222
+ page.next_method = Proc.new do |next_page_link|
2223
+ list_next_async(next_page_link, custom_headers:custom_headers)
2224
+ end
2225
+ page
2226
+ end
2227
+ end
2228
+
2229
+ end
2230
+ end