pulumi-azure 6.27.0a1758695020__py3-none-any.whl → 6.27.0a1759511969__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 might be problematic. Click here for more details.

Files changed (169) hide show
  1. pulumi_azure/__init__.py +32 -0
  2. pulumi_azure/apimanagement/backend.py +2 -2
  3. pulumi_azure/appservice/_inputs.py +78 -6
  4. pulumi_azure/appservice/app_flex_consumption.py +61 -0
  5. pulumi_azure/appservice/outputs.py +52 -4
  6. pulumi_azure/appservice/service_plan.py +14 -14
  7. pulumi_azure/billing/account_cost_management_export.py +2 -2
  8. pulumi_azure/cdn/_inputs.py +57 -95
  9. pulumi_azure/cdn/frontdoor_firewall_policy.py +34 -107
  10. pulumi_azure/cdn/frontdoor_profile.py +87 -2
  11. pulumi_azure/cdn/frontdoor_security_policy.py +7 -7
  12. pulumi_azure/cdn/get_frontdoor_firewall_policy.py +15 -1
  13. pulumi_azure/cdn/get_frontdoor_profile.py +25 -11
  14. pulumi_azure/cdn/outputs.py +79 -21
  15. pulumi_azure/cognitive/account.py +7 -7
  16. pulumi_azure/compute/__init__.py +1 -0
  17. pulumi_azure/compute/_inputs.py +79 -47
  18. pulumi_azure/compute/get_managed_disks.py +140 -0
  19. pulumi_azure/compute/linux_virtual_machine.py +97 -23
  20. pulumi_azure/compute/outputs.py +362 -34
  21. pulumi_azure/compute/windows_virtual_machine.py +172 -42
  22. pulumi_azure/containerservice/_inputs.py +209 -17
  23. pulumi_azure/containerservice/cluster_trusted_access_role_binding.py +2 -2
  24. pulumi_azure/containerservice/get_cluster_node_pool.py +14 -3
  25. pulumi_azure/containerservice/get_kubernetes_cluster.py +2 -2
  26. pulumi_azure/containerservice/get_kubernetes_node_pool_snapshot.py +2 -2
  27. pulumi_azure/containerservice/kubernetes_cluster.py +49 -2
  28. pulumi_azure/containerservice/kubernetes_cluster_node_pool.py +49 -2
  29. pulumi_azure/containerservice/outputs.py +173 -11
  30. pulumi_azure/core/_inputs.py +0 -54
  31. pulumi_azure/core/outputs.py +0 -36
  32. pulumi_azure/core/resource_group_cost_management_export.py +2 -2
  33. pulumi_azure/core/resource_group_policy_assignment.py +7 -7
  34. pulumi_azure/core/resource_policy_assignment.py +7 -7
  35. pulumi_azure/core/subscription_cost_management_export.py +2 -2
  36. pulumi_azure/core/subscription_policy_assignment.py +7 -7
  37. pulumi_azure/datafactory/__init__.py +1 -0
  38. pulumi_azure/datafactory/customer_managed_key.py +439 -0
  39. pulumi_azure/datafactory/factory.py +2 -2
  40. pulumi_azure/dataprotection/_inputs.py +36 -6
  41. pulumi_azure/dataprotection/backup_policy_blob_storage.py +76 -2
  42. pulumi_azure/dataprotection/outputs.py +24 -4
  43. pulumi_azure/devcenter/get_project_pool.py +15 -1
  44. pulumi_azure/devcenter/project_pool.py +47 -0
  45. pulumi_azure/eventgrid/domain.py +2 -2
  46. pulumi_azure/eventgrid/domain_topic.py +2 -2
  47. pulumi_azure/eventgrid/event_subscription.py +2 -2
  48. pulumi_azure/eventgrid/get_domain.py +2 -2
  49. pulumi_azure/eventgrid/get_domain_topic.py +2 -2
  50. pulumi_azure/eventgrid/get_partner_namespace.py +2 -2
  51. pulumi_azure/eventgrid/get_partner_registration.py +2 -2
  52. pulumi_azure/eventgrid/get_system_topic.py +28 -6
  53. pulumi_azure/eventgrid/get_topic.py +2 -2
  54. pulumi_azure/eventgrid/partner_configuration.py +2 -2
  55. pulumi_azure/eventgrid/partner_namespace.py +2 -2
  56. pulumi_azure/eventgrid/partner_registration.py +2 -2
  57. pulumi_azure/eventgrid/system_topic.py +97 -35
  58. pulumi_azure/eventgrid/system_topic_event_subscription.py +4 -4
  59. pulumi_azure/eventgrid/topic.py +2 -2
  60. pulumi_azure/eventhub/domain.py +2 -2
  61. pulumi_azure/eventhub/event_grid_topic.py +2 -2
  62. pulumi_azure/eventhub/event_subscription.py +2 -2
  63. pulumi_azure/hpc/cache_blob_target.py +2 -2
  64. pulumi_azure/iot/_inputs.py +27 -1
  65. pulumi_azure/iot/endpoint_cosmosdb_account.py +64 -3
  66. pulumi_azure/iot/endpoint_eventhub.py +64 -3
  67. pulumi_azure/iot/endpoint_servicebus_queue.py +64 -3
  68. pulumi_azure/iot/endpoint_servicebus_topic.py +64 -3
  69. pulumi_azure/iot/endpoint_storage_container.py +64 -3
  70. pulumi_azure/iot/outputs.py +19 -1
  71. pulumi_azure/keyvault/_inputs.py +3 -17
  72. pulumi_azure/keyvault/get_key_vault.py +13 -1
  73. pulumi_azure/keyvault/key_vault.py +78 -35
  74. pulumi_azure/keyvault/outputs.py +2 -10
  75. pulumi_azure/kusto/_inputs.py +16 -6
  76. pulumi_azure/kusto/cluster.py +95 -66
  77. pulumi_azure/kusto/outputs.py +10 -4
  78. pulumi_azure/lb/get_lb_outbound_rule.py +12 -1
  79. pulumi_azure/lb/get_lb_rule.py +28 -4
  80. pulumi_azure/lb/load_balancer.py +94 -0
  81. pulumi_azure/lb/nat_rule.py +115 -29
  82. pulumi_azure/lb/outbound_rule.py +60 -17
  83. pulumi_azure/lb/rule.py +116 -30
  84. pulumi_azure/loadtest/_inputs.py +6 -3
  85. pulumi_azure/loadtest/load_test.py +0 -4
  86. pulumi_azure/loadtest/outputs.py +4 -2
  87. pulumi_azure/logicapps/_inputs.py +46 -987
  88. pulumi_azure/logicapps/get_standard.py +0 -7
  89. pulumi_azure/logicapps/outputs.py +117 -101
  90. pulumi_azure/logicapps/standard.py +7 -7
  91. pulumi_azure/machinelearning/_inputs.py +24 -4
  92. pulumi_azure/machinelearning/compute_instance.py +35 -7
  93. pulumi_azure/machinelearning/datastore_blobstorage.py +2 -2
  94. pulumi_azure/machinelearning/datastore_datalake_gen2.py +2 -2
  95. pulumi_azure/machinelearning/inference_cluster.py +2 -2
  96. pulumi_azure/machinelearning/outputs.py +17 -3
  97. pulumi_azure/machinelearning/workspace.py +61 -0
  98. pulumi_azure/management/_inputs.py +0 -18
  99. pulumi_azure/management/group_policy_assignment.py +7 -7
  100. pulumi_azure/management/outputs.py +0 -12
  101. pulumi_azure/management/private_link_association.py +0 -70
  102. pulumi_azure/mobile/_inputs.py +14 -6
  103. pulumi_azure/mobile/network_sim.py +2 -6
  104. pulumi_azure/mobile/network_sim_policy.py +2 -6
  105. pulumi_azure/mobile/network_slice.py +116 -31
  106. pulumi_azure/mobile/outputs.py +6 -4
  107. pulumi_azure/monitoring/_inputs.py +15 -9
  108. pulumi_azure/monitoring/activity_log_alert.py +7 -7
  109. pulumi_azure/monitoring/outputs.py +10 -6
  110. pulumi_azure/mssql/job_step.py +11 -11
  111. pulumi_azure/mysql/_inputs.py +20 -0
  112. pulumi_azure/mysql/outputs.py +14 -0
  113. pulumi_azure/netapp/_inputs.py +18 -6
  114. pulumi_azure/netapp/account.py +2 -2
  115. pulumi_azure/netapp/account_encryption.py +132 -4
  116. pulumi_azure/netapp/backup_policy.py +2 -2
  117. pulumi_azure/netapp/backup_vault.py +2 -2
  118. pulumi_azure/netapp/get_account.py +2 -2
  119. pulumi_azure/netapp/get_account_encryption.py +25 -3
  120. pulumi_azure/netapp/get_backup_policy.py +2 -2
  121. pulumi_azure/netapp/get_backup_vault.py +2 -2
  122. pulumi_azure/netapp/get_pool.py +17 -3
  123. pulumi_azure/netapp/get_snapshot.py +2 -2
  124. pulumi_azure/netapp/get_snapshot_policy.py +2 -2
  125. pulumi_azure/netapp/get_volume.py +17 -3
  126. pulumi_azure/netapp/get_volume_group_oracle.py +2 -2
  127. pulumi_azure/netapp/get_volume_group_sap_hana.py +2 -2
  128. pulumi_azure/netapp/get_volume_quota_rule.py +2 -2
  129. pulumi_azure/netapp/outputs.py +12 -4
  130. pulumi_azure/netapp/pool.py +104 -9
  131. pulumi_azure/netapp/snapshot.py +2 -2
  132. pulumi_azure/netapp/snapshot_policy.py +2 -2
  133. pulumi_azure/netapp/volume.py +82 -7
  134. pulumi_azure/netapp/volume_group_oracle.py +2 -2
  135. pulumi_azure/netapp/volume_group_sap_hana.py +2 -2
  136. pulumi_azure/netapp/volume_quota_rule.py +2 -2
  137. pulumi_azure/network/__init__.py +2 -0
  138. pulumi_azure/network/network_manager_ipam_pool_static_cidr.py +415 -0
  139. pulumi_azure/network/network_manager_routing_configuration.py +7 -7
  140. pulumi_azure/network/network_manager_routing_rule_collection.py +429 -0
  141. pulumi_azure/network/subnet.py +76 -1
  142. pulumi_azure/oracle/__init__.py +3 -0
  143. pulumi_azure/oracle/autonomous_database_backup.py +310 -0
  144. pulumi_azure/oracle/get_autonomous_database_backup.py +347 -0
  145. pulumi_azure/oracle/get_autonomous_database_backups.py +138 -0
  146. pulumi_azure/oracle/outputs.py +191 -0
  147. pulumi_azure/paloalto/next_generation_firewall_virtual_hub_local_rulestack.py +2 -2
  148. pulumi_azure/paloalto/next_generation_firewall_virtual_hub_panorama.py +2 -2
  149. pulumi_azure/paloalto/next_generation_firewall_virtual_network_local_rulestack.py +2 -2
  150. pulumi_azure/paloalto/next_generation_firewall_virtual_network_panorama.py +2 -2
  151. pulumi_azure/policy/_inputs.py +6 -0
  152. pulumi_azure/policy/outputs.py +4 -0
  153. pulumi_azure/postgresql/flexible_server.py +7 -7
  154. pulumi_azure/postgresql/flexible_server_firewall_rule.py +14 -14
  155. pulumi_azure/pulumi-plugin.json +1 -1
  156. pulumi_azure/search/service.py +7 -7
  157. pulumi_azure/sentinel/_inputs.py +144 -0
  158. pulumi_azure/sentinel/authomation_rule.py +47 -0
  159. pulumi_azure/sentinel/automation_rule.py +47 -0
  160. pulumi_azure/sentinel/outputs.py +84 -0
  161. pulumi_azure/storage/_inputs.py +3 -3
  162. pulumi_azure/storage/container_immutability_policy.py +2 -2
  163. pulumi_azure/storage/get_queue.py +59 -8
  164. pulumi_azure/storage/outputs.py +2 -2
  165. pulumi_azure/storage/queue.py +159 -27
  166. {pulumi_azure-6.27.0a1758695020.dist-info → pulumi_azure-6.27.0a1759511969.dist-info}/METADATA +1 -1
  167. {pulumi_azure-6.27.0a1758695020.dist-info → pulumi_azure-6.27.0a1759511969.dist-info}/RECORD +169 -162
  168. {pulumi_azure-6.27.0a1758695020.dist-info → pulumi_azure-6.27.0a1759511969.dist-info}/WHEEL +0 -0
  169. {pulumi_azure-6.27.0a1758695020.dist-info → pulumi_azure-6.27.0a1759511969.dist-info}/top_level.txt +0 -0
@@ -21,7 +21,6 @@ __all__ = ['LinuxVirtualMachineArgs', 'LinuxVirtualMachine']
21
21
  @pulumi.input_type
22
22
  class LinuxVirtualMachineArgs:
23
23
  def __init__(__self__, *,
24
- admin_username: pulumi.Input[_builtins.str],
25
24
  network_interface_ids: pulumi.Input[Sequence[pulumi.Input[_builtins.str]]],
26
25
  os_disk: pulumi.Input['LinuxVirtualMachineOsDiskArgs'],
27
26
  resource_group_name: pulumi.Input[_builtins.str],
@@ -29,6 +28,7 @@ class LinuxVirtualMachineArgs:
29
28
  additional_capabilities: Optional[pulumi.Input['LinuxVirtualMachineAdditionalCapabilitiesArgs']] = None,
30
29
  admin_password: Optional[pulumi.Input[_builtins.str]] = None,
31
30
  admin_ssh_keys: Optional[pulumi.Input[Sequence[pulumi.Input['LinuxVirtualMachineAdminSshKeyArgs']]]] = None,
31
+ admin_username: Optional[pulumi.Input[_builtins.str]] = None,
32
32
  allow_extension_operations: Optional[pulumi.Input[_builtins.bool]] = None,
33
33
  availability_set_id: Optional[pulumi.Input[_builtins.str]] = None,
34
34
  boot_diagnostics: Optional[pulumi.Input['LinuxVirtualMachineBootDiagnosticsArgs']] = None,
@@ -51,6 +51,7 @@ class LinuxVirtualMachineArgs:
51
51
  max_bid_price: Optional[pulumi.Input[_builtins.float]] = None,
52
52
  name: Optional[pulumi.Input[_builtins.str]] = None,
53
53
  os_image_notification: Optional[pulumi.Input['LinuxVirtualMachineOsImageNotificationArgs']] = None,
54
+ os_managed_disk_id: Optional[pulumi.Input[_builtins.str]] = None,
54
55
  patch_assessment_mode: Optional[pulumi.Input[_builtins.str]] = None,
55
56
  patch_mode: Optional[pulumi.Input[_builtins.str]] = None,
56
57
  plan: Optional[pulumi.Input['LinuxVirtualMachinePlanArgs']] = None,
@@ -72,7 +73,6 @@ class LinuxVirtualMachineArgs:
72
73
  zone: Optional[pulumi.Input[_builtins.str]] = None):
73
74
  """
74
75
  The set of arguments for constructing a LinuxVirtualMachine resource.
75
- :param pulumi.Input[_builtins.str] admin_username: The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
76
76
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] network_interface_ids: . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
77
77
  :param pulumi.Input['LinuxVirtualMachineOsDiskArgs'] os_disk: A `os_disk` block as defined below.
78
78
  :param pulumi.Input[_builtins.str] resource_group_name: The name of the Resource Group in which the Linux Virtual Machine should be exist. Changing this forces a new resource to be created.
@@ -85,6 +85,9 @@ class LinuxVirtualMachineArgs:
85
85
  :param pulumi.Input[Sequence[pulumi.Input['LinuxVirtualMachineAdminSshKeyArgs']]] admin_ssh_keys: One or more `admin_ssh_key` blocks as defined below. Changing this forces a new resource to be created.
86
86
 
87
87
  > **NOTE:** One of either `admin_password` or `admin_ssh_key` must be specified.
88
+ :param pulumi.Input[_builtins.str] admin_username: The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
89
+
90
+ > **Note:** This is required unless using an existing OS Managed Disk by specifying `os_managed_disk_id`.
88
91
  :param pulumi.Input[_builtins.bool] allow_extension_operations: Should Extension Operations be allowed on this Virtual Machine? Defaults to `true`.
89
92
  :param pulumi.Input[_builtins.str] availability_set_id: Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
90
93
  :param pulumi.Input['LinuxVirtualMachineBootDiagnosticsArgs'] boot_diagnostics: A `boot_diagnostics` block as defined below.
@@ -121,6 +124,9 @@ class LinuxVirtualMachineArgs:
121
124
  > **NOTE:** This can only be configured when `priority` is set to `Spot`.
122
125
  :param pulumi.Input[_builtins.str] name: The name of the Linux Virtual Machine. Changing this forces a new resource to be created.
123
126
  :param pulumi.Input['LinuxVirtualMachineOsImageNotificationArgs'] os_image_notification: A `os_image_notification` block as defined below.
127
+ :param pulumi.Input[_builtins.str] os_managed_disk_id: The ID of an existing Managed Disk to use as the OS Disk for this Linux Virtual Machine.
128
+
129
+ > **Note:** When specifying an existing Managed Disk it is not currently possible to subsequently manage the Operating System Profile properties: `admin_username`, `admin_password`, `bypass_platform_safety_checks_on_user_schedule_enabled`, `computer_name`, `custom_data`, `provision_vm_agent`, `patch_mode`, `patch_assessment_mode`, or `reboot_setting`.
124
130
  :param pulumi.Input[_builtins.str] patch_assessment_mode: Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
125
131
 
126
132
  > **NOTE:** If the `patch_assessment_mode` is set to `AutomaticByPlatform` then the `provision_vm_agent` field must be set to `true`.
@@ -159,7 +165,6 @@ class LinuxVirtualMachineArgs:
159
165
  :param pulumi.Input[_builtins.bool] vtpm_enabled: Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.
160
166
  :param pulumi.Input[_builtins.str] zone: Specifies the Availability Zones in which this Linux Virtual Machine should be located. Changing this forces a new Linux Virtual Machine to be created.
161
167
  """
162
- pulumi.set(__self__, "admin_username", admin_username)
163
168
  pulumi.set(__self__, "network_interface_ids", network_interface_ids)
164
169
  pulumi.set(__self__, "os_disk", os_disk)
165
170
  pulumi.set(__self__, "resource_group_name", resource_group_name)
@@ -170,6 +175,8 @@ class LinuxVirtualMachineArgs:
170
175
  pulumi.set(__self__, "admin_password", admin_password)
171
176
  if admin_ssh_keys is not None:
172
177
  pulumi.set(__self__, "admin_ssh_keys", admin_ssh_keys)
178
+ if admin_username is not None:
179
+ pulumi.set(__self__, "admin_username", admin_username)
173
180
  if allow_extension_operations is not None:
174
181
  pulumi.set(__self__, "allow_extension_operations", allow_extension_operations)
175
182
  if availability_set_id is not None:
@@ -214,6 +221,8 @@ class LinuxVirtualMachineArgs:
214
221
  pulumi.set(__self__, "name", name)
215
222
  if os_image_notification is not None:
216
223
  pulumi.set(__self__, "os_image_notification", os_image_notification)
224
+ if os_managed_disk_id is not None:
225
+ pulumi.set(__self__, "os_managed_disk_id", os_managed_disk_id)
217
226
  if patch_assessment_mode is not None:
218
227
  pulumi.set(__self__, "patch_assessment_mode", patch_assessment_mode)
219
228
  if patch_mode is not None:
@@ -256,18 +265,6 @@ class LinuxVirtualMachineArgs:
256
265
  if zone is not None:
257
266
  pulumi.set(__self__, "zone", zone)
258
267
 
259
- @_builtins.property
260
- @pulumi.getter(name="adminUsername")
261
- def admin_username(self) -> pulumi.Input[_builtins.str]:
262
- """
263
- The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
264
- """
265
- return pulumi.get(self, "admin_username")
266
-
267
- @admin_username.setter
268
- def admin_username(self, value: pulumi.Input[_builtins.str]):
269
- pulumi.set(self, "admin_username", value)
270
-
271
268
  @_builtins.property
272
269
  @pulumi.getter(name="networkInterfaceIds")
273
270
  def network_interface_ids(self) -> pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]:
@@ -357,6 +354,20 @@ class LinuxVirtualMachineArgs:
357
354
  def admin_ssh_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['LinuxVirtualMachineAdminSshKeyArgs']]]]):
358
355
  pulumi.set(self, "admin_ssh_keys", value)
359
356
 
357
+ @_builtins.property
358
+ @pulumi.getter(name="adminUsername")
359
+ def admin_username(self) -> Optional[pulumi.Input[_builtins.str]]:
360
+ """
361
+ The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
362
+
363
+ > **Note:** This is required unless using an existing OS Managed Disk by specifying `os_managed_disk_id`.
364
+ """
365
+ return pulumi.get(self, "admin_username")
366
+
367
+ @admin_username.setter
368
+ def admin_username(self, value: Optional[pulumi.Input[_builtins.str]]):
369
+ pulumi.set(self, "admin_username", value)
370
+
360
371
  @_builtins.property
361
372
  @pulumi.getter(name="allowExtensionOperations")
362
373
  def allow_extension_operations(self) -> Optional[pulumi.Input[_builtins.bool]]:
@@ -635,6 +646,20 @@ class LinuxVirtualMachineArgs:
635
646
  def os_image_notification(self, value: Optional[pulumi.Input['LinuxVirtualMachineOsImageNotificationArgs']]):
636
647
  pulumi.set(self, "os_image_notification", value)
637
648
 
649
+ @_builtins.property
650
+ @pulumi.getter(name="osManagedDiskId")
651
+ def os_managed_disk_id(self) -> Optional[pulumi.Input[_builtins.str]]:
652
+ """
653
+ The ID of an existing Managed Disk to use as the OS Disk for this Linux Virtual Machine.
654
+
655
+ > **Note:** When specifying an existing Managed Disk it is not currently possible to subsequently manage the Operating System Profile properties: `admin_username`, `admin_password`, `bypass_platform_safety_checks_on_user_schedule_enabled`, `computer_name`, `custom_data`, `provision_vm_agent`, `patch_mode`, `patch_assessment_mode`, or `reboot_setting`.
656
+ """
657
+ return pulumi.get(self, "os_managed_disk_id")
658
+
659
+ @os_managed_disk_id.setter
660
+ def os_managed_disk_id(self, value: Optional[pulumi.Input[_builtins.str]]):
661
+ pulumi.set(self, "os_managed_disk_id", value)
662
+
638
663
  @_builtins.property
639
664
  @pulumi.getter(name="patchAssessmentMode")
640
665
  def patch_assessment_mode(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -914,6 +939,7 @@ class _LinuxVirtualMachineState:
914
939
  network_interface_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
915
940
  os_disk: Optional[pulumi.Input['LinuxVirtualMachineOsDiskArgs']] = None,
916
941
  os_image_notification: Optional[pulumi.Input['LinuxVirtualMachineOsImageNotificationArgs']] = None,
942
+ os_managed_disk_id: Optional[pulumi.Input[_builtins.str]] = None,
917
943
  patch_assessment_mode: Optional[pulumi.Input[_builtins.str]] = None,
918
944
  patch_mode: Optional[pulumi.Input[_builtins.str]] = None,
919
945
  plan: Optional[pulumi.Input['LinuxVirtualMachinePlanArgs']] = None,
@@ -951,6 +977,8 @@ class _LinuxVirtualMachineState:
951
977
 
952
978
  > **NOTE:** One of either `admin_password` or `admin_ssh_key` must be specified.
953
979
  :param pulumi.Input[_builtins.str] admin_username: The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
980
+
981
+ > **Note:** This is required unless using an existing OS Managed Disk by specifying `os_managed_disk_id`.
954
982
  :param pulumi.Input[_builtins.bool] allow_extension_operations: Should Extension Operations be allowed on this Virtual Machine? Defaults to `true`.
955
983
  :param pulumi.Input[_builtins.str] availability_set_id: Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
956
984
  :param pulumi.Input['LinuxVirtualMachineBootDiagnosticsArgs'] boot_diagnostics: A `boot_diagnostics` block as defined below.
@@ -989,6 +1017,9 @@ class _LinuxVirtualMachineState:
989
1017
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] network_interface_ids: . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
990
1018
  :param pulumi.Input['LinuxVirtualMachineOsDiskArgs'] os_disk: A `os_disk` block as defined below.
991
1019
  :param pulumi.Input['LinuxVirtualMachineOsImageNotificationArgs'] os_image_notification: A `os_image_notification` block as defined below.
1020
+ :param pulumi.Input[_builtins.str] os_managed_disk_id: The ID of an existing Managed Disk to use as the OS Disk for this Linux Virtual Machine.
1021
+
1022
+ > **Note:** When specifying an existing Managed Disk it is not currently possible to subsequently manage the Operating System Profile properties: `admin_username`, `admin_password`, `bypass_platform_safety_checks_on_user_schedule_enabled`, `computer_name`, `custom_data`, `provision_vm_agent`, `patch_mode`, `patch_assessment_mode`, or `reboot_setting`.
992
1023
  :param pulumi.Input[_builtins.str] patch_assessment_mode: Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
993
1024
 
994
1025
  > **NOTE:** If the `patch_assessment_mode` is set to `AutomaticByPlatform` then the `provision_vm_agent` field must be set to `true`.
@@ -1090,6 +1121,8 @@ class _LinuxVirtualMachineState:
1090
1121
  pulumi.set(__self__, "os_disk", os_disk)
1091
1122
  if os_image_notification is not None:
1092
1123
  pulumi.set(__self__, "os_image_notification", os_image_notification)
1124
+ if os_managed_disk_id is not None:
1125
+ pulumi.set(__self__, "os_managed_disk_id", os_managed_disk_id)
1093
1126
  if patch_assessment_mode is not None:
1094
1127
  pulumi.set(__self__, "patch_assessment_mode", patch_assessment_mode)
1095
1128
  if patch_mode is not None:
@@ -1192,6 +1225,8 @@ class _LinuxVirtualMachineState:
1192
1225
  def admin_username(self) -> Optional[pulumi.Input[_builtins.str]]:
1193
1226
  """
1194
1227
  The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
1228
+
1229
+ > **Note:** This is required unless using an existing OS Managed Disk by specifying `os_managed_disk_id`.
1195
1230
  """
1196
1231
  return pulumi.get(self, "admin_username")
1197
1232
 
@@ -1501,6 +1536,20 @@ class _LinuxVirtualMachineState:
1501
1536
  def os_image_notification(self, value: Optional[pulumi.Input['LinuxVirtualMachineOsImageNotificationArgs']]):
1502
1537
  pulumi.set(self, "os_image_notification", value)
1503
1538
 
1539
+ @_builtins.property
1540
+ @pulumi.getter(name="osManagedDiskId")
1541
+ def os_managed_disk_id(self) -> Optional[pulumi.Input[_builtins.str]]:
1542
+ """
1543
+ The ID of an existing Managed Disk to use as the OS Disk for this Linux Virtual Machine.
1544
+
1545
+ > **Note:** When specifying an existing Managed Disk it is not currently possible to subsequently manage the Operating System Profile properties: `admin_username`, `admin_password`, `bypass_platform_safety_checks_on_user_schedule_enabled`, `computer_name`, `custom_data`, `provision_vm_agent`, `patch_mode`, `patch_assessment_mode`, or `reboot_setting`.
1546
+ """
1547
+ return pulumi.get(self, "os_managed_disk_id")
1548
+
1549
+ @os_managed_disk_id.setter
1550
+ def os_managed_disk_id(self, value: Optional[pulumi.Input[_builtins.str]]):
1551
+ pulumi.set(self, "os_managed_disk_id", value)
1552
+
1504
1553
  @_builtins.property
1505
1554
  @pulumi.getter(name="patchAssessmentMode")
1506
1555
  def patch_assessment_mode(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -1867,6 +1916,7 @@ class LinuxVirtualMachine(pulumi.CustomResource):
1867
1916
  network_interface_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1868
1917
  os_disk: Optional[pulumi.Input[Union['LinuxVirtualMachineOsDiskArgs', 'LinuxVirtualMachineOsDiskArgsDict']]] = None,
1869
1918
  os_image_notification: Optional[pulumi.Input[Union['LinuxVirtualMachineOsImageNotificationArgs', 'LinuxVirtualMachineOsImageNotificationArgsDict']]] = None,
1919
+ os_managed_disk_id: Optional[pulumi.Input[_builtins.str]] = None,
1870
1920
  patch_assessment_mode: Optional[pulumi.Input[_builtins.str]] = None,
1871
1921
  patch_mode: Optional[pulumi.Input[_builtins.str]] = None,
1872
1922
  plan: Optional[pulumi.Input[Union['LinuxVirtualMachinePlanArgs', 'LinuxVirtualMachinePlanArgsDict']]] = None,
@@ -1984,6 +2034,8 @@ class LinuxVirtualMachine(pulumi.CustomResource):
1984
2034
 
1985
2035
  > **NOTE:** One of either `admin_password` or `admin_ssh_key` must be specified.
1986
2036
  :param pulumi.Input[_builtins.str] admin_username: The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
2037
+
2038
+ > **Note:** This is required unless using an existing OS Managed Disk by specifying `os_managed_disk_id`.
1987
2039
  :param pulumi.Input[_builtins.bool] allow_extension_operations: Should Extension Operations be allowed on this Virtual Machine? Defaults to `true`.
1988
2040
  :param pulumi.Input[_builtins.str] availability_set_id: Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
1989
2041
  :param pulumi.Input[Union['LinuxVirtualMachineBootDiagnosticsArgs', 'LinuxVirtualMachineBootDiagnosticsArgsDict']] boot_diagnostics: A `boot_diagnostics` block as defined below.
@@ -2022,6 +2074,9 @@ class LinuxVirtualMachine(pulumi.CustomResource):
2022
2074
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] network_interface_ids: . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
2023
2075
  :param pulumi.Input[Union['LinuxVirtualMachineOsDiskArgs', 'LinuxVirtualMachineOsDiskArgsDict']] os_disk: A `os_disk` block as defined below.
2024
2076
  :param pulumi.Input[Union['LinuxVirtualMachineOsImageNotificationArgs', 'LinuxVirtualMachineOsImageNotificationArgsDict']] os_image_notification: A `os_image_notification` block as defined below.
2077
+ :param pulumi.Input[_builtins.str] os_managed_disk_id: The ID of an existing Managed Disk to use as the OS Disk for this Linux Virtual Machine.
2078
+
2079
+ > **Note:** When specifying an existing Managed Disk it is not currently possible to subsequently manage the Operating System Profile properties: `admin_username`, `admin_password`, `bypass_platform_safety_checks_on_user_schedule_enabled`, `computer_name`, `custom_data`, `provision_vm_agent`, `patch_mode`, `patch_assessment_mode`, or `reboot_setting`.
2025
2080
  :param pulumi.Input[_builtins.str] patch_assessment_mode: Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
2026
2081
 
2027
2082
  > **NOTE:** If the `patch_assessment_mode` is set to `AutomaticByPlatform` then the `provision_vm_agent` field must be set to `true`.
@@ -2195,6 +2250,7 @@ class LinuxVirtualMachine(pulumi.CustomResource):
2195
2250
  network_interface_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
2196
2251
  os_disk: Optional[pulumi.Input[Union['LinuxVirtualMachineOsDiskArgs', 'LinuxVirtualMachineOsDiskArgsDict']]] = None,
2197
2252
  os_image_notification: Optional[pulumi.Input[Union['LinuxVirtualMachineOsImageNotificationArgs', 'LinuxVirtualMachineOsImageNotificationArgsDict']]] = None,
2253
+ os_managed_disk_id: Optional[pulumi.Input[_builtins.str]] = None,
2198
2254
  patch_assessment_mode: Optional[pulumi.Input[_builtins.str]] = None,
2199
2255
  patch_mode: Optional[pulumi.Input[_builtins.str]] = None,
2200
2256
  plan: Optional[pulumi.Input[Union['LinuxVirtualMachinePlanArgs', 'LinuxVirtualMachinePlanArgsDict']]] = None,
@@ -2228,8 +2284,6 @@ class LinuxVirtualMachine(pulumi.CustomResource):
2228
2284
  __props__.__dict__["additional_capabilities"] = additional_capabilities
2229
2285
  __props__.__dict__["admin_password"] = None if admin_password is None else pulumi.Output.secret(admin_password)
2230
2286
  __props__.__dict__["admin_ssh_keys"] = admin_ssh_keys
2231
- if admin_username is None and not opts.urn:
2232
- raise TypeError("Missing required property 'admin_username'")
2233
2287
  __props__.__dict__["admin_username"] = admin_username
2234
2288
  __props__.__dict__["allow_extension_operations"] = allow_extension_operations
2235
2289
  __props__.__dict__["availability_set_id"] = availability_set_id
@@ -2259,6 +2313,7 @@ class LinuxVirtualMachine(pulumi.CustomResource):
2259
2313
  raise TypeError("Missing required property 'os_disk'")
2260
2314
  __props__.__dict__["os_disk"] = os_disk
2261
2315
  __props__.__dict__["os_image_notification"] = os_image_notification
2316
+ __props__.__dict__["os_managed_disk_id"] = os_managed_disk_id
2262
2317
  __props__.__dict__["patch_assessment_mode"] = patch_assessment_mode
2263
2318
  __props__.__dict__["patch_mode"] = patch_mode
2264
2319
  __props__.__dict__["plan"] = plan
@@ -2329,6 +2384,7 @@ class LinuxVirtualMachine(pulumi.CustomResource):
2329
2384
  network_interface_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
2330
2385
  os_disk: Optional[pulumi.Input[Union['LinuxVirtualMachineOsDiskArgs', 'LinuxVirtualMachineOsDiskArgsDict']]] = None,
2331
2386
  os_image_notification: Optional[pulumi.Input[Union['LinuxVirtualMachineOsImageNotificationArgs', 'LinuxVirtualMachineOsImageNotificationArgsDict']]] = None,
2387
+ os_managed_disk_id: Optional[pulumi.Input[_builtins.str]] = None,
2332
2388
  patch_assessment_mode: Optional[pulumi.Input[_builtins.str]] = None,
2333
2389
  patch_mode: Optional[pulumi.Input[_builtins.str]] = None,
2334
2390
  plan: Optional[pulumi.Input[Union['LinuxVirtualMachinePlanArgs', 'LinuxVirtualMachinePlanArgsDict']]] = None,
@@ -2371,6 +2427,8 @@ class LinuxVirtualMachine(pulumi.CustomResource):
2371
2427
 
2372
2428
  > **NOTE:** One of either `admin_password` or `admin_ssh_key` must be specified.
2373
2429
  :param pulumi.Input[_builtins.str] admin_username: The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
2430
+
2431
+ > **Note:** This is required unless using an existing OS Managed Disk by specifying `os_managed_disk_id`.
2374
2432
  :param pulumi.Input[_builtins.bool] allow_extension_operations: Should Extension Operations be allowed on this Virtual Machine? Defaults to `true`.
2375
2433
  :param pulumi.Input[_builtins.str] availability_set_id: Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
2376
2434
  :param pulumi.Input[Union['LinuxVirtualMachineBootDiagnosticsArgs', 'LinuxVirtualMachineBootDiagnosticsArgsDict']] boot_diagnostics: A `boot_diagnostics` block as defined below.
@@ -2409,6 +2467,9 @@ class LinuxVirtualMachine(pulumi.CustomResource):
2409
2467
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] network_interface_ids: . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
2410
2468
  :param pulumi.Input[Union['LinuxVirtualMachineOsDiskArgs', 'LinuxVirtualMachineOsDiskArgsDict']] os_disk: A `os_disk` block as defined below.
2411
2469
  :param pulumi.Input[Union['LinuxVirtualMachineOsImageNotificationArgs', 'LinuxVirtualMachineOsImageNotificationArgsDict']] os_image_notification: A `os_image_notification` block as defined below.
2470
+ :param pulumi.Input[_builtins.str] os_managed_disk_id: The ID of an existing Managed Disk to use as the OS Disk for this Linux Virtual Machine.
2471
+
2472
+ > **Note:** When specifying an existing Managed Disk it is not currently possible to subsequently manage the Operating System Profile properties: `admin_username`, `admin_password`, `bypass_platform_safety_checks_on_user_schedule_enabled`, `computer_name`, `custom_data`, `provision_vm_agent`, `patch_mode`, `patch_assessment_mode`, or `reboot_setting`.
2412
2473
  :param pulumi.Input[_builtins.str] patch_assessment_mode: Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
2413
2474
 
2414
2475
  > **NOTE:** If the `patch_assessment_mode` is set to `AutomaticByPlatform` then the `provision_vm_agent` field must be set to `true`.
@@ -2486,6 +2547,7 @@ class LinuxVirtualMachine(pulumi.CustomResource):
2486
2547
  __props__.__dict__["network_interface_ids"] = network_interface_ids
2487
2548
  __props__.__dict__["os_disk"] = os_disk
2488
2549
  __props__.__dict__["os_image_notification"] = os_image_notification
2550
+ __props__.__dict__["os_managed_disk_id"] = os_managed_disk_id
2489
2551
  __props__.__dict__["patch_assessment_mode"] = patch_assessment_mode
2490
2552
  __props__.__dict__["patch_mode"] = patch_mode
2491
2553
  __props__.__dict__["plan"] = plan
@@ -2545,15 +2607,17 @@ class LinuxVirtualMachine(pulumi.CustomResource):
2545
2607
 
2546
2608
  @_builtins.property
2547
2609
  @pulumi.getter(name="adminUsername")
2548
- def admin_username(self) -> pulumi.Output[_builtins.str]:
2610
+ def admin_username(self) -> pulumi.Output[Optional[_builtins.str]]:
2549
2611
  """
2550
2612
  The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
2613
+
2614
+ > **Note:** This is required unless using an existing OS Managed Disk by specifying `os_managed_disk_id`.
2551
2615
  """
2552
2616
  return pulumi.get(self, "admin_username")
2553
2617
 
2554
2618
  @_builtins.property
2555
2619
  @pulumi.getter(name="allowExtensionOperations")
2556
- def allow_extension_operations(self) -> pulumi.Output[Optional[_builtins.bool]]:
2620
+ def allow_extension_operations(self) -> pulumi.Output[_builtins.bool]:
2557
2621
  """
2558
2622
  Should Extension Operations be allowed on this Virtual Machine? Defaults to `true`.
2559
2623
  """
@@ -2629,7 +2693,7 @@ class LinuxVirtualMachine(pulumi.CustomResource):
2629
2693
 
2630
2694
  @_builtins.property
2631
2695
  @pulumi.getter(name="disablePasswordAuthentication")
2632
- def disable_password_authentication(self) -> pulumi.Output[Optional[_builtins.bool]]:
2696
+ def disable_password_authentication(self) -> pulumi.Output[_builtins.bool]:
2633
2697
  """
2634
2698
  Should Password Authentication be disabled on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.
2635
2699
 
@@ -2757,9 +2821,19 @@ class LinuxVirtualMachine(pulumi.CustomResource):
2757
2821
  """
2758
2822
  return pulumi.get(self, "os_image_notification")
2759
2823
 
2824
+ @_builtins.property
2825
+ @pulumi.getter(name="osManagedDiskId")
2826
+ def os_managed_disk_id(self) -> pulumi.Output[_builtins.str]:
2827
+ """
2828
+ The ID of an existing Managed Disk to use as the OS Disk for this Linux Virtual Machine.
2829
+
2830
+ > **Note:** When specifying an existing Managed Disk it is not currently possible to subsequently manage the Operating System Profile properties: `admin_username`, `admin_password`, `bypass_platform_safety_checks_on_user_schedule_enabled`, `computer_name`, `custom_data`, `provision_vm_agent`, `patch_mode`, `patch_assessment_mode`, or `reboot_setting`.
2831
+ """
2832
+ return pulumi.get(self, "os_managed_disk_id")
2833
+
2760
2834
  @_builtins.property
2761
2835
  @pulumi.getter(name="patchAssessmentMode")
2762
- def patch_assessment_mode(self) -> pulumi.Output[Optional[_builtins.str]]:
2836
+ def patch_assessment_mode(self) -> pulumi.Output[_builtins.str]:
2763
2837
  """
2764
2838
  Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
2765
2839
 
@@ -2769,7 +2843,7 @@ class LinuxVirtualMachine(pulumi.CustomResource):
2769
2843
 
2770
2844
  @_builtins.property
2771
2845
  @pulumi.getter(name="patchMode")
2772
- def patch_mode(self) -> pulumi.Output[Optional[_builtins.str]]:
2846
+ def patch_mode(self) -> pulumi.Output[_builtins.str]:
2773
2847
  """
2774
2848
  Specifies the mode of in-guest patching to this Linux Virtual Machine. Possible values are `AutomaticByPlatform` and `ImageDefault`. Defaults to `ImageDefault`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).
2775
2849
 
@@ -2819,7 +2893,7 @@ class LinuxVirtualMachine(pulumi.CustomResource):
2819
2893
 
2820
2894
  @_builtins.property
2821
2895
  @pulumi.getter(name="provisionVmAgent")
2822
- def provision_vm_agent(self) -> pulumi.Output[Optional[_builtins.bool]]:
2896
+ def provision_vm_agent(self) -> pulumi.Output[_builtins.bool]:
2823
2897
  """
2824
2898
  Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to `true`. Changing this forces a new resource to be created.
2825
2899