pulumi-azure-native 2.11.1a1697208201__py3-none-any.whl → 2.12.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pulumi-azure-native might be problematic. Click here for more details.

Files changed (342) hide show
  1. pulumi_azure_native/__init__.py +112 -0
  2. pulumi_azure_native/azurestackhci/__init__.py +5 -0
  3. pulumi_azure_native/azurestackhci/_inputs.py +284 -0
  4. pulumi_azure_native/azurestackhci/gallery_image.py +1 -1
  5. pulumi_azure_native/azurestackhci/get_logical_network.py +224 -0
  6. pulumi_azure_native/azurestackhci/logical_network.py +362 -0
  7. pulumi_azure_native/azurestackhci/marketplace_gallery_image.py +1 -1
  8. pulumi_azure_native/azurestackhci/network_interface.py +1 -1
  9. pulumi_azure_native/azurestackhci/outputs.py +446 -0
  10. pulumi_azure_native/azurestackhci/storage_container.py +1 -1
  11. pulumi_azure_native/azurestackhci/v20210901preview/galleryimage_retrieve.py +1 -1
  12. pulumi_azure_native/azurestackhci/v20210901preview/marketplacegalleryimage.py +1 -1
  13. pulumi_azure_native/azurestackhci/v20210901preview/networkinterface_retrieve.py +1 -1
  14. pulumi_azure_native/azurestackhci/v20210901preview/storagecontainer_retrieve.py +1 -1
  15. pulumi_azure_native/azurestackhci/v20210901preview/virtualharddisk_retrieve.py +1 -1
  16. pulumi_azure_native/azurestackhci/v20221215preview/gallery_image.py +1 -1
  17. pulumi_azure_native/azurestackhci/v20221215preview/marketplace_gallery_image.py +1 -1
  18. pulumi_azure_native/azurestackhci/v20221215preview/network_interface.py +1 -1
  19. pulumi_azure_native/azurestackhci/v20221215preview/storage_container.py +1 -1
  20. pulumi_azure_native/azurestackhci/v20221215preview/virtual_hard_disk.py +1 -1
  21. pulumi_azure_native/azurestackhci/v20230701preview/gallery_image.py +1 -1
  22. pulumi_azure_native/azurestackhci/v20230701preview/guest_agent.py +2 -0
  23. pulumi_azure_native/azurestackhci/v20230701preview/marketplace_gallery_image.py +1 -1
  24. pulumi_azure_native/azurestackhci/v20230701preview/network_interface.py +1 -1
  25. pulumi_azure_native/azurestackhci/v20230701preview/storage_container.py +1 -1
  26. pulumi_azure_native/azurestackhci/v20230701preview/virtual_hard_disk.py +1 -1
  27. pulumi_azure_native/azurestackhci/v20230701preview/virtual_machine_instance.py +1 -1
  28. pulumi_azure_native/azurestackhci/v20230901preview/__init__.py +26 -0
  29. pulumi_azure_native/azurestackhci/v20230901preview/_enums.py +124 -0
  30. pulumi_azure_native/azurestackhci/v20230901preview/_inputs.py +1474 -0
  31. pulumi_azure_native/azurestackhci/v20230901preview/gallery_image.py +477 -0
  32. pulumi_azure_native/azurestackhci/v20230901preview/get_gallery_image.py +274 -0
  33. pulumi_azure_native/azurestackhci/v20230901preview/get_guest_agent.py +165 -0
  34. pulumi_azure_native/azurestackhci/v20230901preview/get_logical_network.py +222 -0
  35. pulumi_azure_native/azurestackhci/v20230901preview/get_marketplace_gallery_image.py +261 -0
  36. pulumi_azure_native/azurestackhci/v20230901preview/get_network_interface.py +222 -0
  37. pulumi_azure_native/azurestackhci/v20230901preview/get_storage_container.py +196 -0
  38. pulumi_azure_native/azurestackhci/v20230901preview/get_virtual_hard_disk.py +278 -0
  39. pulumi_azure_native/azurestackhci/v20230901preview/get_virtual_machine_instance.py +295 -0
  40. pulumi_azure_native/azurestackhci/v20230901preview/guest_agent.py +224 -0
  41. pulumi_azure_native/azurestackhci/v20230901preview/logical_network.py +360 -0
  42. pulumi_azure_native/azurestackhci/v20230901preview/marketplace_gallery_image.py +448 -0
  43. pulumi_azure_native/azurestackhci/v20230901preview/network_interface.py +360 -0
  44. pulumi_azure_native/azurestackhci/v20230901preview/outputs.py +3323 -0
  45. pulumi_azure_native/azurestackhci/v20230901preview/storage_container.py +303 -0
  46. pulumi_azure_native/azurestackhci/v20230901preview/virtual_hard_disk.py +481 -0
  47. pulumi_azure_native/azurestackhci/v20230901preview/virtual_machine_instance.py +457 -0
  48. pulumi_azure_native/azurestackhci/virtual_hard_disk.py +1 -1
  49. pulumi_azure_native/azurestackhci/virtual_machine_instance.py +1 -1
  50. pulumi_azure_native/cognitiveservices/__init__.py +11 -0
  51. pulumi_azure_native/cognitiveservices/_enums.py +38 -0
  52. pulumi_azure_native/cognitiveservices/_inputs.py +344 -0
  53. pulumi_azure_native/cognitiveservices/account.py +1 -1
  54. pulumi_azure_native/cognitiveservices/commitment_plan.py +1 -1
  55. pulumi_azure_native/cognitiveservices/commitment_plan_association.py +1 -1
  56. pulumi_azure_native/cognitiveservices/deployment.py +1 -1
  57. pulumi_azure_native/cognitiveservices/encryption_scope.py +257 -0
  58. pulumi_azure_native/cognitiveservices/get_encryption_scope.py +164 -0
  59. pulumi_azure_native/cognitiveservices/get_rai_blocklist.py +164 -0
  60. pulumi_azure_native/cognitiveservices/get_rai_blocklist_item.py +169 -0
  61. pulumi_azure_native/cognitiveservices/get_rai_policy.py +164 -0
  62. pulumi_azure_native/cognitiveservices/outputs.py +411 -0
  63. pulumi_azure_native/cognitiveservices/private_endpoint_connection.py +1 -1
  64. pulumi_azure_native/cognitiveservices/rai_blocklist.py +256 -0
  65. pulumi_azure_native/cognitiveservices/rai_blocklist_item.py +277 -0
  66. pulumi_azure_native/cognitiveservices/rai_policy.py +257 -0
  67. pulumi_azure_native/cognitiveservices/shared_commitment_plan.py +1 -1
  68. pulumi_azure_native/cognitiveservices/v20170418/account.py +1 -1
  69. pulumi_azure_native/cognitiveservices/v20230501/account.py +1 -1
  70. pulumi_azure_native/cognitiveservices/v20230501/commitment_plan.py +1 -1
  71. pulumi_azure_native/cognitiveservices/v20230501/commitment_plan_association.py +1 -1
  72. pulumi_azure_native/cognitiveservices/v20230501/deployment.py +1 -1
  73. pulumi_azure_native/cognitiveservices/v20230501/private_endpoint_connection.py +1 -1
  74. pulumi_azure_native/cognitiveservices/v20230501/shared_commitment_plan.py +1 -1
  75. pulumi_azure_native/cognitiveservices/v20231001preview/__init__.py +31 -0
  76. pulumi_azure_native/cognitiveservices/v20231001preview/_enums.py +155 -0
  77. pulumi_azure_native/cognitiveservices/v20231001preview/_inputs.py +1814 -0
  78. pulumi_azure_native/cognitiveservices/v20231001preview/account.py +350 -0
  79. pulumi_azure_native/cognitiveservices/v20231001preview/commitment_plan.py +342 -0
  80. pulumi_azure_native/cognitiveservices/v20231001preview/commitment_plan_association.py +253 -0
  81. pulumi_azure_native/cognitiveservices/v20231001preview/deployment.py +284 -0
  82. pulumi_azure_native/cognitiveservices/v20231001preview/encryption_scope.py +255 -0
  83. pulumi_azure_native/cognitiveservices/v20231001preview/get_account.py +209 -0
  84. pulumi_azure_native/cognitiveservices/v20231001preview/get_commitment_plan.py +201 -0
  85. pulumi_azure_native/cognitiveservices/v20231001preview/get_commitment_plan_association.py +162 -0
  86. pulumi_azure_native/cognitiveservices/v20231001preview/get_deployment.py +175 -0
  87. pulumi_azure_native/cognitiveservices/v20231001preview/get_encryption_scope.py +162 -0
  88. pulumi_azure_native/cognitiveservices/v20231001preview/get_private_endpoint_connection.py +162 -0
  89. pulumi_azure_native/cognitiveservices/v20231001preview/get_rai_blocklist.py +162 -0
  90. pulumi_azure_native/cognitiveservices/v20231001preview/get_rai_blocklist_item.py +167 -0
  91. pulumi_azure_native/cognitiveservices/v20231001preview/get_rai_policy.py +162 -0
  92. pulumi_azure_native/cognitiveservices/v20231001preview/get_shared_commitment_plan.py +196 -0
  93. pulumi_azure_native/cognitiveservices/v20231001preview/list_account_keys.py +91 -0
  94. pulumi_azure_native/cognitiveservices/v20231001preview/outputs.py +3141 -0
  95. pulumi_azure_native/cognitiveservices/v20231001preview/private_endpoint_connection.py +255 -0
  96. pulumi_azure_native/cognitiveservices/v20231001preview/rai_blocklist.py +254 -0
  97. pulumi_azure_native/cognitiveservices/v20231001preview/rai_blocklist_item.py +275 -0
  98. pulumi_azure_native/cognitiveservices/v20231001preview/rai_policy.py +255 -0
  99. pulumi_azure_native/cognitiveservices/v20231001preview/shared_commitment_plan.py +321 -0
  100. pulumi_azure_native/devcenter/__init__.py +3 -0
  101. pulumi_azure_native/devcenter/attached_network_by_dev_center.py +1 -1
  102. pulumi_azure_native/devcenter/catalog.py +1 -1
  103. pulumi_azure_native/devcenter/dev_box_definition.py +1 -1
  104. pulumi_azure_native/devcenter/dev_center.py +1 -1
  105. pulumi_azure_native/devcenter/environment_type.py +1 -1
  106. pulumi_azure_native/devcenter/gallery.py +1 -1
  107. pulumi_azure_native/devcenter/network_connection.py +1 -1
  108. pulumi_azure_native/devcenter/pool.py +1 -1
  109. pulumi_azure_native/devcenter/project.py +1 -1
  110. pulumi_azure_native/devcenter/project_environment_type.py +1 -1
  111. pulumi_azure_native/devcenter/schedule.py +1 -1
  112. pulumi_azure_native/devcenter/v20221111preview/dev_box_definition.py +1 -1
  113. pulumi_azure_native/devcenter/v20230401/attached_network_by_dev_center.py +1 -1
  114. pulumi_azure_native/devcenter/v20230401/catalog.py +1 -1
  115. pulumi_azure_native/devcenter/v20230401/dev_box_definition.py +1 -1
  116. pulumi_azure_native/devcenter/v20230401/dev_center.py +1 -1
  117. pulumi_azure_native/devcenter/v20230401/environment_type.py +1 -1
  118. pulumi_azure_native/devcenter/v20230401/gallery.py +1 -1
  119. pulumi_azure_native/devcenter/v20230401/network_connection.py +1 -1
  120. pulumi_azure_native/devcenter/v20230401/pool.py +1 -1
  121. pulumi_azure_native/devcenter/v20230401/project.py +1 -1
  122. pulumi_azure_native/devcenter/v20230401/project_environment_type.py +1 -1
  123. pulumi_azure_native/devcenter/v20230401/schedule.py +1 -1
  124. pulumi_azure_native/devcenter/v20230801preview/attached_network_by_dev_center.py +1 -1
  125. pulumi_azure_native/devcenter/v20230801preview/catalog.py +1 -1
  126. pulumi_azure_native/devcenter/v20230801preview/dev_box_definition.py +1 -1
  127. pulumi_azure_native/devcenter/v20230801preview/dev_center.py +1 -1
  128. pulumi_azure_native/devcenter/v20230801preview/environment_type.py +1 -1
  129. pulumi_azure_native/devcenter/v20230801preview/gallery.py +1 -1
  130. pulumi_azure_native/devcenter/v20230801preview/network_connection.py +1 -1
  131. pulumi_azure_native/devcenter/v20230801preview/pool.py +1 -1
  132. pulumi_azure_native/devcenter/v20230801preview/project.py +1 -1
  133. pulumi_azure_native/devcenter/v20230801preview/project_environment_type.py +1 -1
  134. pulumi_azure_native/devcenter/v20230801preview/schedule.py +1 -1
  135. pulumi_azure_native/devcenter/v20231001preview/__init__.py +36 -0
  136. pulumi_azure_native/devcenter/v20231001preview/_enums.py +145 -0
  137. pulumi_azure_native/devcenter/v20231001preview/_inputs.py +454 -0
  138. pulumi_azure_native/devcenter/v20231001preview/attached_network_by_dev_center.py +255 -0
  139. pulumi_azure_native/devcenter/v20231001preview/catalog.py +334 -0
  140. pulumi_azure_native/devcenter/v20231001preview/dev_box_definition.py +413 -0
  141. pulumi_azure_native/devcenter/v20231001preview/dev_center.py +331 -0
  142. pulumi_azure_native/devcenter/v20231001preview/environment_type.py +253 -0
  143. pulumi_azure_native/devcenter/v20231001preview/gallery.py +225 -0
  144. pulumi_azure_native/devcenter/v20231001preview/get_attached_network_by_dev_center.py +188 -0
  145. pulumi_azure_native/devcenter/v20231001preview/get_catalog.py +240 -0
  146. pulumi_azure_native/devcenter/v20231001preview/get_catalog_dev_box_definition_error_details.py +89 -0
  147. pulumi_azure_native/devcenter/v20231001preview/get_catalog_sync_error_details.py +110 -0
  148. pulumi_azure_native/devcenter/v20231001preview/get_customization_task_error_details.py +89 -0
  149. pulumi_azure_native/devcenter/v20231001preview/get_dev_box_definition.py +266 -0
  150. pulumi_azure_native/devcenter/v20231001preview/get_dev_center.py +209 -0
  151. pulumi_azure_native/devcenter/v20231001preview/get_environment_definition_error_details.py +89 -0
  152. pulumi_azure_native/devcenter/v20231001preview/get_environment_type.py +162 -0
  153. pulumi_azure_native/devcenter/v20231001preview/get_gallery.py +149 -0
  154. pulumi_azure_native/devcenter/v20231001preview/get_network_connection.py +261 -0
  155. pulumi_azure_native/devcenter/v20231001preview/get_pool.py +318 -0
  156. pulumi_azure_native/devcenter/v20231001preview/get_project.py +222 -0
  157. pulumi_azure_native/devcenter/v20231001preview/get_project_environment_type.py +253 -0
  158. pulumi_azure_native/devcenter/v20231001preview/get_schedule.py +198 -0
  159. pulumi_azure_native/devcenter/v20231001preview/network_connection.py +448 -0
  160. pulumi_azure_native/devcenter/v20231001preview/outputs.py +1042 -0
  161. pulumi_azure_native/devcenter/v20231001preview/pool.py +550 -0
  162. pulumi_azure_native/devcenter/v20231001preview/project.py +358 -0
  163. pulumi_azure_native/devcenter/v20231001preview/project_environment_type.py +439 -0
  164. pulumi_azure_native/devcenter/v20231001preview/schedule.py +376 -0
  165. pulumi_azure_native/keyvault/__init__.py +3 -0
  166. pulumi_azure_native/keyvault/key.py +1 -1
  167. pulumi_azure_native/keyvault/managed_hsm.py +1 -1
  168. pulumi_azure_native/keyvault/mhsm_private_endpoint_connection.py +1 -1
  169. pulumi_azure_native/keyvault/private_endpoint_connection.py +1 -1
  170. pulumi_azure_native/keyvault/secret.py +1 -1
  171. pulumi_azure_native/keyvault/v20230201/key.py +1 -1
  172. pulumi_azure_native/keyvault/v20230201/managed_hsm.py +1 -1
  173. pulumi_azure_native/keyvault/v20230201/mhsm_private_endpoint_connection.py +1 -1
  174. pulumi_azure_native/keyvault/v20230201/private_endpoint_connection.py +1 -1
  175. pulumi_azure_native/keyvault/v20230201/secret.py +1 -1
  176. pulumi_azure_native/keyvault/v20230201/vault.py +1 -1
  177. pulumi_azure_native/keyvault/v20230701/__init__.py +22 -0
  178. pulumi_azure_native/keyvault/v20230701/_enums.py +242 -0
  179. pulumi_azure_native/keyvault/v20230701/_inputs.py +1621 -0
  180. pulumi_azure_native/keyvault/v20230701/get_key.py +250 -0
  181. pulumi_azure_native/keyvault/v20230701/get_managed_hsm.py +183 -0
  182. pulumi_azure_native/keyvault/v20230701/get_mhsm_private_endpoint_connection.py +227 -0
  183. pulumi_azure_native/keyvault/v20230701/get_private_endpoint_connection.py +188 -0
  184. pulumi_azure_native/keyvault/v20230701/get_secret.py +149 -0
  185. pulumi_azure_native/keyvault/v20230701/get_vault.py +157 -0
  186. pulumi_azure_native/keyvault/v20230701/key.py +324 -0
  187. pulumi_azure_native/keyvault/v20230701/managed_hsm.py +310 -0
  188. pulumi_azure_native/keyvault/v20230701/mhsm_private_endpoint_connection.py +361 -0
  189. pulumi_azure_native/keyvault/v20230701/outputs.py +2256 -0
  190. pulumi_azure_native/keyvault/v20230701/private_endpoint_connection.py +256 -0
  191. pulumi_azure_native/keyvault/v20230701/secret.py +245 -0
  192. pulumi_azure_native/keyvault/v20230701/vault.py +254 -0
  193. pulumi_azure_native/keyvault/vault.py +1 -1
  194. pulumi_azure_native/managednetworkfabric/v20230615/get_network_fabric.py +1 -1
  195. pulumi_azure_native/managednetworkfabric/v20230615/network_fabric.py +21 -2
  196. pulumi_azure_native/mobilenetwork/__init__.py +3 -0
  197. pulumi_azure_native/mobilenetwork/attached_data_network.py +1 -1
  198. pulumi_azure_native/mobilenetwork/data_network.py +1 -1
  199. pulumi_azure_native/mobilenetwork/diagnostics_package.py +1 -1
  200. pulumi_azure_native/mobilenetwork/mobile_network.py +1 -1
  201. pulumi_azure_native/mobilenetwork/packet_capture.py +1 -1
  202. pulumi_azure_native/mobilenetwork/packet_core_control_plane.py +1 -1
  203. pulumi_azure_native/mobilenetwork/packet_core_data_plane.py +1 -1
  204. pulumi_azure_native/mobilenetwork/service.py +1 -1
  205. pulumi_azure_native/mobilenetwork/sim.py +1 -1
  206. pulumi_azure_native/mobilenetwork/sim_group.py +1 -1
  207. pulumi_azure_native/mobilenetwork/sim_policy.py +1 -1
  208. pulumi_azure_native/mobilenetwork/site.py +1 -1
  209. pulumi_azure_native/mobilenetwork/slice.py +1 -1
  210. pulumi_azure_native/mobilenetwork/v20220301preview/packet_core_control_plane.py +1 -1
  211. pulumi_azure_native/mobilenetwork/v20220401preview/attached_data_network.py +1 -1
  212. pulumi_azure_native/mobilenetwork/v20220401preview/data_network.py +1 -1
  213. pulumi_azure_native/mobilenetwork/v20220401preview/mobile_network.py +1 -1
  214. pulumi_azure_native/mobilenetwork/v20220401preview/packet_core_control_plane.py +1 -1
  215. pulumi_azure_native/mobilenetwork/v20220401preview/packet_core_data_plane.py +1 -1
  216. pulumi_azure_native/mobilenetwork/v20220401preview/service.py +1 -1
  217. pulumi_azure_native/mobilenetwork/v20220401preview/sim.py +1 -1
  218. pulumi_azure_native/mobilenetwork/v20220401preview/sim_group.py +1 -1
  219. pulumi_azure_native/mobilenetwork/v20220401preview/sim_policy.py +1 -1
  220. pulumi_azure_native/mobilenetwork/v20220401preview/site.py +1 -1
  221. pulumi_azure_native/mobilenetwork/v20220401preview/slice.py +1 -1
  222. pulumi_azure_native/mobilenetwork/v20221101/attached_data_network.py +1 -1
  223. pulumi_azure_native/mobilenetwork/v20221101/data_network.py +1 -1
  224. pulumi_azure_native/mobilenetwork/v20221101/mobile_network.py +1 -1
  225. pulumi_azure_native/mobilenetwork/v20221101/packet_core_control_plane.py +1 -1
  226. pulumi_azure_native/mobilenetwork/v20221101/packet_core_data_plane.py +1 -1
  227. pulumi_azure_native/mobilenetwork/v20221101/service.py +1 -1
  228. pulumi_azure_native/mobilenetwork/v20221101/sim.py +1 -1
  229. pulumi_azure_native/mobilenetwork/v20221101/sim_group.py +1 -1
  230. pulumi_azure_native/mobilenetwork/v20221101/sim_policy.py +1 -1
  231. pulumi_azure_native/mobilenetwork/v20221101/site.py +1 -1
  232. pulumi_azure_native/mobilenetwork/v20221101/slice.py +1 -1
  233. pulumi_azure_native/mobilenetwork/v20230601/attached_data_network.py +1 -1
  234. pulumi_azure_native/mobilenetwork/v20230601/data_network.py +1 -1
  235. pulumi_azure_native/mobilenetwork/v20230601/diagnostics_package.py +1 -1
  236. pulumi_azure_native/mobilenetwork/v20230601/mobile_network.py +1 -1
  237. pulumi_azure_native/mobilenetwork/v20230601/packet_capture.py +1 -1
  238. pulumi_azure_native/mobilenetwork/v20230601/packet_core_control_plane.py +1 -1
  239. pulumi_azure_native/mobilenetwork/v20230601/packet_core_data_plane.py +1 -1
  240. pulumi_azure_native/mobilenetwork/v20230601/service.py +1 -1
  241. pulumi_azure_native/mobilenetwork/v20230601/sim.py +1 -1
  242. pulumi_azure_native/mobilenetwork/v20230601/sim_group.py +1 -1
  243. pulumi_azure_native/mobilenetwork/v20230601/sim_policy.py +1 -1
  244. pulumi_azure_native/mobilenetwork/v20230601/site.py +1 -1
  245. pulumi_azure_native/mobilenetwork/v20230601/slice.py +1 -1
  246. pulumi_azure_native/mobilenetwork/v20230901/__init__.py +36 -0
  247. pulumi_azure_native/mobilenetwork/v20230901/_enums.py +196 -0
  248. pulumi_azure_native/mobilenetwork/v20230901/_inputs.py +1774 -0
  249. pulumi_azure_native/mobilenetwork/v20230901/attached_data_network.py +443 -0
  250. pulumi_azure_native/mobilenetwork/v20230901/data_network.py +282 -0
  251. pulumi_azure_native/mobilenetwork/v20230901/diagnostics_package.py +215 -0
  252. pulumi_azure_native/mobilenetwork/v20230901/get_attached_data_network.py +237 -0
  253. pulumi_azure_native/mobilenetwork/v20230901/get_data_network.py +175 -0
  254. pulumi_azure_native/mobilenetwork/v20230901/get_diagnostics_package.py +162 -0
  255. pulumi_azure_native/mobilenetwork/v20230901/get_mobile_network.py +183 -0
  256. pulumi_azure_native/mobilenetwork/v20230901/get_packet_capture.py +240 -0
  257. pulumi_azure_native/mobilenetwork/v20230901/get_packet_core_control_plane.py +378 -0
  258. pulumi_azure_native/mobilenetwork/v20230901/get_packet_core_data_plane.py +188 -0
  259. pulumi_azure_native/mobilenetwork/v20230901/get_service.py +201 -0
  260. pulumi_azure_native/mobilenetwork/v20230901/get_sim.py +253 -0
  261. pulumi_azure_native/mobilenetwork/v20230901/get_sim_group.py +196 -0
  262. pulumi_azure_native/mobilenetwork/v20230901/get_sim_policy.py +240 -0
  263. pulumi_azure_native/mobilenetwork/v20230901/get_site.py +175 -0
  264. pulumi_azure_native/mobilenetwork/v20230901/get_slice.py +188 -0
  265. pulumi_azure_native/mobilenetwork/v20230901/mobile_network.py +273 -0
  266. pulumi_azure_native/mobilenetwork/v20230901/outputs.py +2277 -0
  267. pulumi_azure_native/mobilenetwork/v20230901/packet_capture.py +363 -0
  268. pulumi_azure_native/mobilenetwork/v20230901/packet_core_control_plane.py +698 -0
  269. pulumi_azure_native/mobilenetwork/v20230901/packet_core_data_plane.py +313 -0
  270. pulumi_azure_native/mobilenetwork/v20230901/service.py +344 -0
  271. pulumi_azure_native/mobilenetwork/v20230901/sim.py +422 -0
  272. pulumi_azure_native/mobilenetwork/v20230901/sim_group.py +321 -0
  273. pulumi_azure_native/mobilenetwork/v20230901/sim_policy.py +417 -0
  274. pulumi_azure_native/mobilenetwork/v20230901/site.py +263 -0
  275. pulumi_azure_native/mobilenetwork/v20230901/slice.py +313 -0
  276. pulumi_azure_native/storagesync/__init__.py +3 -0
  277. pulumi_azure_native/storagesync/cloud_endpoint.py +1 -1
  278. pulumi_azure_native/storagesync/private_endpoint_connection.py +1 -1
  279. pulumi_azure_native/storagesync/registered_server.py +1 -1
  280. pulumi_azure_native/storagesync/server_endpoint.py +1 -1
  281. pulumi_azure_native/storagesync/storage_sync_service.py +1 -1
  282. pulumi_azure_native/storagesync/sync_group.py +1 -1
  283. pulumi_azure_native/storagesync/v20220601/cloud_endpoint.py +1 -1
  284. pulumi_azure_native/storagesync/v20220601/private_endpoint_connection.py +1 -1
  285. pulumi_azure_native/storagesync/v20220601/registered_server.py +1 -1
  286. pulumi_azure_native/storagesync/v20220601/server_endpoint.py +1 -1
  287. pulumi_azure_native/storagesync/v20220601/storage_sync_service.py +1 -1
  288. pulumi_azure_native/storagesync/v20220601/sync_group.py +1 -1
  289. pulumi_azure_native/storagesync/v20220901/__init__.py +22 -0
  290. pulumi_azure_native/storagesync/v20220901/_enums.py +75 -0
  291. pulumi_azure_native/storagesync/v20220901/_inputs.py +112 -0
  292. pulumi_azure_native/storagesync/v20220901/cloud_endpoint.py +382 -0
  293. pulumi_azure_native/storagesync/v20220901/get_cloud_endpoint.py +258 -0
  294. pulumi_azure_native/storagesync/v20220901/get_private_endpoint_connection.py +175 -0
  295. pulumi_azure_native/storagesync/v20220901/get_registered_server.py +474 -0
  296. pulumi_azure_native/storagesync/v20220901/get_server_endpoint.py +401 -0
  297. pulumi_azure_native/storagesync/v20220901/get_storage_sync_service.py +261 -0
  298. pulumi_azure_native/storagesync/v20220901/get_sync_group.py +149 -0
  299. pulumi_azure_native/storagesync/v20220901/outputs.py +2372 -0
  300. pulumi_azure_native/storagesync/v20220901/private_endpoint_connection.py +247 -0
  301. pulumi_azure_native/storagesync/v20220901/registered_server.py +644 -0
  302. pulumi_azure_native/storagesync/v20220901/server_endpoint.py +634 -0
  303. pulumi_azure_native/storagesync/v20220901/storage_sync_service.py +371 -0
  304. pulumi_azure_native/storagesync/v20220901/sync_group.py +205 -0
  305. pulumi_azure_native/synapse/_inputs.py +2 -2
  306. pulumi_azure_native/synapse/outputs.py +2 -2
  307. pulumi_azure_native/synapse/v20210501/_inputs.py +2 -2
  308. pulumi_azure_native/synapse/v20210501/outputs.py +2 -2
  309. pulumi_azure_native/synapse/v20210601/_inputs.py +2 -2
  310. pulumi_azure_native/synapse/v20210601/outputs.py +2 -2
  311. pulumi_azure_native/synapse/v20210601preview/_inputs.py +2 -2
  312. pulumi_azure_native/synapse/v20210601preview/outputs.py +2 -2
  313. pulumi_azure_native/workloads/__init__.py +3 -0
  314. pulumi_azure_native/workloads/sap_application_server_instance.py +1 -1
  315. pulumi_azure_native/workloads/sap_central_instance.py +1 -1
  316. pulumi_azure_native/workloads/sap_database_instance.py +1 -1
  317. pulumi_azure_native/workloads/sap_virtual_instance.py +1 -1
  318. pulumi_azure_native/workloads/v20211201preview/sap_application_server_instance.py +1 -1
  319. pulumi_azure_native/workloads/v20230401/sap_application_server_instance.py +1 -1
  320. pulumi_azure_native/workloads/v20230401/sap_central_instance.py +1 -1
  321. pulumi_azure_native/workloads/v20230401/sap_database_instance.py +1 -1
  322. pulumi_azure_native/workloads/v20230401/sap_virtual_instance.py +1 -1
  323. pulumi_azure_native/workloads/v20231001preview/__init__.py +22 -0
  324. pulumi_azure_native/workloads/v20231001preview/_enums.py +141 -0
  325. pulumi_azure_native/workloads/v20231001preview/_inputs.py +2377 -0
  326. pulumi_azure_native/workloads/v20231001preview/get_sap_application_server_instance.py +357 -0
  327. pulumi_azure_native/workloads/v20231001preview/get_sap_availability_zone_details.py +90 -0
  328. pulumi_azure_native/workloads/v20231001preview/get_sap_central_instance.py +331 -0
  329. pulumi_azure_native/workloads/v20231001preview/get_sap_database_instance.py +266 -0
  330. pulumi_azure_native/workloads/v20231001preview/get_sap_disk_configurations.py +105 -0
  331. pulumi_azure_native/workloads/v20231001preview/get_sap_sizing_recommendations.py +119 -0
  332. pulumi_azure_native/workloads/v20231001preview/get_sap_supported_sku.py +105 -0
  333. pulumi_azure_native/workloads/v20231001preview/get_sap_virtual_instance.py +287 -0
  334. pulumi_azure_native/workloads/v20231001preview/outputs.py +3828 -0
  335. pulumi_azure_native/workloads/v20231001preview/sap_application_server_instance.py +403 -0
  336. pulumi_azure_native/workloads/v20231001preview/sap_central_instance.py +383 -0
  337. pulumi_azure_native/workloads/v20231001preview/sap_database_instance.py +333 -0
  338. pulumi_azure_native/workloads/v20231001preview/sap_virtual_instance.py +455 -0
  339. {pulumi_azure_native-2.11.1a1697208201.dist-info → pulumi_azure_native-2.12.0.dist-info}/METADATA +1 -1
  340. {pulumi_azure_native-2.11.1a1697208201.dist-info → pulumi_azure_native-2.12.0.dist-info}/RECORD +342 -179
  341. {pulumi_azure_native-2.11.1a1697208201.dist-info → pulumi_azure_native-2.12.0.dist-info}/WHEEL +0 -0
  342. {pulumi_azure_native-2.11.1a1697208201.dist-info → pulumi_azure_native-2.12.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,2377 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from ... import _utilities
11
+ from ._enums import *
12
+
13
+ __all__ = [
14
+ 'ApplicationServerConfigurationArgs',
15
+ 'ApplicationServerFullResourceNamesArgs',
16
+ 'CentralServerConfigurationArgs',
17
+ 'CentralServerFullResourceNamesArgs',
18
+ 'CreateAndMountFileShareConfigurationArgs',
19
+ 'DatabaseConfigurationArgs',
20
+ 'DatabaseServerFullResourceNamesArgs',
21
+ 'DeployerVmPackagesArgs',
22
+ 'DeploymentConfigurationArgs',
23
+ 'DeploymentWithOSConfigurationArgs',
24
+ 'DiscoveryConfigurationArgs',
25
+ 'DiskConfigurationArgs',
26
+ 'DiskSkuArgs',
27
+ 'DiskVolumeConfigurationArgs',
28
+ 'ExternalInstallationSoftwareConfigurationArgs',
29
+ 'HighAvailabilityConfigurationArgs',
30
+ 'HighAvailabilitySoftwareConfigurationArgs',
31
+ 'ImageReferenceArgs',
32
+ 'LinuxConfigurationArgs',
33
+ 'LoadBalancerResourceNamesArgs',
34
+ 'ManagedRGConfigurationArgs',
35
+ 'MountFileShareConfigurationArgs',
36
+ 'NetworkConfigurationArgs',
37
+ 'NetworkInterfaceResourceNamesArgs',
38
+ 'OSProfileArgs',
39
+ 'OsSapConfigurationArgs',
40
+ 'SAPInstallWithoutOSConfigSoftwareConfigurationArgs',
41
+ 'ServiceInitiatedSoftwareConfigurationArgs',
42
+ 'SharedStorageResourceNamesArgs',
43
+ 'SingleServerConfigurationArgs',
44
+ 'SingleServerFullResourceNamesArgs',
45
+ 'SkipFileShareConfigurationArgs',
46
+ 'SshConfigurationArgs',
47
+ 'SshKeyPairArgs',
48
+ 'SshPublicKeyArgs',
49
+ 'StorageConfigurationArgs',
50
+ 'ThreeTierConfigurationArgs',
51
+ 'ThreeTierFullResourceNamesArgs',
52
+ 'UserAssignedServiceIdentityArgs',
53
+ 'VirtualMachineConfigurationArgs',
54
+ 'VirtualMachineResourceNamesArgs',
55
+ 'WindowsConfigurationArgs',
56
+ ]
57
+
58
+ @pulumi.input_type
59
+ class ApplicationServerConfigurationArgs:
60
+ def __init__(__self__, *,
61
+ instance_count: pulumi.Input[float],
62
+ subnet_id: pulumi.Input[str],
63
+ virtual_machine_configuration: pulumi.Input['VirtualMachineConfigurationArgs']):
64
+ """
65
+ Gets or sets the application server configuration.
66
+ :param pulumi.Input[float] instance_count: The number of app server instances.
67
+ :param pulumi.Input[str] subnet_id: The subnet id.
68
+ :param pulumi.Input['VirtualMachineConfigurationArgs'] virtual_machine_configuration: Gets or sets the virtual machine configuration.
69
+ """
70
+ pulumi.set(__self__, "instance_count", instance_count)
71
+ pulumi.set(__self__, "subnet_id", subnet_id)
72
+ pulumi.set(__self__, "virtual_machine_configuration", virtual_machine_configuration)
73
+
74
+ @property
75
+ @pulumi.getter(name="instanceCount")
76
+ def instance_count(self) -> pulumi.Input[float]:
77
+ """
78
+ The number of app server instances.
79
+ """
80
+ return pulumi.get(self, "instance_count")
81
+
82
+ @instance_count.setter
83
+ def instance_count(self, value: pulumi.Input[float]):
84
+ pulumi.set(self, "instance_count", value)
85
+
86
+ @property
87
+ @pulumi.getter(name="subnetId")
88
+ def subnet_id(self) -> pulumi.Input[str]:
89
+ """
90
+ The subnet id.
91
+ """
92
+ return pulumi.get(self, "subnet_id")
93
+
94
+ @subnet_id.setter
95
+ def subnet_id(self, value: pulumi.Input[str]):
96
+ pulumi.set(self, "subnet_id", value)
97
+
98
+ @property
99
+ @pulumi.getter(name="virtualMachineConfiguration")
100
+ def virtual_machine_configuration(self) -> pulumi.Input['VirtualMachineConfigurationArgs']:
101
+ """
102
+ Gets or sets the virtual machine configuration.
103
+ """
104
+ return pulumi.get(self, "virtual_machine_configuration")
105
+
106
+ @virtual_machine_configuration.setter
107
+ def virtual_machine_configuration(self, value: pulumi.Input['VirtualMachineConfigurationArgs']):
108
+ pulumi.set(self, "virtual_machine_configuration", value)
109
+
110
+
111
+ @pulumi.input_type
112
+ class ApplicationServerFullResourceNamesArgs:
113
+ def __init__(__self__, *,
114
+ availability_set_name: Optional[pulumi.Input[str]] = None,
115
+ virtual_machines: Optional[pulumi.Input[Sequence[pulumi.Input['VirtualMachineResourceNamesArgs']]]] = None):
116
+ """
117
+ The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
118
+ :param pulumi.Input[str] availability_set_name: The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
119
+ :param pulumi.Input[Sequence[pulumi.Input['VirtualMachineResourceNamesArgs']]] virtual_machines: The list of virtual machine naming details.
120
+ """
121
+ if availability_set_name is not None:
122
+ pulumi.set(__self__, "availability_set_name", availability_set_name)
123
+ if virtual_machines is not None:
124
+ pulumi.set(__self__, "virtual_machines", virtual_machines)
125
+
126
+ @property
127
+ @pulumi.getter(name="availabilitySetName")
128
+ def availability_set_name(self) -> Optional[pulumi.Input[str]]:
129
+ """
130
+ The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
131
+ """
132
+ return pulumi.get(self, "availability_set_name")
133
+
134
+ @availability_set_name.setter
135
+ def availability_set_name(self, value: Optional[pulumi.Input[str]]):
136
+ pulumi.set(self, "availability_set_name", value)
137
+
138
+ @property
139
+ @pulumi.getter(name="virtualMachines")
140
+ def virtual_machines(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VirtualMachineResourceNamesArgs']]]]:
141
+ """
142
+ The list of virtual machine naming details.
143
+ """
144
+ return pulumi.get(self, "virtual_machines")
145
+
146
+ @virtual_machines.setter
147
+ def virtual_machines(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['VirtualMachineResourceNamesArgs']]]]):
148
+ pulumi.set(self, "virtual_machines", value)
149
+
150
+
151
+ @pulumi.input_type
152
+ class CentralServerConfigurationArgs:
153
+ def __init__(__self__, *,
154
+ instance_count: pulumi.Input[float],
155
+ subnet_id: pulumi.Input[str],
156
+ virtual_machine_configuration: pulumi.Input['VirtualMachineConfigurationArgs']):
157
+ """
158
+ Gets or sets the central server configuration.
159
+ :param pulumi.Input[float] instance_count: The number of central server VMs.
160
+ :param pulumi.Input[str] subnet_id: The subnet id.
161
+ :param pulumi.Input['VirtualMachineConfigurationArgs'] virtual_machine_configuration: Gets or sets the virtual machine configuration.
162
+ """
163
+ pulumi.set(__self__, "instance_count", instance_count)
164
+ pulumi.set(__self__, "subnet_id", subnet_id)
165
+ pulumi.set(__self__, "virtual_machine_configuration", virtual_machine_configuration)
166
+
167
+ @property
168
+ @pulumi.getter(name="instanceCount")
169
+ def instance_count(self) -> pulumi.Input[float]:
170
+ """
171
+ The number of central server VMs.
172
+ """
173
+ return pulumi.get(self, "instance_count")
174
+
175
+ @instance_count.setter
176
+ def instance_count(self, value: pulumi.Input[float]):
177
+ pulumi.set(self, "instance_count", value)
178
+
179
+ @property
180
+ @pulumi.getter(name="subnetId")
181
+ def subnet_id(self) -> pulumi.Input[str]:
182
+ """
183
+ The subnet id.
184
+ """
185
+ return pulumi.get(self, "subnet_id")
186
+
187
+ @subnet_id.setter
188
+ def subnet_id(self, value: pulumi.Input[str]):
189
+ pulumi.set(self, "subnet_id", value)
190
+
191
+ @property
192
+ @pulumi.getter(name="virtualMachineConfiguration")
193
+ def virtual_machine_configuration(self) -> pulumi.Input['VirtualMachineConfigurationArgs']:
194
+ """
195
+ Gets or sets the virtual machine configuration.
196
+ """
197
+ return pulumi.get(self, "virtual_machine_configuration")
198
+
199
+ @virtual_machine_configuration.setter
200
+ def virtual_machine_configuration(self, value: pulumi.Input['VirtualMachineConfigurationArgs']):
201
+ pulumi.set(self, "virtual_machine_configuration", value)
202
+
203
+
204
+ @pulumi.input_type
205
+ class CentralServerFullResourceNamesArgs:
206
+ def __init__(__self__, *,
207
+ availability_set_name: Optional[pulumi.Input[str]] = None,
208
+ load_balancer: Optional[pulumi.Input['LoadBalancerResourceNamesArgs']] = None,
209
+ virtual_machines: Optional[pulumi.Input[Sequence[pulumi.Input['VirtualMachineResourceNamesArgs']]]] = None):
210
+ """
211
+ The full resource names object for central server layer resources.
212
+ :param pulumi.Input[str] availability_set_name: The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
213
+ :param pulumi.Input['LoadBalancerResourceNamesArgs'] load_balancer: The resource names object for load balancer and related resources.
214
+ :param pulumi.Input[Sequence[pulumi.Input['VirtualMachineResourceNamesArgs']]] virtual_machines: The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.
215
+ """
216
+ if availability_set_name is not None:
217
+ pulumi.set(__self__, "availability_set_name", availability_set_name)
218
+ if load_balancer is not None:
219
+ pulumi.set(__self__, "load_balancer", load_balancer)
220
+ if virtual_machines is not None:
221
+ pulumi.set(__self__, "virtual_machines", virtual_machines)
222
+
223
+ @property
224
+ @pulumi.getter(name="availabilitySetName")
225
+ def availability_set_name(self) -> Optional[pulumi.Input[str]]:
226
+ """
227
+ The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
228
+ """
229
+ return pulumi.get(self, "availability_set_name")
230
+
231
+ @availability_set_name.setter
232
+ def availability_set_name(self, value: Optional[pulumi.Input[str]]):
233
+ pulumi.set(self, "availability_set_name", value)
234
+
235
+ @property
236
+ @pulumi.getter(name="loadBalancer")
237
+ def load_balancer(self) -> Optional[pulumi.Input['LoadBalancerResourceNamesArgs']]:
238
+ """
239
+ The resource names object for load balancer and related resources.
240
+ """
241
+ return pulumi.get(self, "load_balancer")
242
+
243
+ @load_balancer.setter
244
+ def load_balancer(self, value: Optional[pulumi.Input['LoadBalancerResourceNamesArgs']]):
245
+ pulumi.set(self, "load_balancer", value)
246
+
247
+ @property
248
+ @pulumi.getter(name="virtualMachines")
249
+ def virtual_machines(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VirtualMachineResourceNamesArgs']]]]:
250
+ """
251
+ The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.
252
+ """
253
+ return pulumi.get(self, "virtual_machines")
254
+
255
+ @virtual_machines.setter
256
+ def virtual_machines(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['VirtualMachineResourceNamesArgs']]]]):
257
+ pulumi.set(self, "virtual_machines", value)
258
+
259
+
260
+ @pulumi.input_type
261
+ class CreateAndMountFileShareConfigurationArgs:
262
+ def __init__(__self__, *,
263
+ configuration_type: pulumi.Input[str],
264
+ resource_group: Optional[pulumi.Input[str]] = None,
265
+ storage_account_name: Optional[pulumi.Input[str]] = None):
266
+ """
267
+ Gets or sets the file share configuration where the transport directory fileshare is created and mounted as a part of the create infra flow. Please pre-create the resource group you intend to place the transport directory in. The storage account and fileshare will be auto-created by the ACSS and doesn't need to be pre-created.
268
+ :param pulumi.Input[str] configuration_type: The type of file share config.
269
+ Expected value is 'CreateAndMount'.
270
+ :param pulumi.Input[str] resource_group: The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
271
+ :param pulumi.Input[str] storage_account_name: The name of file share storage account name . A custom name is used in case of missing input.
272
+ """
273
+ pulumi.set(__self__, "configuration_type", 'CreateAndMount')
274
+ if resource_group is not None:
275
+ pulumi.set(__self__, "resource_group", resource_group)
276
+ if storage_account_name is not None:
277
+ pulumi.set(__self__, "storage_account_name", storage_account_name)
278
+
279
+ @property
280
+ @pulumi.getter(name="configurationType")
281
+ def configuration_type(self) -> pulumi.Input[str]:
282
+ """
283
+ The type of file share config.
284
+ Expected value is 'CreateAndMount'.
285
+ """
286
+ return pulumi.get(self, "configuration_type")
287
+
288
+ @configuration_type.setter
289
+ def configuration_type(self, value: pulumi.Input[str]):
290
+ pulumi.set(self, "configuration_type", value)
291
+
292
+ @property
293
+ @pulumi.getter(name="resourceGroup")
294
+ def resource_group(self) -> Optional[pulumi.Input[str]]:
295
+ """
296
+ The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
297
+ """
298
+ return pulumi.get(self, "resource_group")
299
+
300
+ @resource_group.setter
301
+ def resource_group(self, value: Optional[pulumi.Input[str]]):
302
+ pulumi.set(self, "resource_group", value)
303
+
304
+ @property
305
+ @pulumi.getter(name="storageAccountName")
306
+ def storage_account_name(self) -> Optional[pulumi.Input[str]]:
307
+ """
308
+ The name of file share storage account name . A custom name is used in case of missing input.
309
+ """
310
+ return pulumi.get(self, "storage_account_name")
311
+
312
+ @storage_account_name.setter
313
+ def storage_account_name(self, value: Optional[pulumi.Input[str]]):
314
+ pulumi.set(self, "storage_account_name", value)
315
+
316
+
317
+ @pulumi.input_type
318
+ class DatabaseConfigurationArgs:
319
+ def __init__(__self__, *,
320
+ instance_count: pulumi.Input[float],
321
+ subnet_id: pulumi.Input[str],
322
+ virtual_machine_configuration: pulumi.Input['VirtualMachineConfigurationArgs'],
323
+ database_type: Optional[pulumi.Input[Union[str, 'SAPDatabaseType']]] = None,
324
+ disk_configuration: Optional[pulumi.Input['DiskConfigurationArgs']] = None):
325
+ """
326
+ Gets or sets the database configuration.
327
+ :param pulumi.Input[float] instance_count: The number of database VMs.
328
+ :param pulumi.Input[str] subnet_id: The subnet id.
329
+ :param pulumi.Input['VirtualMachineConfigurationArgs'] virtual_machine_configuration: Gets or sets the virtual machine configuration.
330
+ :param pulumi.Input[Union[str, 'SAPDatabaseType']] database_type: The database type.
331
+ :param pulumi.Input['DiskConfigurationArgs'] disk_configuration: Gets or sets the disk configuration.
332
+ """
333
+ pulumi.set(__self__, "instance_count", instance_count)
334
+ pulumi.set(__self__, "subnet_id", subnet_id)
335
+ pulumi.set(__self__, "virtual_machine_configuration", virtual_machine_configuration)
336
+ if database_type is not None:
337
+ pulumi.set(__self__, "database_type", database_type)
338
+ if disk_configuration is not None:
339
+ pulumi.set(__self__, "disk_configuration", disk_configuration)
340
+
341
+ @property
342
+ @pulumi.getter(name="instanceCount")
343
+ def instance_count(self) -> pulumi.Input[float]:
344
+ """
345
+ The number of database VMs.
346
+ """
347
+ return pulumi.get(self, "instance_count")
348
+
349
+ @instance_count.setter
350
+ def instance_count(self, value: pulumi.Input[float]):
351
+ pulumi.set(self, "instance_count", value)
352
+
353
+ @property
354
+ @pulumi.getter(name="subnetId")
355
+ def subnet_id(self) -> pulumi.Input[str]:
356
+ """
357
+ The subnet id.
358
+ """
359
+ return pulumi.get(self, "subnet_id")
360
+
361
+ @subnet_id.setter
362
+ def subnet_id(self, value: pulumi.Input[str]):
363
+ pulumi.set(self, "subnet_id", value)
364
+
365
+ @property
366
+ @pulumi.getter(name="virtualMachineConfiguration")
367
+ def virtual_machine_configuration(self) -> pulumi.Input['VirtualMachineConfigurationArgs']:
368
+ """
369
+ Gets or sets the virtual machine configuration.
370
+ """
371
+ return pulumi.get(self, "virtual_machine_configuration")
372
+
373
+ @virtual_machine_configuration.setter
374
+ def virtual_machine_configuration(self, value: pulumi.Input['VirtualMachineConfigurationArgs']):
375
+ pulumi.set(self, "virtual_machine_configuration", value)
376
+
377
+ @property
378
+ @pulumi.getter(name="databaseType")
379
+ def database_type(self) -> Optional[pulumi.Input[Union[str, 'SAPDatabaseType']]]:
380
+ """
381
+ The database type.
382
+ """
383
+ return pulumi.get(self, "database_type")
384
+
385
+ @database_type.setter
386
+ def database_type(self, value: Optional[pulumi.Input[Union[str, 'SAPDatabaseType']]]):
387
+ pulumi.set(self, "database_type", value)
388
+
389
+ @property
390
+ @pulumi.getter(name="diskConfiguration")
391
+ def disk_configuration(self) -> Optional[pulumi.Input['DiskConfigurationArgs']]:
392
+ """
393
+ Gets or sets the disk configuration.
394
+ """
395
+ return pulumi.get(self, "disk_configuration")
396
+
397
+ @disk_configuration.setter
398
+ def disk_configuration(self, value: Optional[pulumi.Input['DiskConfigurationArgs']]):
399
+ pulumi.set(self, "disk_configuration", value)
400
+
401
+
402
+ @pulumi.input_type
403
+ class DatabaseServerFullResourceNamesArgs:
404
+ def __init__(__self__, *,
405
+ availability_set_name: Optional[pulumi.Input[str]] = None,
406
+ load_balancer: Optional[pulumi.Input['LoadBalancerResourceNamesArgs']] = None,
407
+ virtual_machines: Optional[pulumi.Input[Sequence[pulumi.Input['VirtualMachineResourceNamesArgs']]]] = None):
408
+ """
409
+ The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
410
+ :param pulumi.Input[str] availability_set_name: The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
411
+ :param pulumi.Input['LoadBalancerResourceNamesArgs'] load_balancer: The resource names object for load balancer and related resources.
412
+ :param pulumi.Input[Sequence[pulumi.Input['VirtualMachineResourceNamesArgs']]] virtual_machines: The list of virtual machine naming details.
413
+ """
414
+ if availability_set_name is not None:
415
+ pulumi.set(__self__, "availability_set_name", availability_set_name)
416
+ if load_balancer is not None:
417
+ pulumi.set(__self__, "load_balancer", load_balancer)
418
+ if virtual_machines is not None:
419
+ pulumi.set(__self__, "virtual_machines", virtual_machines)
420
+
421
+ @property
422
+ @pulumi.getter(name="availabilitySetName")
423
+ def availability_set_name(self) -> Optional[pulumi.Input[str]]:
424
+ """
425
+ The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
426
+ """
427
+ return pulumi.get(self, "availability_set_name")
428
+
429
+ @availability_set_name.setter
430
+ def availability_set_name(self, value: Optional[pulumi.Input[str]]):
431
+ pulumi.set(self, "availability_set_name", value)
432
+
433
+ @property
434
+ @pulumi.getter(name="loadBalancer")
435
+ def load_balancer(self) -> Optional[pulumi.Input['LoadBalancerResourceNamesArgs']]:
436
+ """
437
+ The resource names object for load balancer and related resources.
438
+ """
439
+ return pulumi.get(self, "load_balancer")
440
+
441
+ @load_balancer.setter
442
+ def load_balancer(self, value: Optional[pulumi.Input['LoadBalancerResourceNamesArgs']]):
443
+ pulumi.set(self, "load_balancer", value)
444
+
445
+ @property
446
+ @pulumi.getter(name="virtualMachines")
447
+ def virtual_machines(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VirtualMachineResourceNamesArgs']]]]:
448
+ """
449
+ The list of virtual machine naming details.
450
+ """
451
+ return pulumi.get(self, "virtual_machines")
452
+
453
+ @virtual_machines.setter
454
+ def virtual_machines(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['VirtualMachineResourceNamesArgs']]]]):
455
+ pulumi.set(self, "virtual_machines", value)
456
+
457
+
458
+ @pulumi.input_type
459
+ class DeployerVmPackagesArgs:
460
+ def __init__(__self__, *,
461
+ storage_account_id: Optional[pulumi.Input[str]] = None,
462
+ url: Optional[pulumi.Input[str]] = None):
463
+ """
464
+ Defines the url and storage account ID where deployer VM packages are uploaded
465
+ :param pulumi.Input[str] storage_account_id: The deployer VM packages storage account id
466
+ :param pulumi.Input[str] url: The URL to the deployer VM packages file.
467
+ """
468
+ if storage_account_id is not None:
469
+ pulumi.set(__self__, "storage_account_id", storage_account_id)
470
+ if url is not None:
471
+ pulumi.set(__self__, "url", url)
472
+
473
+ @property
474
+ @pulumi.getter(name="storageAccountId")
475
+ def storage_account_id(self) -> Optional[pulumi.Input[str]]:
476
+ """
477
+ The deployer VM packages storage account id
478
+ """
479
+ return pulumi.get(self, "storage_account_id")
480
+
481
+ @storage_account_id.setter
482
+ def storage_account_id(self, value: Optional[pulumi.Input[str]]):
483
+ pulumi.set(self, "storage_account_id", value)
484
+
485
+ @property
486
+ @pulumi.getter
487
+ def url(self) -> Optional[pulumi.Input[str]]:
488
+ """
489
+ The URL to the deployer VM packages file.
490
+ """
491
+ return pulumi.get(self, "url")
492
+
493
+ @url.setter
494
+ def url(self, value: Optional[pulumi.Input[str]]):
495
+ pulumi.set(self, "url", value)
496
+
497
+
498
+ @pulumi.input_type
499
+ class DeploymentConfigurationArgs:
500
+ def __init__(__self__, *,
501
+ configuration_type: pulumi.Input[str],
502
+ app_location: Optional[pulumi.Input[str]] = None,
503
+ infrastructure_configuration: Optional[pulumi.Input[Union['SingleServerConfigurationArgs', 'ThreeTierConfigurationArgs']]] = None,
504
+ software_configuration: Optional[pulumi.Input[Union['ExternalInstallationSoftwareConfigurationArgs', 'SAPInstallWithoutOSConfigSoftwareConfigurationArgs', 'ServiceInitiatedSoftwareConfigurationArgs']]] = None):
505
+ """
506
+ Deployment Configuration.
507
+ :param pulumi.Input[str] configuration_type: The configuration Type.
508
+ Expected value is 'Deployment'.
509
+ :param pulumi.Input[str] app_location: The geo-location where the SAP system is to be created.
510
+ :param pulumi.Input[Union['SingleServerConfigurationArgs', 'ThreeTierConfigurationArgs']] infrastructure_configuration: The infrastructure configuration.
511
+ :param pulumi.Input[Union['ExternalInstallationSoftwareConfigurationArgs', 'SAPInstallWithoutOSConfigSoftwareConfigurationArgs', 'ServiceInitiatedSoftwareConfigurationArgs']] software_configuration: The software configuration.
512
+ """
513
+ pulumi.set(__self__, "configuration_type", 'Deployment')
514
+ if app_location is not None:
515
+ pulumi.set(__self__, "app_location", app_location)
516
+ if infrastructure_configuration is not None:
517
+ pulumi.set(__self__, "infrastructure_configuration", infrastructure_configuration)
518
+ if software_configuration is not None:
519
+ pulumi.set(__self__, "software_configuration", software_configuration)
520
+
521
+ @property
522
+ @pulumi.getter(name="configurationType")
523
+ def configuration_type(self) -> pulumi.Input[str]:
524
+ """
525
+ The configuration Type.
526
+ Expected value is 'Deployment'.
527
+ """
528
+ return pulumi.get(self, "configuration_type")
529
+
530
+ @configuration_type.setter
531
+ def configuration_type(self, value: pulumi.Input[str]):
532
+ pulumi.set(self, "configuration_type", value)
533
+
534
+ @property
535
+ @pulumi.getter(name="appLocation")
536
+ def app_location(self) -> Optional[pulumi.Input[str]]:
537
+ """
538
+ The geo-location where the SAP system is to be created.
539
+ """
540
+ return pulumi.get(self, "app_location")
541
+
542
+ @app_location.setter
543
+ def app_location(self, value: Optional[pulumi.Input[str]]):
544
+ pulumi.set(self, "app_location", value)
545
+
546
+ @property
547
+ @pulumi.getter(name="infrastructureConfiguration")
548
+ def infrastructure_configuration(self) -> Optional[pulumi.Input[Union['SingleServerConfigurationArgs', 'ThreeTierConfigurationArgs']]]:
549
+ """
550
+ The infrastructure configuration.
551
+ """
552
+ return pulumi.get(self, "infrastructure_configuration")
553
+
554
+ @infrastructure_configuration.setter
555
+ def infrastructure_configuration(self, value: Optional[pulumi.Input[Union['SingleServerConfigurationArgs', 'ThreeTierConfigurationArgs']]]):
556
+ pulumi.set(self, "infrastructure_configuration", value)
557
+
558
+ @property
559
+ @pulumi.getter(name="softwareConfiguration")
560
+ def software_configuration(self) -> Optional[pulumi.Input[Union['ExternalInstallationSoftwareConfigurationArgs', 'SAPInstallWithoutOSConfigSoftwareConfigurationArgs', 'ServiceInitiatedSoftwareConfigurationArgs']]]:
561
+ """
562
+ The software configuration.
563
+ """
564
+ return pulumi.get(self, "software_configuration")
565
+
566
+ @software_configuration.setter
567
+ def software_configuration(self, value: Optional[pulumi.Input[Union['ExternalInstallationSoftwareConfigurationArgs', 'SAPInstallWithoutOSConfigSoftwareConfigurationArgs', 'ServiceInitiatedSoftwareConfigurationArgs']]]):
568
+ pulumi.set(self, "software_configuration", value)
569
+
570
+
571
+ @pulumi.input_type
572
+ class DeploymentWithOSConfigurationArgs:
573
+ def __init__(__self__, *,
574
+ configuration_type: pulumi.Input[str],
575
+ app_location: Optional[pulumi.Input[str]] = None,
576
+ infrastructure_configuration: Optional[pulumi.Input[Union['SingleServerConfigurationArgs', 'ThreeTierConfigurationArgs']]] = None,
577
+ os_sap_configuration: Optional[pulumi.Input['OsSapConfigurationArgs']] = None,
578
+ software_configuration: Optional[pulumi.Input[Union['ExternalInstallationSoftwareConfigurationArgs', 'SAPInstallWithoutOSConfigSoftwareConfigurationArgs', 'ServiceInitiatedSoftwareConfigurationArgs']]] = None):
579
+ """
580
+ Deployment along with OS Configuration.
581
+ :param pulumi.Input[str] configuration_type: The configuration Type.
582
+ Expected value is 'DeploymentWithOSConfig'.
583
+ :param pulumi.Input[str] app_location: The geo-location where the SAP system is to be created.
584
+ :param pulumi.Input[Union['SingleServerConfigurationArgs', 'ThreeTierConfigurationArgs']] infrastructure_configuration: The infrastructure configuration.
585
+ :param pulumi.Input['OsSapConfigurationArgs'] os_sap_configuration: The OS and SAP configuration.
586
+ :param pulumi.Input[Union['ExternalInstallationSoftwareConfigurationArgs', 'SAPInstallWithoutOSConfigSoftwareConfigurationArgs', 'ServiceInitiatedSoftwareConfigurationArgs']] software_configuration: The software configuration.
587
+ """
588
+ pulumi.set(__self__, "configuration_type", 'DeploymentWithOSConfig')
589
+ if app_location is not None:
590
+ pulumi.set(__self__, "app_location", app_location)
591
+ if infrastructure_configuration is not None:
592
+ pulumi.set(__self__, "infrastructure_configuration", infrastructure_configuration)
593
+ if os_sap_configuration is not None:
594
+ pulumi.set(__self__, "os_sap_configuration", os_sap_configuration)
595
+ if software_configuration is not None:
596
+ pulumi.set(__self__, "software_configuration", software_configuration)
597
+
598
+ @property
599
+ @pulumi.getter(name="configurationType")
600
+ def configuration_type(self) -> pulumi.Input[str]:
601
+ """
602
+ The configuration Type.
603
+ Expected value is 'DeploymentWithOSConfig'.
604
+ """
605
+ return pulumi.get(self, "configuration_type")
606
+
607
+ @configuration_type.setter
608
+ def configuration_type(self, value: pulumi.Input[str]):
609
+ pulumi.set(self, "configuration_type", value)
610
+
611
+ @property
612
+ @pulumi.getter(name="appLocation")
613
+ def app_location(self) -> Optional[pulumi.Input[str]]:
614
+ """
615
+ The geo-location where the SAP system is to be created.
616
+ """
617
+ return pulumi.get(self, "app_location")
618
+
619
+ @app_location.setter
620
+ def app_location(self, value: Optional[pulumi.Input[str]]):
621
+ pulumi.set(self, "app_location", value)
622
+
623
+ @property
624
+ @pulumi.getter(name="infrastructureConfiguration")
625
+ def infrastructure_configuration(self) -> Optional[pulumi.Input[Union['SingleServerConfigurationArgs', 'ThreeTierConfigurationArgs']]]:
626
+ """
627
+ The infrastructure configuration.
628
+ """
629
+ return pulumi.get(self, "infrastructure_configuration")
630
+
631
+ @infrastructure_configuration.setter
632
+ def infrastructure_configuration(self, value: Optional[pulumi.Input[Union['SingleServerConfigurationArgs', 'ThreeTierConfigurationArgs']]]):
633
+ pulumi.set(self, "infrastructure_configuration", value)
634
+
635
+ @property
636
+ @pulumi.getter(name="osSapConfiguration")
637
+ def os_sap_configuration(self) -> Optional[pulumi.Input['OsSapConfigurationArgs']]:
638
+ """
639
+ The OS and SAP configuration.
640
+ """
641
+ return pulumi.get(self, "os_sap_configuration")
642
+
643
+ @os_sap_configuration.setter
644
+ def os_sap_configuration(self, value: Optional[pulumi.Input['OsSapConfigurationArgs']]):
645
+ pulumi.set(self, "os_sap_configuration", value)
646
+
647
+ @property
648
+ @pulumi.getter(name="softwareConfiguration")
649
+ def software_configuration(self) -> Optional[pulumi.Input[Union['ExternalInstallationSoftwareConfigurationArgs', 'SAPInstallWithoutOSConfigSoftwareConfigurationArgs', 'ServiceInitiatedSoftwareConfigurationArgs']]]:
650
+ """
651
+ The software configuration.
652
+ """
653
+ return pulumi.get(self, "software_configuration")
654
+
655
+ @software_configuration.setter
656
+ def software_configuration(self, value: Optional[pulumi.Input[Union['ExternalInstallationSoftwareConfigurationArgs', 'SAPInstallWithoutOSConfigSoftwareConfigurationArgs', 'ServiceInitiatedSoftwareConfigurationArgs']]]):
657
+ pulumi.set(self, "software_configuration", value)
658
+
659
+
660
+ @pulumi.input_type
661
+ class DiscoveryConfigurationArgs:
662
+ def __init__(__self__, *,
663
+ configuration_type: pulumi.Input[str],
664
+ central_server_vm_id: Optional[pulumi.Input[str]] = None,
665
+ managed_rg_storage_account_name: Optional[pulumi.Input[str]] = None):
666
+ """
667
+ Discovery Details.
668
+ :param pulumi.Input[str] configuration_type: The configuration Type.
669
+ Expected value is 'Discovery'.
670
+ :param pulumi.Input[str] central_server_vm_id: The virtual machine ID of the Central Server.
671
+ :param pulumi.Input[str] managed_rg_storage_account_name: The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.<br><br>Refer to the storage account naming rules [here](https://learn.microsoft.com/azure/azure-resource-manager/management/resource-name-rules#microsoftstorage).<br><br>If not provided, the service will create the storage account with a random name.
672
+ """
673
+ pulumi.set(__self__, "configuration_type", 'Discovery')
674
+ if central_server_vm_id is not None:
675
+ pulumi.set(__self__, "central_server_vm_id", central_server_vm_id)
676
+ if managed_rg_storage_account_name is not None:
677
+ pulumi.set(__self__, "managed_rg_storage_account_name", managed_rg_storage_account_name)
678
+
679
+ @property
680
+ @pulumi.getter(name="configurationType")
681
+ def configuration_type(self) -> pulumi.Input[str]:
682
+ """
683
+ The configuration Type.
684
+ Expected value is 'Discovery'.
685
+ """
686
+ return pulumi.get(self, "configuration_type")
687
+
688
+ @configuration_type.setter
689
+ def configuration_type(self, value: pulumi.Input[str]):
690
+ pulumi.set(self, "configuration_type", value)
691
+
692
+ @property
693
+ @pulumi.getter(name="centralServerVmId")
694
+ def central_server_vm_id(self) -> Optional[pulumi.Input[str]]:
695
+ """
696
+ The virtual machine ID of the Central Server.
697
+ """
698
+ return pulumi.get(self, "central_server_vm_id")
699
+
700
+ @central_server_vm_id.setter
701
+ def central_server_vm_id(self, value: Optional[pulumi.Input[str]]):
702
+ pulumi.set(self, "central_server_vm_id", value)
703
+
704
+ @property
705
+ @pulumi.getter(name="managedRgStorageAccountName")
706
+ def managed_rg_storage_account_name(self) -> Optional[pulumi.Input[str]]:
707
+ """
708
+ The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.<br><br>Refer to the storage account naming rules [here](https://learn.microsoft.com/azure/azure-resource-manager/management/resource-name-rules#microsoftstorage).<br><br>If not provided, the service will create the storage account with a random name.
709
+ """
710
+ return pulumi.get(self, "managed_rg_storage_account_name")
711
+
712
+ @managed_rg_storage_account_name.setter
713
+ def managed_rg_storage_account_name(self, value: Optional[pulumi.Input[str]]):
714
+ pulumi.set(self, "managed_rg_storage_account_name", value)
715
+
716
+
717
+ @pulumi.input_type
718
+ class DiskConfigurationArgs:
719
+ def __init__(__self__, *,
720
+ disk_volume_configurations: Optional[pulumi.Input[Mapping[str, pulumi.Input['DiskVolumeConfigurationArgs']]]] = None):
721
+ """
722
+ The Disk Configuration Details.
723
+ :param pulumi.Input[Mapping[str, pulumi.Input['DiskVolumeConfigurationArgs']]] disk_volume_configurations: The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].
724
+ """
725
+ if disk_volume_configurations is not None:
726
+ pulumi.set(__self__, "disk_volume_configurations", disk_volume_configurations)
727
+
728
+ @property
729
+ @pulumi.getter(name="diskVolumeConfigurations")
730
+ def disk_volume_configurations(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['DiskVolumeConfigurationArgs']]]]:
731
+ """
732
+ The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].
733
+ """
734
+ return pulumi.get(self, "disk_volume_configurations")
735
+
736
+ @disk_volume_configurations.setter
737
+ def disk_volume_configurations(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['DiskVolumeConfigurationArgs']]]]):
738
+ pulumi.set(self, "disk_volume_configurations", value)
739
+
740
+
741
+ @pulumi.input_type
742
+ class DiskSkuArgs:
743
+ def __init__(__self__, *,
744
+ name: Optional[pulumi.Input[Union[str, 'DiskSkuName']]] = None):
745
+ """
746
+ The type of disk sku. For example, Standard_LRS, Standard_ZRS, Premium_LRS, Premium_ZRS.
747
+ :param pulumi.Input[Union[str, 'DiskSkuName']] name: Defines the disk sku name.
748
+ """
749
+ if name is not None:
750
+ pulumi.set(__self__, "name", name)
751
+
752
+ @property
753
+ @pulumi.getter
754
+ def name(self) -> Optional[pulumi.Input[Union[str, 'DiskSkuName']]]:
755
+ """
756
+ Defines the disk sku name.
757
+ """
758
+ return pulumi.get(self, "name")
759
+
760
+ @name.setter
761
+ def name(self, value: Optional[pulumi.Input[Union[str, 'DiskSkuName']]]):
762
+ pulumi.set(self, "name", value)
763
+
764
+
765
+ @pulumi.input_type
766
+ class DiskVolumeConfigurationArgs:
767
+ def __init__(__self__, *,
768
+ count: Optional[pulumi.Input[float]] = None,
769
+ size_gb: Optional[pulumi.Input[float]] = None,
770
+ sku: Optional[pulumi.Input['DiskSkuArgs']] = None):
771
+ """
772
+ The disk configuration required for the selected volume.
773
+ :param pulumi.Input[float] count: The total number of disks required for the concerned volume.
774
+ :param pulumi.Input[float] size_gb: The disk size in GB.
775
+ :param pulumi.Input['DiskSkuArgs'] sku: The disk SKU details.
776
+ """
777
+ if count is not None:
778
+ pulumi.set(__self__, "count", count)
779
+ if size_gb is not None:
780
+ pulumi.set(__self__, "size_gb", size_gb)
781
+ if sku is not None:
782
+ pulumi.set(__self__, "sku", sku)
783
+
784
+ @property
785
+ @pulumi.getter
786
+ def count(self) -> Optional[pulumi.Input[float]]:
787
+ """
788
+ The total number of disks required for the concerned volume.
789
+ """
790
+ return pulumi.get(self, "count")
791
+
792
+ @count.setter
793
+ def count(self, value: Optional[pulumi.Input[float]]):
794
+ pulumi.set(self, "count", value)
795
+
796
+ @property
797
+ @pulumi.getter(name="sizeGB")
798
+ def size_gb(self) -> Optional[pulumi.Input[float]]:
799
+ """
800
+ The disk size in GB.
801
+ """
802
+ return pulumi.get(self, "size_gb")
803
+
804
+ @size_gb.setter
805
+ def size_gb(self, value: Optional[pulumi.Input[float]]):
806
+ pulumi.set(self, "size_gb", value)
807
+
808
+ @property
809
+ @pulumi.getter
810
+ def sku(self) -> Optional[pulumi.Input['DiskSkuArgs']]:
811
+ """
812
+ The disk SKU details.
813
+ """
814
+ return pulumi.get(self, "sku")
815
+
816
+ @sku.setter
817
+ def sku(self, value: Optional[pulumi.Input['DiskSkuArgs']]):
818
+ pulumi.set(self, "sku", value)
819
+
820
+
821
+ @pulumi.input_type
822
+ class ExternalInstallationSoftwareConfigurationArgs:
823
+ def __init__(__self__, *,
824
+ software_installation_type: pulumi.Input[str],
825
+ central_server_vm_id: Optional[pulumi.Input[str]] = None):
826
+ """
827
+ The SAP Software configuration Input when the software is installed externally outside the service.
828
+ :param pulumi.Input[str] software_installation_type: The SAP software installation Type.
829
+ Expected value is 'External'.
830
+ :param pulumi.Input[str] central_server_vm_id: The resource ID of the virtual machine containing the central server instance.
831
+ """
832
+ pulumi.set(__self__, "software_installation_type", 'External')
833
+ if central_server_vm_id is not None:
834
+ pulumi.set(__self__, "central_server_vm_id", central_server_vm_id)
835
+
836
+ @property
837
+ @pulumi.getter(name="softwareInstallationType")
838
+ def software_installation_type(self) -> pulumi.Input[str]:
839
+ """
840
+ The SAP software installation Type.
841
+ Expected value is 'External'.
842
+ """
843
+ return pulumi.get(self, "software_installation_type")
844
+
845
+ @software_installation_type.setter
846
+ def software_installation_type(self, value: pulumi.Input[str]):
847
+ pulumi.set(self, "software_installation_type", value)
848
+
849
+ @property
850
+ @pulumi.getter(name="centralServerVmId")
851
+ def central_server_vm_id(self) -> Optional[pulumi.Input[str]]:
852
+ """
853
+ The resource ID of the virtual machine containing the central server instance.
854
+ """
855
+ return pulumi.get(self, "central_server_vm_id")
856
+
857
+ @central_server_vm_id.setter
858
+ def central_server_vm_id(self, value: Optional[pulumi.Input[str]]):
859
+ pulumi.set(self, "central_server_vm_id", value)
860
+
861
+
862
+ @pulumi.input_type
863
+ class HighAvailabilityConfigurationArgs:
864
+ def __init__(__self__, *,
865
+ high_availability_type: pulumi.Input[Union[str, 'SAPHighAvailabilityType']]):
866
+ """
867
+ Gets or sets the high availability configuration.
868
+ :param pulumi.Input[Union[str, 'SAPHighAvailabilityType']] high_availability_type: The high availability type.
869
+ """
870
+ pulumi.set(__self__, "high_availability_type", high_availability_type)
871
+
872
+ @property
873
+ @pulumi.getter(name="highAvailabilityType")
874
+ def high_availability_type(self) -> pulumi.Input[Union[str, 'SAPHighAvailabilityType']]:
875
+ """
876
+ The high availability type.
877
+ """
878
+ return pulumi.get(self, "high_availability_type")
879
+
880
+ @high_availability_type.setter
881
+ def high_availability_type(self, value: pulumi.Input[Union[str, 'SAPHighAvailabilityType']]):
882
+ pulumi.set(self, "high_availability_type", value)
883
+
884
+
885
+ @pulumi.input_type
886
+ class HighAvailabilitySoftwareConfigurationArgs:
887
+ def __init__(__self__, *,
888
+ fencing_client_id: pulumi.Input[str],
889
+ fencing_client_password: pulumi.Input[str]):
890
+ """
891
+ Gets or sets the HA software configuration.
892
+ :param pulumi.Input[str] fencing_client_id: The fencing client id.
893
+ :param pulumi.Input[str] fencing_client_password: The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
894
+ """
895
+ pulumi.set(__self__, "fencing_client_id", fencing_client_id)
896
+ pulumi.set(__self__, "fencing_client_password", fencing_client_password)
897
+
898
+ @property
899
+ @pulumi.getter(name="fencingClientId")
900
+ def fencing_client_id(self) -> pulumi.Input[str]:
901
+ """
902
+ The fencing client id.
903
+ """
904
+ return pulumi.get(self, "fencing_client_id")
905
+
906
+ @fencing_client_id.setter
907
+ def fencing_client_id(self, value: pulumi.Input[str]):
908
+ pulumi.set(self, "fencing_client_id", value)
909
+
910
+ @property
911
+ @pulumi.getter(name="fencingClientPassword")
912
+ def fencing_client_password(self) -> pulumi.Input[str]:
913
+ """
914
+ The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
915
+ """
916
+ return pulumi.get(self, "fencing_client_password")
917
+
918
+ @fencing_client_password.setter
919
+ def fencing_client_password(self, value: pulumi.Input[str]):
920
+ pulumi.set(self, "fencing_client_password", value)
921
+
922
+
923
+ @pulumi.input_type
924
+ class ImageReferenceArgs:
925
+ def __init__(__self__, *,
926
+ id: Optional[pulumi.Input[str]] = None,
927
+ offer: Optional[pulumi.Input[str]] = None,
928
+ publisher: Optional[pulumi.Input[str]] = None,
929
+ sku: Optional[pulumi.Input[str]] = None,
930
+ version: Optional[pulumi.Input[str]] = None):
931
+ """
932
+ Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set.
933
+ :param pulumi.Input[str] id: Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
934
+ :param pulumi.Input[str] offer: Specifies the offer of the platform image or marketplace image used to create the virtual machine.
935
+ :param pulumi.Input[str] publisher: The image publisher.
936
+ :param pulumi.Input[str] sku: The image SKU.
937
+ :param pulumi.Input[str] version: Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.
938
+ """
939
+ if id is not None:
940
+ pulumi.set(__self__, "id", id)
941
+ if offer is not None:
942
+ pulumi.set(__self__, "offer", offer)
943
+ if publisher is not None:
944
+ pulumi.set(__self__, "publisher", publisher)
945
+ if sku is not None:
946
+ pulumi.set(__self__, "sku", sku)
947
+ if version is not None:
948
+ pulumi.set(__self__, "version", version)
949
+
950
+ @property
951
+ @pulumi.getter
952
+ def id(self) -> Optional[pulumi.Input[str]]:
953
+ """
954
+ Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
955
+ """
956
+ return pulumi.get(self, "id")
957
+
958
+ @id.setter
959
+ def id(self, value: Optional[pulumi.Input[str]]):
960
+ pulumi.set(self, "id", value)
961
+
962
+ @property
963
+ @pulumi.getter
964
+ def offer(self) -> Optional[pulumi.Input[str]]:
965
+ """
966
+ Specifies the offer of the platform image or marketplace image used to create the virtual machine.
967
+ """
968
+ return pulumi.get(self, "offer")
969
+
970
+ @offer.setter
971
+ def offer(self, value: Optional[pulumi.Input[str]]):
972
+ pulumi.set(self, "offer", value)
973
+
974
+ @property
975
+ @pulumi.getter
976
+ def publisher(self) -> Optional[pulumi.Input[str]]:
977
+ """
978
+ The image publisher.
979
+ """
980
+ return pulumi.get(self, "publisher")
981
+
982
+ @publisher.setter
983
+ def publisher(self, value: Optional[pulumi.Input[str]]):
984
+ pulumi.set(self, "publisher", value)
985
+
986
+ @property
987
+ @pulumi.getter
988
+ def sku(self) -> Optional[pulumi.Input[str]]:
989
+ """
990
+ The image SKU.
991
+ """
992
+ return pulumi.get(self, "sku")
993
+
994
+ @sku.setter
995
+ def sku(self, value: Optional[pulumi.Input[str]]):
996
+ pulumi.set(self, "sku", value)
997
+
998
+ @property
999
+ @pulumi.getter
1000
+ def version(self) -> Optional[pulumi.Input[str]]:
1001
+ """
1002
+ Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.
1003
+ """
1004
+ return pulumi.get(self, "version")
1005
+
1006
+ @version.setter
1007
+ def version(self, value: Optional[pulumi.Input[str]]):
1008
+ pulumi.set(self, "version", value)
1009
+
1010
+
1011
+ @pulumi.input_type
1012
+ class LinuxConfigurationArgs:
1013
+ def __init__(__self__, *,
1014
+ os_type: pulumi.Input[str],
1015
+ disable_password_authentication: Optional[pulumi.Input[bool]] = None,
1016
+ ssh: Optional[pulumi.Input['SshConfigurationArgs']] = None,
1017
+ ssh_key_pair: Optional[pulumi.Input['SshKeyPairArgs']] = None):
1018
+ """
1019
+ Specifies the Linux operating system settings on the virtual machine. <br><br>For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros).
1020
+ :param pulumi.Input[str] os_type: The OS Type
1021
+ Expected value is 'Linux'.
1022
+ :param pulumi.Input[bool] disable_password_authentication: Specifies whether password authentication should be disabled.
1023
+ :param pulumi.Input['SshConfigurationArgs'] ssh: Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
1024
+ :param pulumi.Input['SshKeyPairArgs'] ssh_key_pair: The SSH Key-pair used to authenticate with the VM's.
1025
+ """
1026
+ pulumi.set(__self__, "os_type", 'Linux')
1027
+ if disable_password_authentication is not None:
1028
+ pulumi.set(__self__, "disable_password_authentication", disable_password_authentication)
1029
+ if ssh is not None:
1030
+ pulumi.set(__self__, "ssh", ssh)
1031
+ if ssh_key_pair is not None:
1032
+ pulumi.set(__self__, "ssh_key_pair", ssh_key_pair)
1033
+
1034
+ @property
1035
+ @pulumi.getter(name="osType")
1036
+ def os_type(self) -> pulumi.Input[str]:
1037
+ """
1038
+ The OS Type
1039
+ Expected value is 'Linux'.
1040
+ """
1041
+ return pulumi.get(self, "os_type")
1042
+
1043
+ @os_type.setter
1044
+ def os_type(self, value: pulumi.Input[str]):
1045
+ pulumi.set(self, "os_type", value)
1046
+
1047
+ @property
1048
+ @pulumi.getter(name="disablePasswordAuthentication")
1049
+ def disable_password_authentication(self) -> Optional[pulumi.Input[bool]]:
1050
+ """
1051
+ Specifies whether password authentication should be disabled.
1052
+ """
1053
+ return pulumi.get(self, "disable_password_authentication")
1054
+
1055
+ @disable_password_authentication.setter
1056
+ def disable_password_authentication(self, value: Optional[pulumi.Input[bool]]):
1057
+ pulumi.set(self, "disable_password_authentication", value)
1058
+
1059
+ @property
1060
+ @pulumi.getter
1061
+ def ssh(self) -> Optional[pulumi.Input['SshConfigurationArgs']]:
1062
+ """
1063
+ Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
1064
+ """
1065
+ return pulumi.get(self, "ssh")
1066
+
1067
+ @ssh.setter
1068
+ def ssh(self, value: Optional[pulumi.Input['SshConfigurationArgs']]):
1069
+ pulumi.set(self, "ssh", value)
1070
+
1071
+ @property
1072
+ @pulumi.getter(name="sshKeyPair")
1073
+ def ssh_key_pair(self) -> Optional[pulumi.Input['SshKeyPairArgs']]:
1074
+ """
1075
+ The SSH Key-pair used to authenticate with the VM's.
1076
+ """
1077
+ return pulumi.get(self, "ssh_key_pair")
1078
+
1079
+ @ssh_key_pair.setter
1080
+ def ssh_key_pair(self, value: Optional[pulumi.Input['SshKeyPairArgs']]):
1081
+ pulumi.set(self, "ssh_key_pair", value)
1082
+
1083
+
1084
+ @pulumi.input_type
1085
+ class LoadBalancerResourceNamesArgs:
1086
+ def __init__(__self__, *,
1087
+ backend_pool_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1088
+ frontend_ip_configuration_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1089
+ health_probe_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1090
+ load_balancer_name: Optional[pulumi.Input[str]] = None):
1091
+ """
1092
+ The resource names object for load balancer and related resources.
1093
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] backend_pool_names: The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
1094
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] frontend_ip_configuration_names: The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
1095
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] health_probe_names: The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
1096
+ :param pulumi.Input[str] load_balancer_name: The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.
1097
+ """
1098
+ if backend_pool_names is not None:
1099
+ pulumi.set(__self__, "backend_pool_names", backend_pool_names)
1100
+ if frontend_ip_configuration_names is not None:
1101
+ pulumi.set(__self__, "frontend_ip_configuration_names", frontend_ip_configuration_names)
1102
+ if health_probe_names is not None:
1103
+ pulumi.set(__self__, "health_probe_names", health_probe_names)
1104
+ if load_balancer_name is not None:
1105
+ pulumi.set(__self__, "load_balancer_name", load_balancer_name)
1106
+
1107
+ @property
1108
+ @pulumi.getter(name="backendPoolNames")
1109
+ def backend_pool_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1110
+ """
1111
+ The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
1112
+ """
1113
+ return pulumi.get(self, "backend_pool_names")
1114
+
1115
+ @backend_pool_names.setter
1116
+ def backend_pool_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1117
+ pulumi.set(self, "backend_pool_names", value)
1118
+
1119
+ @property
1120
+ @pulumi.getter(name="frontendIpConfigurationNames")
1121
+ def frontend_ip_configuration_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1122
+ """
1123
+ The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
1124
+ """
1125
+ return pulumi.get(self, "frontend_ip_configuration_names")
1126
+
1127
+ @frontend_ip_configuration_names.setter
1128
+ def frontend_ip_configuration_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1129
+ pulumi.set(self, "frontend_ip_configuration_names", value)
1130
+
1131
+ @property
1132
+ @pulumi.getter(name="healthProbeNames")
1133
+ def health_probe_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1134
+ """
1135
+ The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
1136
+ """
1137
+ return pulumi.get(self, "health_probe_names")
1138
+
1139
+ @health_probe_names.setter
1140
+ def health_probe_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1141
+ pulumi.set(self, "health_probe_names", value)
1142
+
1143
+ @property
1144
+ @pulumi.getter(name="loadBalancerName")
1145
+ def load_balancer_name(self) -> Optional[pulumi.Input[str]]:
1146
+ """
1147
+ The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.
1148
+ """
1149
+ return pulumi.get(self, "load_balancer_name")
1150
+
1151
+ @load_balancer_name.setter
1152
+ def load_balancer_name(self, value: Optional[pulumi.Input[str]]):
1153
+ pulumi.set(self, "load_balancer_name", value)
1154
+
1155
+
1156
+ @pulumi.input_type
1157
+ class ManagedRGConfigurationArgs:
1158
+ def __init__(__self__, *,
1159
+ name: Optional[pulumi.Input[str]] = None):
1160
+ """
1161
+ Managed resource group configuration
1162
+ :param pulumi.Input[str] name: Managed resource group name
1163
+ """
1164
+ if name is not None:
1165
+ pulumi.set(__self__, "name", name)
1166
+
1167
+ @property
1168
+ @pulumi.getter
1169
+ def name(self) -> Optional[pulumi.Input[str]]:
1170
+ """
1171
+ Managed resource group name
1172
+ """
1173
+ return pulumi.get(self, "name")
1174
+
1175
+ @name.setter
1176
+ def name(self, value: Optional[pulumi.Input[str]]):
1177
+ pulumi.set(self, "name", value)
1178
+
1179
+
1180
+ @pulumi.input_type
1181
+ class MountFileShareConfigurationArgs:
1182
+ def __init__(__self__, *,
1183
+ configuration_type: pulumi.Input[str],
1184
+ id: pulumi.Input[str],
1185
+ private_endpoint_id: pulumi.Input[str]):
1186
+ """
1187
+ Gets or sets the file share configuration where the transport directory fileshare already exists, and user wishes to mount the fileshare as a part of the create infra flow.
1188
+ :param pulumi.Input[str] configuration_type: The type of file share config.
1189
+ Expected value is 'Mount'.
1190
+ :param pulumi.Input[str] id: The fileshare resource ID
1191
+ :param pulumi.Input[str] private_endpoint_id: The private endpoint resource ID
1192
+ """
1193
+ pulumi.set(__self__, "configuration_type", 'Mount')
1194
+ pulumi.set(__self__, "id", id)
1195
+ pulumi.set(__self__, "private_endpoint_id", private_endpoint_id)
1196
+
1197
+ @property
1198
+ @pulumi.getter(name="configurationType")
1199
+ def configuration_type(self) -> pulumi.Input[str]:
1200
+ """
1201
+ The type of file share config.
1202
+ Expected value is 'Mount'.
1203
+ """
1204
+ return pulumi.get(self, "configuration_type")
1205
+
1206
+ @configuration_type.setter
1207
+ def configuration_type(self, value: pulumi.Input[str]):
1208
+ pulumi.set(self, "configuration_type", value)
1209
+
1210
+ @property
1211
+ @pulumi.getter
1212
+ def id(self) -> pulumi.Input[str]:
1213
+ """
1214
+ The fileshare resource ID
1215
+ """
1216
+ return pulumi.get(self, "id")
1217
+
1218
+ @id.setter
1219
+ def id(self, value: pulumi.Input[str]):
1220
+ pulumi.set(self, "id", value)
1221
+
1222
+ @property
1223
+ @pulumi.getter(name="privateEndpointId")
1224
+ def private_endpoint_id(self) -> pulumi.Input[str]:
1225
+ """
1226
+ The private endpoint resource ID
1227
+ """
1228
+ return pulumi.get(self, "private_endpoint_id")
1229
+
1230
+ @private_endpoint_id.setter
1231
+ def private_endpoint_id(self, value: pulumi.Input[str]):
1232
+ pulumi.set(self, "private_endpoint_id", value)
1233
+
1234
+
1235
+ @pulumi.input_type
1236
+ class NetworkConfigurationArgs:
1237
+ def __init__(__self__, *,
1238
+ is_secondary_ip_enabled: Optional[pulumi.Input[bool]] = None):
1239
+ """
1240
+ Defines the network configuration type for SAP system infrastructure that is being deployed
1241
+ :param pulumi.Input[bool] is_secondary_ip_enabled: Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed
1242
+ """
1243
+ if is_secondary_ip_enabled is None:
1244
+ is_secondary_ip_enabled = False
1245
+ if is_secondary_ip_enabled is not None:
1246
+ pulumi.set(__self__, "is_secondary_ip_enabled", is_secondary_ip_enabled)
1247
+
1248
+ @property
1249
+ @pulumi.getter(name="isSecondaryIpEnabled")
1250
+ def is_secondary_ip_enabled(self) -> Optional[pulumi.Input[bool]]:
1251
+ """
1252
+ Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed
1253
+ """
1254
+ return pulumi.get(self, "is_secondary_ip_enabled")
1255
+
1256
+ @is_secondary_ip_enabled.setter
1257
+ def is_secondary_ip_enabled(self, value: Optional[pulumi.Input[bool]]):
1258
+ pulumi.set(self, "is_secondary_ip_enabled", value)
1259
+
1260
+
1261
+ @pulumi.input_type
1262
+ class NetworkInterfaceResourceNamesArgs:
1263
+ def __init__(__self__, *,
1264
+ network_interface_name: Optional[pulumi.Input[str]] = None):
1265
+ """
1266
+ The resource names object for network interface and related resources.
1267
+ :param pulumi.Input[str] network_interface_name: The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.
1268
+ """
1269
+ if network_interface_name is not None:
1270
+ pulumi.set(__self__, "network_interface_name", network_interface_name)
1271
+
1272
+ @property
1273
+ @pulumi.getter(name="networkInterfaceName")
1274
+ def network_interface_name(self) -> Optional[pulumi.Input[str]]:
1275
+ """
1276
+ The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.
1277
+ """
1278
+ return pulumi.get(self, "network_interface_name")
1279
+
1280
+ @network_interface_name.setter
1281
+ def network_interface_name(self, value: Optional[pulumi.Input[str]]):
1282
+ pulumi.set(self, "network_interface_name", value)
1283
+
1284
+
1285
+ @pulumi.input_type
1286
+ class OSProfileArgs:
1287
+ def __init__(__self__, *,
1288
+ admin_password: Optional[pulumi.Input[str]] = None,
1289
+ admin_username: Optional[pulumi.Input[str]] = None,
1290
+ os_configuration: Optional[pulumi.Input[Union['LinuxConfigurationArgs', 'WindowsConfigurationArgs']]] = None):
1291
+ """
1292
+ Specifies the operating system settings for the virtual machine. Some of the settings cannot be changed once VM is provisioned.
1293
+ :param pulumi.Input[str] admin_password: Specifies the password of the administrator account. <br><br> **Minimum-length (Windows):** 8 characters <br><br> **Minimum-length (Linux):** 6 characters <br><br> **Max-length (Windows):** 123 characters <br><br> **Max-length (Linux):** 72 characters <br><br> **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled <br> Has lower characters <br>Has upper characters <br> Has a digit <br> Has a special character (Regex match [\\W_]) <br><br> **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" <br><br> For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp) <br><br> For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)
1294
+ :param pulumi.Input[str] admin_username: Specifies the name of the administrator account. <br><br> This property cannot be updated after the VM is created. <br><br> **Windows-only restriction:** Cannot end in "." <br><br> **Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". <br><br> **Minimum-length (Linux):** 1 character <br><br> **Max-length (Linux):** 64 characters <br><br> **Max-length (Windows):** 20 characters.
1295
+ :param pulumi.Input[Union['LinuxConfigurationArgs', 'WindowsConfigurationArgs']] os_configuration: Specifies Windows operating system settings on the virtual machine.
1296
+ """
1297
+ if admin_password is not None:
1298
+ pulumi.set(__self__, "admin_password", admin_password)
1299
+ if admin_username is not None:
1300
+ pulumi.set(__self__, "admin_username", admin_username)
1301
+ if os_configuration is not None:
1302
+ pulumi.set(__self__, "os_configuration", os_configuration)
1303
+
1304
+ @property
1305
+ @pulumi.getter(name="adminPassword")
1306
+ def admin_password(self) -> Optional[pulumi.Input[str]]:
1307
+ """
1308
+ Specifies the password of the administrator account. <br><br> **Minimum-length (Windows):** 8 characters <br><br> **Minimum-length (Linux):** 6 characters <br><br> **Max-length (Windows):** 123 characters <br><br> **Max-length (Linux):** 72 characters <br><br> **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled <br> Has lower characters <br>Has upper characters <br> Has a digit <br> Has a special character (Regex match [\\W_]) <br><br> **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" <br><br> For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp) <br><br> For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)
1309
+ """
1310
+ return pulumi.get(self, "admin_password")
1311
+
1312
+ @admin_password.setter
1313
+ def admin_password(self, value: Optional[pulumi.Input[str]]):
1314
+ pulumi.set(self, "admin_password", value)
1315
+
1316
+ @property
1317
+ @pulumi.getter(name="adminUsername")
1318
+ def admin_username(self) -> Optional[pulumi.Input[str]]:
1319
+ """
1320
+ Specifies the name of the administrator account. <br><br> This property cannot be updated after the VM is created. <br><br> **Windows-only restriction:** Cannot end in "." <br><br> **Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". <br><br> **Minimum-length (Linux):** 1 character <br><br> **Max-length (Linux):** 64 characters <br><br> **Max-length (Windows):** 20 characters.
1321
+ """
1322
+ return pulumi.get(self, "admin_username")
1323
+
1324
+ @admin_username.setter
1325
+ def admin_username(self, value: Optional[pulumi.Input[str]]):
1326
+ pulumi.set(self, "admin_username", value)
1327
+
1328
+ @property
1329
+ @pulumi.getter(name="osConfiguration")
1330
+ def os_configuration(self) -> Optional[pulumi.Input[Union['LinuxConfigurationArgs', 'WindowsConfigurationArgs']]]:
1331
+ """
1332
+ Specifies Windows operating system settings on the virtual machine.
1333
+ """
1334
+ return pulumi.get(self, "os_configuration")
1335
+
1336
+ @os_configuration.setter
1337
+ def os_configuration(self, value: Optional[pulumi.Input[Union['LinuxConfigurationArgs', 'WindowsConfigurationArgs']]]):
1338
+ pulumi.set(self, "os_configuration", value)
1339
+
1340
+
1341
+ @pulumi.input_type
1342
+ class OsSapConfigurationArgs:
1343
+ def __init__(__self__, *,
1344
+ deployer_vm_packages: Optional[pulumi.Input['DeployerVmPackagesArgs']] = None,
1345
+ sap_fqdn: Optional[pulumi.Input[str]] = None):
1346
+ """
1347
+ Defines the OS and SAP Configurations for Deployment
1348
+ :param pulumi.Input['DeployerVmPackagesArgs'] deployer_vm_packages: The url and storage account ID where deployer VM packages are uploaded
1349
+ :param pulumi.Input[str] sap_fqdn: The FQDN to set for the SAP system
1350
+ """
1351
+ if deployer_vm_packages is not None:
1352
+ pulumi.set(__self__, "deployer_vm_packages", deployer_vm_packages)
1353
+ if sap_fqdn is not None:
1354
+ pulumi.set(__self__, "sap_fqdn", sap_fqdn)
1355
+
1356
+ @property
1357
+ @pulumi.getter(name="deployerVmPackages")
1358
+ def deployer_vm_packages(self) -> Optional[pulumi.Input['DeployerVmPackagesArgs']]:
1359
+ """
1360
+ The url and storage account ID where deployer VM packages are uploaded
1361
+ """
1362
+ return pulumi.get(self, "deployer_vm_packages")
1363
+
1364
+ @deployer_vm_packages.setter
1365
+ def deployer_vm_packages(self, value: Optional[pulumi.Input['DeployerVmPackagesArgs']]):
1366
+ pulumi.set(self, "deployer_vm_packages", value)
1367
+
1368
+ @property
1369
+ @pulumi.getter(name="sapFqdn")
1370
+ def sap_fqdn(self) -> Optional[pulumi.Input[str]]:
1371
+ """
1372
+ The FQDN to set for the SAP system
1373
+ """
1374
+ return pulumi.get(self, "sap_fqdn")
1375
+
1376
+ @sap_fqdn.setter
1377
+ def sap_fqdn(self, value: Optional[pulumi.Input[str]]):
1378
+ pulumi.set(self, "sap_fqdn", value)
1379
+
1380
+
1381
+ @pulumi.input_type
1382
+ class SAPInstallWithoutOSConfigSoftwareConfigurationArgs:
1383
+ def __init__(__self__, *,
1384
+ bom_url: pulumi.Input[str],
1385
+ sap_bits_storage_account_id: pulumi.Input[str],
1386
+ software_installation_type: pulumi.Input[str],
1387
+ software_version: pulumi.Input[str],
1388
+ high_availability_software_configuration: Optional[pulumi.Input['HighAvailabilitySoftwareConfigurationArgs']] = None):
1389
+ """
1390
+ The SAP Software configuration Input when the software is to be installed by service without OS Configurations
1391
+ :param pulumi.Input[str] bom_url: The URL to the SAP Build of Materials(BOM) file.
1392
+ :param pulumi.Input[str] sap_bits_storage_account_id: The SAP bits storage account id.
1393
+ :param pulumi.Input[str] software_installation_type: The SAP software installation Type.
1394
+ Expected value is 'SAPInstallWithoutOSConfig'.
1395
+ :param pulumi.Input[str] software_version: The software version to install.
1396
+ :param pulumi.Input['HighAvailabilitySoftwareConfigurationArgs'] high_availability_software_configuration: Gets or sets the HA software configuration.
1397
+ """
1398
+ pulumi.set(__self__, "bom_url", bom_url)
1399
+ pulumi.set(__self__, "sap_bits_storage_account_id", sap_bits_storage_account_id)
1400
+ pulumi.set(__self__, "software_installation_type", 'SAPInstallWithoutOSConfig')
1401
+ pulumi.set(__self__, "software_version", software_version)
1402
+ if high_availability_software_configuration is not None:
1403
+ pulumi.set(__self__, "high_availability_software_configuration", high_availability_software_configuration)
1404
+
1405
+ @property
1406
+ @pulumi.getter(name="bomUrl")
1407
+ def bom_url(self) -> pulumi.Input[str]:
1408
+ """
1409
+ The URL to the SAP Build of Materials(BOM) file.
1410
+ """
1411
+ return pulumi.get(self, "bom_url")
1412
+
1413
+ @bom_url.setter
1414
+ def bom_url(self, value: pulumi.Input[str]):
1415
+ pulumi.set(self, "bom_url", value)
1416
+
1417
+ @property
1418
+ @pulumi.getter(name="sapBitsStorageAccountId")
1419
+ def sap_bits_storage_account_id(self) -> pulumi.Input[str]:
1420
+ """
1421
+ The SAP bits storage account id.
1422
+ """
1423
+ return pulumi.get(self, "sap_bits_storage_account_id")
1424
+
1425
+ @sap_bits_storage_account_id.setter
1426
+ def sap_bits_storage_account_id(self, value: pulumi.Input[str]):
1427
+ pulumi.set(self, "sap_bits_storage_account_id", value)
1428
+
1429
+ @property
1430
+ @pulumi.getter(name="softwareInstallationType")
1431
+ def software_installation_type(self) -> pulumi.Input[str]:
1432
+ """
1433
+ The SAP software installation Type.
1434
+ Expected value is 'SAPInstallWithoutOSConfig'.
1435
+ """
1436
+ return pulumi.get(self, "software_installation_type")
1437
+
1438
+ @software_installation_type.setter
1439
+ def software_installation_type(self, value: pulumi.Input[str]):
1440
+ pulumi.set(self, "software_installation_type", value)
1441
+
1442
+ @property
1443
+ @pulumi.getter(name="softwareVersion")
1444
+ def software_version(self) -> pulumi.Input[str]:
1445
+ """
1446
+ The software version to install.
1447
+ """
1448
+ return pulumi.get(self, "software_version")
1449
+
1450
+ @software_version.setter
1451
+ def software_version(self, value: pulumi.Input[str]):
1452
+ pulumi.set(self, "software_version", value)
1453
+
1454
+ @property
1455
+ @pulumi.getter(name="highAvailabilitySoftwareConfiguration")
1456
+ def high_availability_software_configuration(self) -> Optional[pulumi.Input['HighAvailabilitySoftwareConfigurationArgs']]:
1457
+ """
1458
+ Gets or sets the HA software configuration.
1459
+ """
1460
+ return pulumi.get(self, "high_availability_software_configuration")
1461
+
1462
+ @high_availability_software_configuration.setter
1463
+ def high_availability_software_configuration(self, value: Optional[pulumi.Input['HighAvailabilitySoftwareConfigurationArgs']]):
1464
+ pulumi.set(self, "high_availability_software_configuration", value)
1465
+
1466
+
1467
+ @pulumi.input_type
1468
+ class ServiceInitiatedSoftwareConfigurationArgs:
1469
+ def __init__(__self__, *,
1470
+ bom_url: pulumi.Input[str],
1471
+ sap_bits_storage_account_id: pulumi.Input[str],
1472
+ sap_fqdn: pulumi.Input[str],
1473
+ software_installation_type: pulumi.Input[str],
1474
+ software_version: pulumi.Input[str],
1475
+ ssh_private_key: pulumi.Input[str],
1476
+ high_availability_software_configuration: Optional[pulumi.Input['HighAvailabilitySoftwareConfigurationArgs']] = None):
1477
+ """
1478
+ The SAP Software configuration Input when the software is to be installed by service.
1479
+ :param pulumi.Input[str] bom_url: The URL to the SAP Build of Materials(BOM) file.
1480
+ :param pulumi.Input[str] sap_bits_storage_account_id: The SAP bits storage account id.
1481
+ :param pulumi.Input[str] sap_fqdn: The FQDN to set for the SAP system during install.
1482
+ :param pulumi.Input[str] software_installation_type: The SAP software installation Type.
1483
+ Expected value is 'ServiceInitiated'.
1484
+ :param pulumi.Input[str] software_version: The software version to install.
1485
+ :param pulumi.Input[str] ssh_private_key: The SSH private key.
1486
+ :param pulumi.Input['HighAvailabilitySoftwareConfigurationArgs'] high_availability_software_configuration: Gets or sets the HA software configuration.
1487
+ """
1488
+ pulumi.set(__self__, "bom_url", bom_url)
1489
+ pulumi.set(__self__, "sap_bits_storage_account_id", sap_bits_storage_account_id)
1490
+ pulumi.set(__self__, "sap_fqdn", sap_fqdn)
1491
+ pulumi.set(__self__, "software_installation_type", 'ServiceInitiated')
1492
+ pulumi.set(__self__, "software_version", software_version)
1493
+ pulumi.set(__self__, "ssh_private_key", ssh_private_key)
1494
+ if high_availability_software_configuration is not None:
1495
+ pulumi.set(__self__, "high_availability_software_configuration", high_availability_software_configuration)
1496
+
1497
+ @property
1498
+ @pulumi.getter(name="bomUrl")
1499
+ def bom_url(self) -> pulumi.Input[str]:
1500
+ """
1501
+ The URL to the SAP Build of Materials(BOM) file.
1502
+ """
1503
+ return pulumi.get(self, "bom_url")
1504
+
1505
+ @bom_url.setter
1506
+ def bom_url(self, value: pulumi.Input[str]):
1507
+ pulumi.set(self, "bom_url", value)
1508
+
1509
+ @property
1510
+ @pulumi.getter(name="sapBitsStorageAccountId")
1511
+ def sap_bits_storage_account_id(self) -> pulumi.Input[str]:
1512
+ """
1513
+ The SAP bits storage account id.
1514
+ """
1515
+ return pulumi.get(self, "sap_bits_storage_account_id")
1516
+
1517
+ @sap_bits_storage_account_id.setter
1518
+ def sap_bits_storage_account_id(self, value: pulumi.Input[str]):
1519
+ pulumi.set(self, "sap_bits_storage_account_id", value)
1520
+
1521
+ @property
1522
+ @pulumi.getter(name="sapFqdn")
1523
+ def sap_fqdn(self) -> pulumi.Input[str]:
1524
+ """
1525
+ The FQDN to set for the SAP system during install.
1526
+ """
1527
+ return pulumi.get(self, "sap_fqdn")
1528
+
1529
+ @sap_fqdn.setter
1530
+ def sap_fqdn(self, value: pulumi.Input[str]):
1531
+ pulumi.set(self, "sap_fqdn", value)
1532
+
1533
+ @property
1534
+ @pulumi.getter(name="softwareInstallationType")
1535
+ def software_installation_type(self) -> pulumi.Input[str]:
1536
+ """
1537
+ The SAP software installation Type.
1538
+ Expected value is 'ServiceInitiated'.
1539
+ """
1540
+ return pulumi.get(self, "software_installation_type")
1541
+
1542
+ @software_installation_type.setter
1543
+ def software_installation_type(self, value: pulumi.Input[str]):
1544
+ pulumi.set(self, "software_installation_type", value)
1545
+
1546
+ @property
1547
+ @pulumi.getter(name="softwareVersion")
1548
+ def software_version(self) -> pulumi.Input[str]:
1549
+ """
1550
+ The software version to install.
1551
+ """
1552
+ return pulumi.get(self, "software_version")
1553
+
1554
+ @software_version.setter
1555
+ def software_version(self, value: pulumi.Input[str]):
1556
+ pulumi.set(self, "software_version", value)
1557
+
1558
+ @property
1559
+ @pulumi.getter(name="sshPrivateKey")
1560
+ def ssh_private_key(self) -> pulumi.Input[str]:
1561
+ """
1562
+ The SSH private key.
1563
+ """
1564
+ return pulumi.get(self, "ssh_private_key")
1565
+
1566
+ @ssh_private_key.setter
1567
+ def ssh_private_key(self, value: pulumi.Input[str]):
1568
+ pulumi.set(self, "ssh_private_key", value)
1569
+
1570
+ @property
1571
+ @pulumi.getter(name="highAvailabilitySoftwareConfiguration")
1572
+ def high_availability_software_configuration(self) -> Optional[pulumi.Input['HighAvailabilitySoftwareConfigurationArgs']]:
1573
+ """
1574
+ Gets or sets the HA software configuration.
1575
+ """
1576
+ return pulumi.get(self, "high_availability_software_configuration")
1577
+
1578
+ @high_availability_software_configuration.setter
1579
+ def high_availability_software_configuration(self, value: Optional[pulumi.Input['HighAvailabilitySoftwareConfigurationArgs']]):
1580
+ pulumi.set(self, "high_availability_software_configuration", value)
1581
+
1582
+
1583
+ @pulumi.input_type
1584
+ class SharedStorageResourceNamesArgs:
1585
+ def __init__(__self__, *,
1586
+ shared_storage_account_name: Optional[pulumi.Input[str]] = None,
1587
+ shared_storage_account_private_end_point_name: Optional[pulumi.Input[str]] = None):
1588
+ """
1589
+ The resource names object for shared storage.
1590
+ :param pulumi.Input[str] shared_storage_account_name: The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
1591
+ :param pulumi.Input[str] shared_storage_account_private_end_point_name: The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe
1592
+ """
1593
+ if shared_storage_account_name is not None:
1594
+ pulumi.set(__self__, "shared_storage_account_name", shared_storage_account_name)
1595
+ if shared_storage_account_private_end_point_name is not None:
1596
+ pulumi.set(__self__, "shared_storage_account_private_end_point_name", shared_storage_account_private_end_point_name)
1597
+
1598
+ @property
1599
+ @pulumi.getter(name="sharedStorageAccountName")
1600
+ def shared_storage_account_name(self) -> Optional[pulumi.Input[str]]:
1601
+ """
1602
+ The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
1603
+ """
1604
+ return pulumi.get(self, "shared_storage_account_name")
1605
+
1606
+ @shared_storage_account_name.setter
1607
+ def shared_storage_account_name(self, value: Optional[pulumi.Input[str]]):
1608
+ pulumi.set(self, "shared_storage_account_name", value)
1609
+
1610
+ @property
1611
+ @pulumi.getter(name="sharedStorageAccountPrivateEndPointName")
1612
+ def shared_storage_account_private_end_point_name(self) -> Optional[pulumi.Input[str]]:
1613
+ """
1614
+ The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe
1615
+ """
1616
+ return pulumi.get(self, "shared_storage_account_private_end_point_name")
1617
+
1618
+ @shared_storage_account_private_end_point_name.setter
1619
+ def shared_storage_account_private_end_point_name(self, value: Optional[pulumi.Input[str]]):
1620
+ pulumi.set(self, "shared_storage_account_private_end_point_name", value)
1621
+
1622
+
1623
+ @pulumi.input_type
1624
+ class SingleServerConfigurationArgs:
1625
+ def __init__(__self__, *,
1626
+ app_resource_group: pulumi.Input[str],
1627
+ deployment_type: pulumi.Input[str],
1628
+ subnet_id: pulumi.Input[str],
1629
+ virtual_machine_configuration: pulumi.Input['VirtualMachineConfigurationArgs'],
1630
+ custom_resource_names: Optional[pulumi.Input['SingleServerFullResourceNamesArgs']] = None,
1631
+ database_type: Optional[pulumi.Input[Union[str, 'SAPDatabaseType']]] = None,
1632
+ db_disk_configuration: Optional[pulumi.Input['DiskConfigurationArgs']] = None,
1633
+ network_configuration: Optional[pulumi.Input['NetworkConfigurationArgs']] = None):
1634
+ """
1635
+ Gets or sets the single server configuration. For prerequisites for creating the infrastructure, please see [here](https://go.microsoft.com/fwlink/?linkid=2212611&clcid=0x409)
1636
+ :param pulumi.Input[str] app_resource_group: The application resource group where SAP system resources will be deployed.
1637
+ :param pulumi.Input[str] deployment_type: The type of SAP deployment, single server or Three tier.
1638
+ Expected value is 'SingleServer'.
1639
+ :param pulumi.Input[str] subnet_id: The subnet id.
1640
+ :param pulumi.Input['VirtualMachineConfigurationArgs'] virtual_machine_configuration: Gets or sets the virtual machine configuration.
1641
+ :param pulumi.Input['SingleServerFullResourceNamesArgs'] custom_resource_names: The set of custom names to be used for underlying azure resources that are part of the SAP system.
1642
+ :param pulumi.Input[Union[str, 'SAPDatabaseType']] database_type: The database type.
1643
+ :param pulumi.Input['DiskConfigurationArgs'] db_disk_configuration: Gets or sets the disk configuration.
1644
+ :param pulumi.Input['NetworkConfigurationArgs'] network_configuration: Network configuration for the server
1645
+ """
1646
+ pulumi.set(__self__, "app_resource_group", app_resource_group)
1647
+ pulumi.set(__self__, "deployment_type", 'SingleServer')
1648
+ pulumi.set(__self__, "subnet_id", subnet_id)
1649
+ pulumi.set(__self__, "virtual_machine_configuration", virtual_machine_configuration)
1650
+ if custom_resource_names is not None:
1651
+ pulumi.set(__self__, "custom_resource_names", custom_resource_names)
1652
+ if database_type is not None:
1653
+ pulumi.set(__self__, "database_type", database_type)
1654
+ if db_disk_configuration is not None:
1655
+ pulumi.set(__self__, "db_disk_configuration", db_disk_configuration)
1656
+ if network_configuration is not None:
1657
+ pulumi.set(__self__, "network_configuration", network_configuration)
1658
+
1659
+ @property
1660
+ @pulumi.getter(name="appResourceGroup")
1661
+ def app_resource_group(self) -> pulumi.Input[str]:
1662
+ """
1663
+ The application resource group where SAP system resources will be deployed.
1664
+ """
1665
+ return pulumi.get(self, "app_resource_group")
1666
+
1667
+ @app_resource_group.setter
1668
+ def app_resource_group(self, value: pulumi.Input[str]):
1669
+ pulumi.set(self, "app_resource_group", value)
1670
+
1671
+ @property
1672
+ @pulumi.getter(name="deploymentType")
1673
+ def deployment_type(self) -> pulumi.Input[str]:
1674
+ """
1675
+ The type of SAP deployment, single server or Three tier.
1676
+ Expected value is 'SingleServer'.
1677
+ """
1678
+ return pulumi.get(self, "deployment_type")
1679
+
1680
+ @deployment_type.setter
1681
+ def deployment_type(self, value: pulumi.Input[str]):
1682
+ pulumi.set(self, "deployment_type", value)
1683
+
1684
+ @property
1685
+ @pulumi.getter(name="subnetId")
1686
+ def subnet_id(self) -> pulumi.Input[str]:
1687
+ """
1688
+ The subnet id.
1689
+ """
1690
+ return pulumi.get(self, "subnet_id")
1691
+
1692
+ @subnet_id.setter
1693
+ def subnet_id(self, value: pulumi.Input[str]):
1694
+ pulumi.set(self, "subnet_id", value)
1695
+
1696
+ @property
1697
+ @pulumi.getter(name="virtualMachineConfiguration")
1698
+ def virtual_machine_configuration(self) -> pulumi.Input['VirtualMachineConfigurationArgs']:
1699
+ """
1700
+ Gets or sets the virtual machine configuration.
1701
+ """
1702
+ return pulumi.get(self, "virtual_machine_configuration")
1703
+
1704
+ @virtual_machine_configuration.setter
1705
+ def virtual_machine_configuration(self, value: pulumi.Input['VirtualMachineConfigurationArgs']):
1706
+ pulumi.set(self, "virtual_machine_configuration", value)
1707
+
1708
+ @property
1709
+ @pulumi.getter(name="customResourceNames")
1710
+ def custom_resource_names(self) -> Optional[pulumi.Input['SingleServerFullResourceNamesArgs']]:
1711
+ """
1712
+ The set of custom names to be used for underlying azure resources that are part of the SAP system.
1713
+ """
1714
+ return pulumi.get(self, "custom_resource_names")
1715
+
1716
+ @custom_resource_names.setter
1717
+ def custom_resource_names(self, value: Optional[pulumi.Input['SingleServerFullResourceNamesArgs']]):
1718
+ pulumi.set(self, "custom_resource_names", value)
1719
+
1720
+ @property
1721
+ @pulumi.getter(name="databaseType")
1722
+ def database_type(self) -> Optional[pulumi.Input[Union[str, 'SAPDatabaseType']]]:
1723
+ """
1724
+ The database type.
1725
+ """
1726
+ return pulumi.get(self, "database_type")
1727
+
1728
+ @database_type.setter
1729
+ def database_type(self, value: Optional[pulumi.Input[Union[str, 'SAPDatabaseType']]]):
1730
+ pulumi.set(self, "database_type", value)
1731
+
1732
+ @property
1733
+ @pulumi.getter(name="dbDiskConfiguration")
1734
+ def db_disk_configuration(self) -> Optional[pulumi.Input['DiskConfigurationArgs']]:
1735
+ """
1736
+ Gets or sets the disk configuration.
1737
+ """
1738
+ return pulumi.get(self, "db_disk_configuration")
1739
+
1740
+ @db_disk_configuration.setter
1741
+ def db_disk_configuration(self, value: Optional[pulumi.Input['DiskConfigurationArgs']]):
1742
+ pulumi.set(self, "db_disk_configuration", value)
1743
+
1744
+ @property
1745
+ @pulumi.getter(name="networkConfiguration")
1746
+ def network_configuration(self) -> Optional[pulumi.Input['NetworkConfigurationArgs']]:
1747
+ """
1748
+ Network configuration for the server
1749
+ """
1750
+ return pulumi.get(self, "network_configuration")
1751
+
1752
+ @network_configuration.setter
1753
+ def network_configuration(self, value: Optional[pulumi.Input['NetworkConfigurationArgs']]):
1754
+ pulumi.set(self, "network_configuration", value)
1755
+
1756
+
1757
+ @pulumi.input_type
1758
+ class SingleServerFullResourceNamesArgs:
1759
+ def __init__(__self__, *,
1760
+ naming_pattern_type: pulumi.Input[str],
1761
+ virtual_machine: Optional[pulumi.Input['VirtualMachineResourceNamesArgs']] = None):
1762
+ """
1763
+ The resource name object where the specified values will be full resource names of the corresponding resources in a single server SAP system.
1764
+ :param pulumi.Input[str] naming_pattern_type: The pattern type to be used for resource naming.
1765
+ Expected value is 'FullResourceName'.
1766
+ :param pulumi.Input['VirtualMachineResourceNamesArgs'] virtual_machine: The resource names object for virtual machine and related resources.
1767
+ """
1768
+ pulumi.set(__self__, "naming_pattern_type", 'FullResourceName')
1769
+ if virtual_machine is not None:
1770
+ pulumi.set(__self__, "virtual_machine", virtual_machine)
1771
+
1772
+ @property
1773
+ @pulumi.getter(name="namingPatternType")
1774
+ def naming_pattern_type(self) -> pulumi.Input[str]:
1775
+ """
1776
+ The pattern type to be used for resource naming.
1777
+ Expected value is 'FullResourceName'.
1778
+ """
1779
+ return pulumi.get(self, "naming_pattern_type")
1780
+
1781
+ @naming_pattern_type.setter
1782
+ def naming_pattern_type(self, value: pulumi.Input[str]):
1783
+ pulumi.set(self, "naming_pattern_type", value)
1784
+
1785
+ @property
1786
+ @pulumi.getter(name="virtualMachine")
1787
+ def virtual_machine(self) -> Optional[pulumi.Input['VirtualMachineResourceNamesArgs']]:
1788
+ """
1789
+ The resource names object for virtual machine and related resources.
1790
+ """
1791
+ return pulumi.get(self, "virtual_machine")
1792
+
1793
+ @virtual_machine.setter
1794
+ def virtual_machine(self, value: Optional[pulumi.Input['VirtualMachineResourceNamesArgs']]):
1795
+ pulumi.set(self, "virtual_machine", value)
1796
+
1797
+
1798
+ @pulumi.input_type
1799
+ class SkipFileShareConfigurationArgs:
1800
+ def __init__(__self__, *,
1801
+ configuration_type: pulumi.Input[str]):
1802
+ """
1803
+ Gets or sets the file share configuration for scenarios where transport directory fileshare is not created or required.
1804
+ :param pulumi.Input[str] configuration_type: The type of file share config.
1805
+ Expected value is 'Skip'.
1806
+ """
1807
+ pulumi.set(__self__, "configuration_type", 'Skip')
1808
+
1809
+ @property
1810
+ @pulumi.getter(name="configurationType")
1811
+ def configuration_type(self) -> pulumi.Input[str]:
1812
+ """
1813
+ The type of file share config.
1814
+ Expected value is 'Skip'.
1815
+ """
1816
+ return pulumi.get(self, "configuration_type")
1817
+
1818
+ @configuration_type.setter
1819
+ def configuration_type(self, value: pulumi.Input[str]):
1820
+ pulumi.set(self, "configuration_type", value)
1821
+
1822
+
1823
+ @pulumi.input_type
1824
+ class SshConfigurationArgs:
1825
+ def __init__(__self__, *,
1826
+ public_keys: Optional[pulumi.Input[Sequence[pulumi.Input['SshPublicKeyArgs']]]] = None):
1827
+ """
1828
+ SSH configuration for Linux based VMs running on Azure
1829
+ :param pulumi.Input[Sequence[pulumi.Input['SshPublicKeyArgs']]] public_keys: The list of SSH public keys used to authenticate with linux based VMs.
1830
+ """
1831
+ if public_keys is not None:
1832
+ pulumi.set(__self__, "public_keys", public_keys)
1833
+
1834
+ @property
1835
+ @pulumi.getter(name="publicKeys")
1836
+ def public_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SshPublicKeyArgs']]]]:
1837
+ """
1838
+ The list of SSH public keys used to authenticate with linux based VMs.
1839
+ """
1840
+ return pulumi.get(self, "public_keys")
1841
+
1842
+ @public_keys.setter
1843
+ def public_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SshPublicKeyArgs']]]]):
1844
+ pulumi.set(self, "public_keys", value)
1845
+
1846
+
1847
+ @pulumi.input_type
1848
+ class SshKeyPairArgs:
1849
+ def __init__(__self__, *,
1850
+ private_key: Optional[pulumi.Input[str]] = None,
1851
+ public_key: Optional[pulumi.Input[str]] = None):
1852
+ """
1853
+ The SSH Key-pair used to authenticate with the VM. The key needs to be at least 2048-bit and in ssh-rsa format. <br><br> For creating ssh keys, see [Create SSH keys on Linux and Mac for Linux VMs in Azure](https://docs.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed).
1854
+ :param pulumi.Input[str] private_key: SSH private key.
1855
+ :param pulumi.Input[str] public_key: SSH public key
1856
+ """
1857
+ if private_key is not None:
1858
+ pulumi.set(__self__, "private_key", private_key)
1859
+ if public_key is not None:
1860
+ pulumi.set(__self__, "public_key", public_key)
1861
+
1862
+ @property
1863
+ @pulumi.getter(name="privateKey")
1864
+ def private_key(self) -> Optional[pulumi.Input[str]]:
1865
+ """
1866
+ SSH private key.
1867
+ """
1868
+ return pulumi.get(self, "private_key")
1869
+
1870
+ @private_key.setter
1871
+ def private_key(self, value: Optional[pulumi.Input[str]]):
1872
+ pulumi.set(self, "private_key", value)
1873
+
1874
+ @property
1875
+ @pulumi.getter(name="publicKey")
1876
+ def public_key(self) -> Optional[pulumi.Input[str]]:
1877
+ """
1878
+ SSH public key
1879
+ """
1880
+ return pulumi.get(self, "public_key")
1881
+
1882
+ @public_key.setter
1883
+ def public_key(self, value: Optional[pulumi.Input[str]]):
1884
+ pulumi.set(self, "public_key", value)
1885
+
1886
+
1887
+ @pulumi.input_type
1888
+ class SshPublicKeyArgs:
1889
+ def __init__(__self__, *,
1890
+ key_data: Optional[pulumi.Input[str]] = None):
1891
+ """
1892
+ Contains information about SSH certificate public key and the path on the Linux VM where the public key is placed.
1893
+ :param pulumi.Input[str] key_data: SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. <br><br> For creating ssh keys, see [Create SSH keys on Linux and Mac for Linux VMs in Azure](https://docs.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed).
1894
+ """
1895
+ if key_data is not None:
1896
+ pulumi.set(__self__, "key_data", key_data)
1897
+
1898
+ @property
1899
+ @pulumi.getter(name="keyData")
1900
+ def key_data(self) -> Optional[pulumi.Input[str]]:
1901
+ """
1902
+ SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. <br><br> For creating ssh keys, see [Create SSH keys on Linux and Mac for Linux VMs in Azure](https://docs.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed).
1903
+ """
1904
+ return pulumi.get(self, "key_data")
1905
+
1906
+ @key_data.setter
1907
+ def key_data(self, value: Optional[pulumi.Input[str]]):
1908
+ pulumi.set(self, "key_data", value)
1909
+
1910
+
1911
+ @pulumi.input_type
1912
+ class StorageConfigurationArgs:
1913
+ def __init__(__self__, *,
1914
+ transport_file_share_configuration: Optional[pulumi.Input[Union['CreateAndMountFileShareConfigurationArgs', 'MountFileShareConfigurationArgs', 'SkipFileShareConfigurationArgs']]] = None):
1915
+ """
1916
+ Gets or sets the storage configuration.
1917
+ :param pulumi.Input[Union['CreateAndMountFileShareConfigurationArgs', 'MountFileShareConfigurationArgs', 'SkipFileShareConfigurationArgs']] transport_file_share_configuration: The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.
1918
+ """
1919
+ if transport_file_share_configuration is not None:
1920
+ pulumi.set(__self__, "transport_file_share_configuration", transport_file_share_configuration)
1921
+
1922
+ @property
1923
+ @pulumi.getter(name="transportFileShareConfiguration")
1924
+ def transport_file_share_configuration(self) -> Optional[pulumi.Input[Union['CreateAndMountFileShareConfigurationArgs', 'MountFileShareConfigurationArgs', 'SkipFileShareConfigurationArgs']]]:
1925
+ """
1926
+ The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.
1927
+ """
1928
+ return pulumi.get(self, "transport_file_share_configuration")
1929
+
1930
+ @transport_file_share_configuration.setter
1931
+ def transport_file_share_configuration(self, value: Optional[pulumi.Input[Union['CreateAndMountFileShareConfigurationArgs', 'MountFileShareConfigurationArgs', 'SkipFileShareConfigurationArgs']]]):
1932
+ pulumi.set(self, "transport_file_share_configuration", value)
1933
+
1934
+
1935
+ @pulumi.input_type
1936
+ class ThreeTierConfigurationArgs:
1937
+ def __init__(__self__, *,
1938
+ app_resource_group: pulumi.Input[str],
1939
+ application_server: pulumi.Input['ApplicationServerConfigurationArgs'],
1940
+ central_server: pulumi.Input['CentralServerConfigurationArgs'],
1941
+ database_server: pulumi.Input['DatabaseConfigurationArgs'],
1942
+ deployment_type: pulumi.Input[str],
1943
+ custom_resource_names: Optional[pulumi.Input['ThreeTierFullResourceNamesArgs']] = None,
1944
+ high_availability_config: Optional[pulumi.Input['HighAvailabilityConfigurationArgs']] = None,
1945
+ network_configuration: Optional[pulumi.Input['NetworkConfigurationArgs']] = None,
1946
+ storage_configuration: Optional[pulumi.Input['StorageConfigurationArgs']] = None):
1947
+ """
1948
+ Gets or sets the three tier SAP configuration. For prerequisites for creating the infrastructure, please see [here](https://go.microsoft.com/fwlink/?linkid=2212611&clcid=0x409)
1949
+ :param pulumi.Input[str] app_resource_group: The application resource group where SAP system resources will be deployed.
1950
+ :param pulumi.Input['ApplicationServerConfigurationArgs'] application_server: The application server configuration.
1951
+ :param pulumi.Input['CentralServerConfigurationArgs'] central_server: The central server configuration.
1952
+ :param pulumi.Input['DatabaseConfigurationArgs'] database_server: The database configuration.
1953
+ :param pulumi.Input[str] deployment_type: The type of SAP deployment, single server or Three tier.
1954
+ Expected value is 'ThreeTier'.
1955
+ :param pulumi.Input['ThreeTierFullResourceNamesArgs'] custom_resource_names: The set of custom names to be used for underlying azure resources that are part of the SAP system.
1956
+ :param pulumi.Input['HighAvailabilityConfigurationArgs'] high_availability_config: The high availability configuration.
1957
+ :param pulumi.Input['NetworkConfigurationArgs'] network_configuration: Network configuration common to all servers
1958
+ :param pulumi.Input['StorageConfigurationArgs'] storage_configuration: The storage configuration.
1959
+ """
1960
+ pulumi.set(__self__, "app_resource_group", app_resource_group)
1961
+ pulumi.set(__self__, "application_server", application_server)
1962
+ pulumi.set(__self__, "central_server", central_server)
1963
+ pulumi.set(__self__, "database_server", database_server)
1964
+ pulumi.set(__self__, "deployment_type", 'ThreeTier')
1965
+ if custom_resource_names is not None:
1966
+ pulumi.set(__self__, "custom_resource_names", custom_resource_names)
1967
+ if high_availability_config is not None:
1968
+ pulumi.set(__self__, "high_availability_config", high_availability_config)
1969
+ if network_configuration is not None:
1970
+ pulumi.set(__self__, "network_configuration", network_configuration)
1971
+ if storage_configuration is not None:
1972
+ pulumi.set(__self__, "storage_configuration", storage_configuration)
1973
+
1974
+ @property
1975
+ @pulumi.getter(name="appResourceGroup")
1976
+ def app_resource_group(self) -> pulumi.Input[str]:
1977
+ """
1978
+ The application resource group where SAP system resources will be deployed.
1979
+ """
1980
+ return pulumi.get(self, "app_resource_group")
1981
+
1982
+ @app_resource_group.setter
1983
+ def app_resource_group(self, value: pulumi.Input[str]):
1984
+ pulumi.set(self, "app_resource_group", value)
1985
+
1986
+ @property
1987
+ @pulumi.getter(name="applicationServer")
1988
+ def application_server(self) -> pulumi.Input['ApplicationServerConfigurationArgs']:
1989
+ """
1990
+ The application server configuration.
1991
+ """
1992
+ return pulumi.get(self, "application_server")
1993
+
1994
+ @application_server.setter
1995
+ def application_server(self, value: pulumi.Input['ApplicationServerConfigurationArgs']):
1996
+ pulumi.set(self, "application_server", value)
1997
+
1998
+ @property
1999
+ @pulumi.getter(name="centralServer")
2000
+ def central_server(self) -> pulumi.Input['CentralServerConfigurationArgs']:
2001
+ """
2002
+ The central server configuration.
2003
+ """
2004
+ return pulumi.get(self, "central_server")
2005
+
2006
+ @central_server.setter
2007
+ def central_server(self, value: pulumi.Input['CentralServerConfigurationArgs']):
2008
+ pulumi.set(self, "central_server", value)
2009
+
2010
+ @property
2011
+ @pulumi.getter(name="databaseServer")
2012
+ def database_server(self) -> pulumi.Input['DatabaseConfigurationArgs']:
2013
+ """
2014
+ The database configuration.
2015
+ """
2016
+ return pulumi.get(self, "database_server")
2017
+
2018
+ @database_server.setter
2019
+ def database_server(self, value: pulumi.Input['DatabaseConfigurationArgs']):
2020
+ pulumi.set(self, "database_server", value)
2021
+
2022
+ @property
2023
+ @pulumi.getter(name="deploymentType")
2024
+ def deployment_type(self) -> pulumi.Input[str]:
2025
+ """
2026
+ The type of SAP deployment, single server or Three tier.
2027
+ Expected value is 'ThreeTier'.
2028
+ """
2029
+ return pulumi.get(self, "deployment_type")
2030
+
2031
+ @deployment_type.setter
2032
+ def deployment_type(self, value: pulumi.Input[str]):
2033
+ pulumi.set(self, "deployment_type", value)
2034
+
2035
+ @property
2036
+ @pulumi.getter(name="customResourceNames")
2037
+ def custom_resource_names(self) -> Optional[pulumi.Input['ThreeTierFullResourceNamesArgs']]:
2038
+ """
2039
+ The set of custom names to be used for underlying azure resources that are part of the SAP system.
2040
+ """
2041
+ return pulumi.get(self, "custom_resource_names")
2042
+
2043
+ @custom_resource_names.setter
2044
+ def custom_resource_names(self, value: Optional[pulumi.Input['ThreeTierFullResourceNamesArgs']]):
2045
+ pulumi.set(self, "custom_resource_names", value)
2046
+
2047
+ @property
2048
+ @pulumi.getter(name="highAvailabilityConfig")
2049
+ def high_availability_config(self) -> Optional[pulumi.Input['HighAvailabilityConfigurationArgs']]:
2050
+ """
2051
+ The high availability configuration.
2052
+ """
2053
+ return pulumi.get(self, "high_availability_config")
2054
+
2055
+ @high_availability_config.setter
2056
+ def high_availability_config(self, value: Optional[pulumi.Input['HighAvailabilityConfigurationArgs']]):
2057
+ pulumi.set(self, "high_availability_config", value)
2058
+
2059
+ @property
2060
+ @pulumi.getter(name="networkConfiguration")
2061
+ def network_configuration(self) -> Optional[pulumi.Input['NetworkConfigurationArgs']]:
2062
+ """
2063
+ Network configuration common to all servers
2064
+ """
2065
+ return pulumi.get(self, "network_configuration")
2066
+
2067
+ @network_configuration.setter
2068
+ def network_configuration(self, value: Optional[pulumi.Input['NetworkConfigurationArgs']]):
2069
+ pulumi.set(self, "network_configuration", value)
2070
+
2071
+ @property
2072
+ @pulumi.getter(name="storageConfiguration")
2073
+ def storage_configuration(self) -> Optional[pulumi.Input['StorageConfigurationArgs']]:
2074
+ """
2075
+ The storage configuration.
2076
+ """
2077
+ return pulumi.get(self, "storage_configuration")
2078
+
2079
+ @storage_configuration.setter
2080
+ def storage_configuration(self, value: Optional[pulumi.Input['StorageConfigurationArgs']]):
2081
+ pulumi.set(self, "storage_configuration", value)
2082
+
2083
+
2084
+ @pulumi.input_type
2085
+ class ThreeTierFullResourceNamesArgs:
2086
+ def __init__(__self__, *,
2087
+ naming_pattern_type: pulumi.Input[str],
2088
+ application_server: Optional[pulumi.Input['ApplicationServerFullResourceNamesArgs']] = None,
2089
+ central_server: Optional[pulumi.Input['CentralServerFullResourceNamesArgs']] = None,
2090
+ database_server: Optional[pulumi.Input['DatabaseServerFullResourceNamesArgs']] = None,
2091
+ shared_storage: Optional[pulumi.Input['SharedStorageResourceNamesArgs']] = None):
2092
+ """
2093
+ The resource name object where the specified values will be full resource names of the corresponding resources in a three tier SAP system.
2094
+ :param pulumi.Input[str] naming_pattern_type: The pattern type to be used for resource naming.
2095
+ Expected value is 'FullResourceName'.
2096
+ :param pulumi.Input['ApplicationServerFullResourceNamesArgs'] application_server: The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
2097
+ :param pulumi.Input['CentralServerFullResourceNamesArgs'] central_server: The full resource names object for central server layer resources.
2098
+ :param pulumi.Input['DatabaseServerFullResourceNamesArgs'] database_server: The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
2099
+ :param pulumi.Input['SharedStorageResourceNamesArgs'] shared_storage: The resource names object for shared storage.
2100
+ """
2101
+ pulumi.set(__self__, "naming_pattern_type", 'FullResourceName')
2102
+ if application_server is not None:
2103
+ pulumi.set(__self__, "application_server", application_server)
2104
+ if central_server is not None:
2105
+ pulumi.set(__self__, "central_server", central_server)
2106
+ if database_server is not None:
2107
+ pulumi.set(__self__, "database_server", database_server)
2108
+ if shared_storage is not None:
2109
+ pulumi.set(__self__, "shared_storage", shared_storage)
2110
+
2111
+ @property
2112
+ @pulumi.getter(name="namingPatternType")
2113
+ def naming_pattern_type(self) -> pulumi.Input[str]:
2114
+ """
2115
+ The pattern type to be used for resource naming.
2116
+ Expected value is 'FullResourceName'.
2117
+ """
2118
+ return pulumi.get(self, "naming_pattern_type")
2119
+
2120
+ @naming_pattern_type.setter
2121
+ def naming_pattern_type(self, value: pulumi.Input[str]):
2122
+ pulumi.set(self, "naming_pattern_type", value)
2123
+
2124
+ @property
2125
+ @pulumi.getter(name="applicationServer")
2126
+ def application_server(self) -> Optional[pulumi.Input['ApplicationServerFullResourceNamesArgs']]:
2127
+ """
2128
+ The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
2129
+ """
2130
+ return pulumi.get(self, "application_server")
2131
+
2132
+ @application_server.setter
2133
+ def application_server(self, value: Optional[pulumi.Input['ApplicationServerFullResourceNamesArgs']]):
2134
+ pulumi.set(self, "application_server", value)
2135
+
2136
+ @property
2137
+ @pulumi.getter(name="centralServer")
2138
+ def central_server(self) -> Optional[pulumi.Input['CentralServerFullResourceNamesArgs']]:
2139
+ """
2140
+ The full resource names object for central server layer resources.
2141
+ """
2142
+ return pulumi.get(self, "central_server")
2143
+
2144
+ @central_server.setter
2145
+ def central_server(self, value: Optional[pulumi.Input['CentralServerFullResourceNamesArgs']]):
2146
+ pulumi.set(self, "central_server", value)
2147
+
2148
+ @property
2149
+ @pulumi.getter(name="databaseServer")
2150
+ def database_server(self) -> Optional[pulumi.Input['DatabaseServerFullResourceNamesArgs']]:
2151
+ """
2152
+ The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
2153
+ """
2154
+ return pulumi.get(self, "database_server")
2155
+
2156
+ @database_server.setter
2157
+ def database_server(self, value: Optional[pulumi.Input['DatabaseServerFullResourceNamesArgs']]):
2158
+ pulumi.set(self, "database_server", value)
2159
+
2160
+ @property
2161
+ @pulumi.getter(name="sharedStorage")
2162
+ def shared_storage(self) -> Optional[pulumi.Input['SharedStorageResourceNamesArgs']]:
2163
+ """
2164
+ The resource names object for shared storage.
2165
+ """
2166
+ return pulumi.get(self, "shared_storage")
2167
+
2168
+ @shared_storage.setter
2169
+ def shared_storage(self, value: Optional[pulumi.Input['SharedStorageResourceNamesArgs']]):
2170
+ pulumi.set(self, "shared_storage", value)
2171
+
2172
+
2173
+ @pulumi.input_type
2174
+ class UserAssignedServiceIdentityArgs:
2175
+ def __init__(__self__, *,
2176
+ type: pulumi.Input[Union[str, 'ManagedServiceIdentityType']],
2177
+ user_assigned_identities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
2178
+ """
2179
+ Managed service identity (user assigned identities)
2180
+ :param pulumi.Input[Union[str, 'ManagedServiceIdentityType']] type: Type of manage identity
2181
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] user_assigned_identities: User assigned identities dictionary
2182
+ """
2183
+ pulumi.set(__self__, "type", type)
2184
+ if user_assigned_identities is not None:
2185
+ pulumi.set(__self__, "user_assigned_identities", user_assigned_identities)
2186
+
2187
+ @property
2188
+ @pulumi.getter
2189
+ def type(self) -> pulumi.Input[Union[str, 'ManagedServiceIdentityType']]:
2190
+ """
2191
+ Type of manage identity
2192
+ """
2193
+ return pulumi.get(self, "type")
2194
+
2195
+ @type.setter
2196
+ def type(self, value: pulumi.Input[Union[str, 'ManagedServiceIdentityType']]):
2197
+ pulumi.set(self, "type", value)
2198
+
2199
+ @property
2200
+ @pulumi.getter(name="userAssignedIdentities")
2201
+ def user_assigned_identities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
2202
+ """
2203
+ User assigned identities dictionary
2204
+ """
2205
+ return pulumi.get(self, "user_assigned_identities")
2206
+
2207
+ @user_assigned_identities.setter
2208
+ def user_assigned_identities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
2209
+ pulumi.set(self, "user_assigned_identities", value)
2210
+
2211
+
2212
+ @pulumi.input_type
2213
+ class VirtualMachineConfigurationArgs:
2214
+ def __init__(__self__, *,
2215
+ image_reference: pulumi.Input['ImageReferenceArgs'],
2216
+ os_profile: pulumi.Input['OSProfileArgs'],
2217
+ vm_size: pulumi.Input[str]):
2218
+ """
2219
+ Defines the virtual machine configuration.
2220
+ :param pulumi.Input['ImageReferenceArgs'] image_reference: The image reference.
2221
+ :param pulumi.Input['OSProfileArgs'] os_profile: The OS profile.
2222
+ :param pulumi.Input[str] vm_size: The virtual machine size.
2223
+ """
2224
+ pulumi.set(__self__, "image_reference", image_reference)
2225
+ pulumi.set(__self__, "os_profile", os_profile)
2226
+ pulumi.set(__self__, "vm_size", vm_size)
2227
+
2228
+ @property
2229
+ @pulumi.getter(name="imageReference")
2230
+ def image_reference(self) -> pulumi.Input['ImageReferenceArgs']:
2231
+ """
2232
+ The image reference.
2233
+ """
2234
+ return pulumi.get(self, "image_reference")
2235
+
2236
+ @image_reference.setter
2237
+ def image_reference(self, value: pulumi.Input['ImageReferenceArgs']):
2238
+ pulumi.set(self, "image_reference", value)
2239
+
2240
+ @property
2241
+ @pulumi.getter(name="osProfile")
2242
+ def os_profile(self) -> pulumi.Input['OSProfileArgs']:
2243
+ """
2244
+ The OS profile.
2245
+ """
2246
+ return pulumi.get(self, "os_profile")
2247
+
2248
+ @os_profile.setter
2249
+ def os_profile(self, value: pulumi.Input['OSProfileArgs']):
2250
+ pulumi.set(self, "os_profile", value)
2251
+
2252
+ @property
2253
+ @pulumi.getter(name="vmSize")
2254
+ def vm_size(self) -> pulumi.Input[str]:
2255
+ """
2256
+ The virtual machine size.
2257
+ """
2258
+ return pulumi.get(self, "vm_size")
2259
+
2260
+ @vm_size.setter
2261
+ def vm_size(self, value: pulumi.Input[str]):
2262
+ pulumi.set(self, "vm_size", value)
2263
+
2264
+
2265
+ @pulumi.input_type
2266
+ class VirtualMachineResourceNamesArgs:
2267
+ def __init__(__self__, *,
2268
+ data_disk_names: Optional[pulumi.Input[Mapping[str, pulumi.Input[Sequence[pulumi.Input[str]]]]]] = None,
2269
+ host_name: Optional[pulumi.Input[str]] = None,
2270
+ network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkInterfaceResourceNamesArgs']]]] = None,
2271
+ os_disk_name: Optional[pulumi.Input[str]] = None,
2272
+ vm_name: Optional[pulumi.Input[str]] = None):
2273
+ """
2274
+ The resource names object for virtual machine and related resources.
2275
+ :param pulumi.Input[Mapping[str, pulumi.Input[Sequence[pulumi.Input[str]]]]] data_disk_names: The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
2276
+ :param pulumi.Input[str] host_name: The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
2277
+ :param pulumi.Input[Sequence[pulumi.Input['NetworkInterfaceResourceNamesArgs']]] network_interfaces: The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
2278
+ :param pulumi.Input[str] os_disk_name: The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
2279
+ :param pulumi.Input[str] vm_name: The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.
2280
+ """
2281
+ if data_disk_names is not None:
2282
+ pulumi.set(__self__, "data_disk_names", data_disk_names)
2283
+ if host_name is not None:
2284
+ pulumi.set(__self__, "host_name", host_name)
2285
+ if network_interfaces is not None:
2286
+ pulumi.set(__self__, "network_interfaces", network_interfaces)
2287
+ if os_disk_name is not None:
2288
+ pulumi.set(__self__, "os_disk_name", os_disk_name)
2289
+ if vm_name is not None:
2290
+ pulumi.set(__self__, "vm_name", vm_name)
2291
+
2292
+ @property
2293
+ @pulumi.getter(name="dataDiskNames")
2294
+ def data_disk_names(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[Sequence[pulumi.Input[str]]]]]]:
2295
+ """
2296
+ The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
2297
+ """
2298
+ return pulumi.get(self, "data_disk_names")
2299
+
2300
+ @data_disk_names.setter
2301
+ def data_disk_names(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[Sequence[pulumi.Input[str]]]]]]):
2302
+ pulumi.set(self, "data_disk_names", value)
2303
+
2304
+ @property
2305
+ @pulumi.getter(name="hostName")
2306
+ def host_name(self) -> Optional[pulumi.Input[str]]:
2307
+ """
2308
+ The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
2309
+ """
2310
+ return pulumi.get(self, "host_name")
2311
+
2312
+ @host_name.setter
2313
+ def host_name(self, value: Optional[pulumi.Input[str]]):
2314
+ pulumi.set(self, "host_name", value)
2315
+
2316
+ @property
2317
+ @pulumi.getter(name="networkInterfaces")
2318
+ def network_interfaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkInterfaceResourceNamesArgs']]]]:
2319
+ """
2320
+ The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
2321
+ """
2322
+ return pulumi.get(self, "network_interfaces")
2323
+
2324
+ @network_interfaces.setter
2325
+ def network_interfaces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkInterfaceResourceNamesArgs']]]]):
2326
+ pulumi.set(self, "network_interfaces", value)
2327
+
2328
+ @property
2329
+ @pulumi.getter(name="osDiskName")
2330
+ def os_disk_name(self) -> Optional[pulumi.Input[str]]:
2331
+ """
2332
+ The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
2333
+ """
2334
+ return pulumi.get(self, "os_disk_name")
2335
+
2336
+ @os_disk_name.setter
2337
+ def os_disk_name(self, value: Optional[pulumi.Input[str]]):
2338
+ pulumi.set(self, "os_disk_name", value)
2339
+
2340
+ @property
2341
+ @pulumi.getter(name="vmName")
2342
+ def vm_name(self) -> Optional[pulumi.Input[str]]:
2343
+ """
2344
+ The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.
2345
+ """
2346
+ return pulumi.get(self, "vm_name")
2347
+
2348
+ @vm_name.setter
2349
+ def vm_name(self, value: Optional[pulumi.Input[str]]):
2350
+ pulumi.set(self, "vm_name", value)
2351
+
2352
+
2353
+ @pulumi.input_type
2354
+ class WindowsConfigurationArgs:
2355
+ def __init__(__self__, *,
2356
+ os_type: pulumi.Input[str]):
2357
+ """
2358
+ Specifies Windows operating system settings on the virtual machine.
2359
+ :param pulumi.Input[str] os_type: The OS Type
2360
+ Expected value is 'Windows'.
2361
+ """
2362
+ pulumi.set(__self__, "os_type", 'Windows')
2363
+
2364
+ @property
2365
+ @pulumi.getter(name="osType")
2366
+ def os_type(self) -> pulumi.Input[str]:
2367
+ """
2368
+ The OS Type
2369
+ Expected value is 'Windows'.
2370
+ """
2371
+ return pulumi.get(self, "os_type")
2372
+
2373
+ @os_type.setter
2374
+ def os_type(self, value: pulumi.Input[str]):
2375
+ pulumi.set(self, "os_type", value)
2376
+
2377
+