pulumi-vsphere 4.10.0a1710160860__py3-none-any.whl → 4.13.0a1736836157__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-vsphere might be problematic. Click here for more details.

Files changed (85) hide show
  1. pulumi_vsphere/__init__.py +30 -0
  2. pulumi_vsphere/_inputs.py +1816 -277
  3. pulumi_vsphere/_utilities.py +41 -5
  4. pulumi_vsphere/compute_cluster.py +937 -1488
  5. pulumi_vsphere/compute_cluster_host_group.py +67 -2
  6. pulumi_vsphere/compute_cluster_vm_affinity_rule.py +69 -34
  7. pulumi_vsphere/compute_cluster_vm_anti_affinity_rule.py +41 -2
  8. pulumi_vsphere/compute_cluster_vm_dependency_rule.py +205 -2
  9. pulumi_vsphere/compute_cluster_vm_group.py +198 -2
  10. pulumi_vsphere/compute_cluster_vm_host_rule.py +73 -2
  11. pulumi_vsphere/config/__init__.pyi +5 -0
  12. pulumi_vsphere/config/vars.py +5 -0
  13. pulumi_vsphere/content_library.py +113 -12
  14. pulumi_vsphere/content_library_item.py +143 -2
  15. pulumi_vsphere/custom_attribute.py +77 -2
  16. pulumi_vsphere/datacenter.py +48 -40
  17. pulumi_vsphere/datastore_cluster.py +217 -366
  18. pulumi_vsphere/datastore_cluster_vm_anti_affinity_rule.py +159 -2
  19. pulumi_vsphere/distributed_port_group.py +416 -189
  20. pulumi_vsphere/distributed_virtual_switch.py +571 -830
  21. pulumi_vsphere/dpm_host_override.py +63 -2
  22. pulumi_vsphere/drs_vm_override.py +67 -2
  23. pulumi_vsphere/entity_permissions.py +64 -38
  24. pulumi_vsphere/file.py +21 -24
  25. pulumi_vsphere/folder.py +148 -30
  26. pulumi_vsphere/get_compute_cluster.py +16 -9
  27. pulumi_vsphere/get_compute_cluster_host_group.py +36 -25
  28. pulumi_vsphere/get_content_library.py +23 -15
  29. pulumi_vsphere/get_content_library_item.py +29 -13
  30. pulumi_vsphere/get_custom_attribute.py +14 -9
  31. pulumi_vsphere/get_datacenter.py +30 -12
  32. pulumi_vsphere/get_datastore.py +44 -12
  33. pulumi_vsphere/get_datastore_cluster.py +31 -10
  34. pulumi_vsphere/get_datastore_stats.py +208 -0
  35. pulumi_vsphere/get_distributed_virtual_switch.py +18 -9
  36. pulumi_vsphere/get_dynamic.py +35 -25
  37. pulumi_vsphere/get_folder.py +23 -11
  38. pulumi_vsphere/get_guest_os_customization.py +26 -52
  39. pulumi_vsphere/get_host.py +16 -9
  40. pulumi_vsphere/get_host_base_images.py +104 -0
  41. pulumi_vsphere/get_host_pci_device.py +28 -19
  42. pulumi_vsphere/get_host_thumbprint.py +41 -25
  43. pulumi_vsphere/get_host_vgpu_profile.py +195 -0
  44. pulumi_vsphere/get_license.py +20 -10
  45. pulumi_vsphere/get_network.py +80 -24
  46. pulumi_vsphere/get_ovf_vm_template.py +56 -5
  47. pulumi_vsphere/get_policy.py +13 -9
  48. pulumi_vsphere/get_resource_pool.py +29 -23
  49. pulumi_vsphere/get_role.py +23 -13
  50. pulumi_vsphere/get_tag.py +16 -9
  51. pulumi_vsphere/get_tag_category.py +16 -9
  52. pulumi_vsphere/get_vapp_container.py +15 -9
  53. pulumi_vsphere/get_virtual_machine.py +233 -48
  54. pulumi_vsphere/get_vmfs_disks.py +18 -9
  55. pulumi_vsphere/guest_os_customization.py +60 -5
  56. pulumi_vsphere/ha_vm_override.py +352 -380
  57. pulumi_vsphere/host.py +244 -64
  58. pulumi_vsphere/host_port_group.py +27 -24
  59. pulumi_vsphere/host_virtual_switch.py +209 -289
  60. pulumi_vsphere/license.py +5 -32
  61. pulumi_vsphere/nas_datastore.py +74 -9
  62. pulumi_vsphere/offline_software_depot.py +185 -0
  63. pulumi_vsphere/outputs.py +774 -256
  64. pulumi_vsphere/provider.py +7 -6
  65. pulumi_vsphere/pulumi-plugin.json +2 -1
  66. pulumi_vsphere/resource_pool.py +168 -411
  67. pulumi_vsphere/role.py +33 -2
  68. pulumi_vsphere/storage_drs_vm_override.py +133 -2
  69. pulumi_vsphere/supervisor.py +967 -0
  70. pulumi_vsphere/tag.py +159 -2
  71. pulumi_vsphere/tag_category.py +83 -2
  72. pulumi_vsphere/vapp_container.py +163 -2
  73. pulumi_vsphere/vapp_entity.py +147 -2
  74. pulumi_vsphere/virtual_disk.py +123 -36
  75. pulumi_vsphere/virtual_machine.py +759 -829
  76. pulumi_vsphere/virtual_machine_class.py +447 -0
  77. pulumi_vsphere/virtual_machine_snapshot.py +13 -12
  78. pulumi_vsphere/vm_storage_policy.py +120 -127
  79. pulumi_vsphere/vmfs_datastore.py +271 -2
  80. pulumi_vsphere/vnic.py +104 -105
  81. {pulumi_vsphere-4.10.0a1710160860.dist-info → pulumi_vsphere-4.13.0a1736836157.dist-info}/METADATA +7 -6
  82. pulumi_vsphere-4.13.0a1736836157.dist-info/RECORD +86 -0
  83. {pulumi_vsphere-4.10.0a1710160860.dist-info → pulumi_vsphere-4.13.0a1736836157.dist-info}/WHEEL +1 -1
  84. pulumi_vsphere-4.10.0a1710160860.dist-info/RECORD +0 -80
  85. {pulumi_vsphere-4.10.0a1710160860.dist-info → pulumi_vsphere-4.13.0a1736836157.dist-info}/top_level.txt +0 -0
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -23,7 +28,7 @@ class GetVirtualMachineResult:
23
28
  """
24
29
  A collection of values returned by getVirtualMachine.
25
30
  """
26
- def __init__(__self__, alternate_guest_name=None, annotation=None, boot_delay=None, boot_retry_delay=None, boot_retry_enabled=None, change_version=None, cpu_hot_add_enabled=None, cpu_hot_remove_enabled=None, cpu_limit=None, cpu_performance_counters_enabled=None, cpu_reservation=None, cpu_share_count=None, cpu_share_level=None, datacenter_id=None, default_ip_address=None, disks=None, efi_secure_boot_enabled=None, enable_disk_uuid=None, enable_logging=None, ept_rvi_mode=None, extra_config=None, extra_config_reboot_required=None, firmware=None, guest_id=None, guest_ip_addresses=None, hardware_version=None, hv_mode=None, id=None, ide_controller_scan_count=None, latency_sensitivity=None, memory=None, memory_hot_add_enabled=None, memory_limit=None, memory_reservation=None, memory_share_count=None, memory_share_level=None, moid=None, name=None, nested_hv_enabled=None, network_interface_types=None, network_interfaces=None, num_cores_per_socket=None, num_cpus=None, replace_trigger=None, run_tools_scripts_after_power_on=None, run_tools_scripts_after_resume=None, run_tools_scripts_before_guest_reboot=None, run_tools_scripts_before_guest_shutdown=None, run_tools_scripts_before_guest_standby=None, sata_controller_scan_count=None, scsi_bus_sharing=None, scsi_controller_scan_count=None, scsi_type=None, storage_policy_id=None, swap_placement_policy=None, sync_time_with_host=None, sync_time_with_host_periodically=None, tools_upgrade_policy=None, uuid=None, vapp=None, vapp_transports=None, vbs_enabled=None, vvtd_enabled=None):
31
+ def __init__(__self__, alternate_guest_name=None, annotation=None, boot_delay=None, boot_retry_delay=None, boot_retry_enabled=None, change_version=None, cpu_hot_add_enabled=None, cpu_hot_remove_enabled=None, cpu_limit=None, cpu_performance_counters_enabled=None, cpu_reservation=None, cpu_share_count=None, cpu_share_level=None, datacenter_id=None, default_ip_address=None, disks=None, efi_secure_boot_enabled=None, enable_disk_uuid=None, enable_logging=None, ept_rvi_mode=None, extra_config=None, extra_config_reboot_required=None, firmware=None, folder=None, guest_id=None, guest_ip_addresses=None, hardware_version=None, hv_mode=None, id=None, ide_controller_scan_count=None, instance_uuid=None, latency_sensitivity=None, memory=None, memory_hot_add_enabled=None, memory_limit=None, memory_reservation=None, memory_reservation_locked_to_max=None, memory_share_count=None, memory_share_level=None, moid=None, name=None, nested_hv_enabled=None, network_interface_types=None, network_interfaces=None, num_cores_per_socket=None, num_cpus=None, replace_trigger=None, run_tools_scripts_after_power_on=None, run_tools_scripts_after_resume=None, run_tools_scripts_before_guest_reboot=None, run_tools_scripts_before_guest_shutdown=None, run_tools_scripts_before_guest_standby=None, sata_controller_scan_count=None, scsi_bus_sharing=None, scsi_controller_scan_count=None, scsi_type=None, storage_policy_id=None, swap_placement_policy=None, sync_time_with_host=None, sync_time_with_host_periodically=None, tools_upgrade_policy=None, uuid=None, vapp=None, vapp_transports=None, vbs_enabled=None, vtpm=None, vvtd_enabled=None):
27
32
  if alternate_guest_name and not isinstance(alternate_guest_name, str):
28
33
  raise TypeError("Expected argument 'alternate_guest_name' to be a str")
29
34
  pulumi.set(__self__, "alternate_guest_name", alternate_guest_name)
@@ -93,6 +98,9 @@ class GetVirtualMachineResult:
93
98
  if firmware and not isinstance(firmware, str):
94
99
  raise TypeError("Expected argument 'firmware' to be a str")
95
100
  pulumi.set(__self__, "firmware", firmware)
101
+ if folder and not isinstance(folder, str):
102
+ raise TypeError("Expected argument 'folder' to be a str")
103
+ pulumi.set(__self__, "folder", folder)
96
104
  if guest_id and not isinstance(guest_id, str):
97
105
  raise TypeError("Expected argument 'guest_id' to be a str")
98
106
  pulumi.set(__self__, "guest_id", guest_id)
@@ -111,6 +119,9 @@ class GetVirtualMachineResult:
111
119
  if ide_controller_scan_count and not isinstance(ide_controller_scan_count, int):
112
120
  raise TypeError("Expected argument 'ide_controller_scan_count' to be a int")
113
121
  pulumi.set(__self__, "ide_controller_scan_count", ide_controller_scan_count)
122
+ if instance_uuid and not isinstance(instance_uuid, str):
123
+ raise TypeError("Expected argument 'instance_uuid' to be a str")
124
+ pulumi.set(__self__, "instance_uuid", instance_uuid)
114
125
  if latency_sensitivity and not isinstance(latency_sensitivity, str):
115
126
  raise TypeError("Expected argument 'latency_sensitivity' to be a str")
116
127
  pulumi.set(__self__, "latency_sensitivity", latency_sensitivity)
@@ -126,6 +137,9 @@ class GetVirtualMachineResult:
126
137
  if memory_reservation and not isinstance(memory_reservation, int):
127
138
  raise TypeError("Expected argument 'memory_reservation' to be a int")
128
139
  pulumi.set(__self__, "memory_reservation", memory_reservation)
140
+ if memory_reservation_locked_to_max and not isinstance(memory_reservation_locked_to_max, bool):
141
+ raise TypeError("Expected argument 'memory_reservation_locked_to_max' to be a bool")
142
+ pulumi.set(__self__, "memory_reservation_locked_to_max", memory_reservation_locked_to_max)
129
143
  if memory_share_count and not isinstance(memory_share_count, int):
130
144
  raise TypeError("Expected argument 'memory_share_count' to be a int")
131
145
  pulumi.set(__self__, "memory_share_count", memory_share_count)
@@ -210,6 +224,9 @@ class GetVirtualMachineResult:
210
224
  if vbs_enabled and not isinstance(vbs_enabled, bool):
211
225
  raise TypeError("Expected argument 'vbs_enabled' to be a bool")
212
226
  pulumi.set(__self__, "vbs_enabled", vbs_enabled)
227
+ if vtpm and not isinstance(vtpm, bool):
228
+ raise TypeError("Expected argument 'vtpm' to be a bool")
229
+ pulumi.set(__self__, "vtpm", vtpm)
213
230
  if vvtd_enabled and not isinstance(vvtd_enabled, bool):
214
231
  raise TypeError("Expected argument 'vvtd_enabled' to be a bool")
215
232
  pulumi.set(__self__, "vvtd_enabled", vvtd_enabled)
@@ -219,7 +236,8 @@ class GetVirtualMachineResult:
219
236
  def alternate_guest_name(self) -> Optional[str]:
220
237
  """
221
238
  The alternate guest name of the virtual machine when
222
- `guest_id` is a non-specific operating system, like `otherGuest` or `otherGuest64`.
239
+ `guest_id` is a non-specific operating system, like `otherGuest` or
240
+ `otherGuest64`.
223
241
  """
224
242
  return pulumi.get(self, "alternate_guest_name")
225
243
 
@@ -295,11 +313,11 @@ class GetVirtualMachineResult:
295
313
  @pulumi.getter(name="defaultIpAddress")
296
314
  def default_ip_address(self) -> str:
297
315
  """
298
- Whenever possible, this is the first IPv4 address that is reachable through
299
- the default gateway configured on the machine, then the first reachable IPv6
300
- address, and then the first general discovered address if neither exist. If
301
- VMware Tools is not running on the virtual machine, or if the VM is powered
302
- off, this value will be blank.
316
+ Whenever possible, this is the first IPv4 address that
317
+ is reachable through the default gateway configured on the machine, then the
318
+ first reachable IPv6 address, and then the first general discovered address if
319
+ neither exist. If VMware Tools is not running on the virtual machine, or if
320
+ the VM is powered off, this value will be blank.
303
321
  """
304
322
  return pulumi.get(self, "default_ip_address")
305
323
 
@@ -311,10 +329,10 @@ class GetVirtualMachineResult:
311
329
  template. These are sorted by bus and unit number so that they can be applied
312
330
  to a `VirtualMachine` resource in the order the resource expects
313
331
  while cloning. This is useful for discovering certain disk settings while
314
- performing a linked clone, as all settings that are output by this data
315
- source must be the same on the destination virtual machine as the source.
316
- Only the first number of controllers defined by `scsi_controller_scan_count`
317
- are scanned for disks. The sub-attributes are:
332
+ performing a linked clone, as all settings that are output by this data source
333
+ must be the same on the destination virtual machine as the source. Only the
334
+ first number of controllers defined by `scsi_controller_scan_count` are
335
+ scanned for disks. The sub-attributes are:
318
336
  """
319
337
  return pulumi.get(self, "disks")
320
338
 
@@ -335,7 +353,7 @@ class GetVirtualMachineResult:
335
353
 
336
354
  @property
337
355
  @pulumi.getter(name="eptRviMode")
338
- def ept_rvi_mode(self) -> Optional[str]:
356
+ def ept_rvi_mode(self) -> str:
339
357
  return pulumi.get(self, "ept_rvi_mode")
340
358
 
341
359
  @property
@@ -352,10 +370,16 @@ class GetVirtualMachineResult:
352
370
  @pulumi.getter
353
371
  def firmware(self) -> Optional[str]:
354
372
  """
355
- The firmware type for this virtual machine. Can be `bios` or `efi`.
373
+ The firmware type for this virtual machine. Can be `bios` or
374
+ `efi`.
356
375
  """
357
376
  return pulumi.get(self, "firmware")
358
377
 
378
+ @property
379
+ @pulumi.getter
380
+ def folder(self) -> Optional[str]:
381
+ return pulumi.get(self, "folder")
382
+
359
383
  @property
360
384
  @pulumi.getter(name="guestId")
361
385
  def guest_id(self) -> str:
@@ -382,7 +406,7 @@ class GetVirtualMachineResult:
382
406
 
383
407
  @property
384
408
  @pulumi.getter(name="hvMode")
385
- def hv_mode(self) -> Optional[str]:
409
+ def hv_mode(self) -> str:
386
410
  return pulumi.get(self, "hv_mode")
387
411
 
388
412
  @property
@@ -398,6 +422,14 @@ class GetVirtualMachineResult:
398
422
  def ide_controller_scan_count(self) -> Optional[int]:
399
423
  return pulumi.get(self, "ide_controller_scan_count")
400
424
 
425
+ @property
426
+ @pulumi.getter(name="instanceUuid")
427
+ def instance_uuid(self) -> str:
428
+ """
429
+ The instance UUID of the virtual machine or template.
430
+ """
431
+ return pulumi.get(self, "instance_uuid")
432
+
401
433
  @property
402
434
  @pulumi.getter(name="latencySensitivity")
403
435
  def latency_sensitivity(self) -> Optional[str]:
@@ -426,6 +458,11 @@ class GetVirtualMachineResult:
426
458
  def memory_reservation(self) -> Optional[int]:
427
459
  return pulumi.get(self, "memory_reservation")
428
460
 
461
+ @property
462
+ @pulumi.getter(name="memoryReservationLockedToMax")
463
+ def memory_reservation_locked_to_max(self) -> Optional[bool]:
464
+ return pulumi.get(self, "memory_reservation_locked_to_max")
465
+
429
466
  @property
430
467
  @pulumi.getter(name="memoryShareCount")
431
468
  def memory_share_count(self) -> int:
@@ -457,7 +494,8 @@ class GetVirtualMachineResult:
457
494
  """
458
495
  The network interface types for each network
459
496
  interface found on the virtual machine, in device bus order. Will be one of
460
- `e1000`, `e1000e`, `pcnet32`, `sriov`, `vmxnet2`, `vmxnet3vrdma`, or `vmxnet3`.
497
+ `e1000`, `e1000e`, `pcnet32`, `sriov`, `vmxnet2`, `vmxnet3vrdma`, or
498
+ `vmxnet3`.
461
499
  """
462
500
  return pulumi.get(self, "network_interface_types")
463
501
 
@@ -465,13 +503,13 @@ class GetVirtualMachineResult:
465
503
  @pulumi.getter(name="networkInterfaces")
466
504
  def network_interfaces(self) -> Sequence['outputs.GetVirtualMachineNetworkInterfaceResult']:
467
505
  """
468
- Information about each of the network interfaces on this
469
- virtual machine or template. These are sorted by device bus order so that they
470
- can be applied to a `VirtualMachine` resource in the order the resource
471
- expects while cloning. This is useful for discovering certain network interface
472
- settings while performing a linked clone, as all settings that are output by this
473
- data source must be the same on the destination virtual machine as the source.
474
- The sub-attributes are:
506
+ Information about each of the network interfaces on
507
+ this virtual machine or template. These are sorted by device bus order so that
508
+ they can be applied to a `VirtualMachine` resource in the order the
509
+ resource expects while cloning. This is useful for discovering certain network
510
+ interface settings while performing a linked clone, as all settings that are
511
+ output by this data source must be the same on the destination virtual machine
512
+ as the source. The sub-attributes are:
475
513
  """
476
514
  return pulumi.get(self, "network_interfaces")
477
515
 
@@ -479,7 +517,8 @@ class GetVirtualMachineResult:
479
517
  @pulumi.getter(name="numCoresPerSocket")
480
518
  def num_cores_per_socket(self) -> Optional[int]:
481
519
  """
482
- The number of cores per socket for this virtual machine.
520
+ The number of cores per socket for this virtual
521
+ machine.
483
522
  """
484
523
  return pulumi.get(self, "num_cores_per_socket")
485
524
 
@@ -599,6 +638,14 @@ class GetVirtualMachineResult:
599
638
  def vbs_enabled(self) -> Optional[bool]:
600
639
  return pulumi.get(self, "vbs_enabled")
601
640
 
641
+ @property
642
+ @pulumi.getter
643
+ def vtpm(self) -> bool:
644
+ """
645
+ Indicates whether a virtual Trusted Platform Module (TPM) device is present on the virtual machine.
646
+ """
647
+ return pulumi.get(self, "vtpm")
648
+
602
649
  @property
603
650
  @pulumi.getter(name="vvtdEnabled")
604
651
  def vvtd_enabled(self) -> Optional[bool]:
@@ -634,17 +681,20 @@ class AwaitableGetVirtualMachineResult(GetVirtualMachineResult):
634
681
  extra_config=self.extra_config,
635
682
  extra_config_reboot_required=self.extra_config_reboot_required,
636
683
  firmware=self.firmware,
684
+ folder=self.folder,
637
685
  guest_id=self.guest_id,
638
686
  guest_ip_addresses=self.guest_ip_addresses,
639
687
  hardware_version=self.hardware_version,
640
688
  hv_mode=self.hv_mode,
641
689
  id=self.id,
642
690
  ide_controller_scan_count=self.ide_controller_scan_count,
691
+ instance_uuid=self.instance_uuid,
643
692
  latency_sensitivity=self.latency_sensitivity,
644
693
  memory=self.memory,
645
694
  memory_hot_add_enabled=self.memory_hot_add_enabled,
646
695
  memory_limit=self.memory_limit,
647
696
  memory_reservation=self.memory_reservation,
697
+ memory_reservation_locked_to_max=self.memory_reservation_locked_to_max,
648
698
  memory_share_count=self.memory_share_count,
649
699
  memory_share_level=self.memory_share_level,
650
700
  moid=self.moid,
@@ -673,6 +723,7 @@ class AwaitableGetVirtualMachineResult(GetVirtualMachineResult):
673
723
  vapp=self.vapp,
674
724
  vapp_transports=self.vapp_transports,
675
725
  vbs_enabled=self.vbs_enabled,
726
+ vtpm=self.vtpm,
676
727
  vvtd_enabled=self.vvtd_enabled)
677
728
 
678
729
 
@@ -696,6 +747,7 @@ def get_virtual_machine(alternate_guest_name: Optional[str] = None,
696
747
  extra_config: Optional[Mapping[str, str]] = None,
697
748
  extra_config_reboot_required: Optional[bool] = None,
698
749
  firmware: Optional[str] = None,
750
+ folder: Optional[str] = None,
699
751
  guest_id: Optional[str] = None,
700
752
  hardware_version: Optional[int] = None,
701
753
  hv_mode: Optional[str] = None,
@@ -705,6 +757,7 @@ def get_virtual_machine(alternate_guest_name: Optional[str] = None,
705
757
  memory_hot_add_enabled: Optional[bool] = None,
706
758
  memory_limit: Optional[int] = None,
707
759
  memory_reservation: Optional[int] = None,
760
+ memory_reservation_locked_to_max: Optional[bool] = None,
708
761
  memory_share_count: Optional[int] = None,
709
762
  memory_share_level: Optional[str] = None,
710
763
  moid: Optional[str] = None,
@@ -726,7 +779,7 @@ def get_virtual_machine(alternate_guest_name: Optional[str] = None,
726
779
  sync_time_with_host_periodically: Optional[bool] = None,
727
780
  tools_upgrade_policy: Optional[str] = None,
728
781
  uuid: Optional[str] = None,
729
- vapp: Optional[pulumi.InputType['GetVirtualMachineVappArgs']] = None,
782
+ vapp: Optional[Union['GetVirtualMachineVappArgs', 'GetVirtualMachineVappArgsDict']] = None,
730
783
  vbs_enabled: Optional[bool] = None,
731
784
  vvtd_enabled: Optional[bool] = None,
732
785
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetVirtualMachineResult:
@@ -739,10 +792,9 @@ def get_virtual_machine(alternate_guest_name: Optional[str] = None,
739
792
 
740
793
  ## Example Usage
741
794
 
742
- In the following example, a virtual machine template is returned by its
743
- unique name within the `Datacenter`.
795
+ In the following example, a virtual machine template is returned by its unique
796
+ name within the `Datacenter`.
744
797
 
745
- <!--Start PulumiCodeChooser -->
746
798
  ```python
747
799
  import pulumi
748
800
  import pulumi_vsphere as vsphere
@@ -751,11 +803,10 @@ def get_virtual_machine(alternate_guest_name: Optional[str] = None,
751
803
  template = vsphere.get_virtual_machine(name="ubuntu-server-template",
752
804
  datacenter_id=datacenter.id)
753
805
  ```
754
- <!--End PulumiCodeChooser -->
806
+
755
807
  In the following example, each virtual machine template is returned by its
756
808
  unique full path within the `Datacenter`.
757
809
 
758
- <!--Start PulumiCodeChooser -->
759
810
  ```python
760
811
  import pulumi
761
812
  import pulumi_vsphere as vsphere
@@ -766,25 +817,28 @@ def get_virtual_machine(alternate_guest_name: Optional[str] = None,
766
817
  development_template = vsphere.get_virtual_machine(name="development/templates/ubuntu-server-template",
767
818
  datacenter_id=datacenter.id)
768
819
  ```
769
- <!--End PulumiCodeChooser -->
770
820
 
771
821
 
772
822
  :param str alternate_guest_name: The alternate guest name of the virtual machine when
773
- `guest_id` is a non-specific operating system, like `otherGuest` or `otherGuest64`.
823
+ `guest_id` is a non-specific operating system, like `otherGuest` or
824
+ `otherGuest64`.
774
825
  :param str annotation: The user-provided description of this virtual machine.
775
826
  :param str datacenter_id: The managed object reference
776
827
  ID of the datacenter the virtual machine is located in.
777
828
  This can be omitted if the search path used in `name` is an absolute path.
778
829
  For default datacenters, use the `id` attribute from an empty
779
830
  `Datacenter` data source.
780
- :param str firmware: The firmware type for this virtual machine. Can be `bios` or `efi`.
831
+ :param str firmware: The firmware type for this virtual machine. Can be `bios` or
832
+ `efi`.
833
+ :param str folder: The name of the virtual machine folder where the virtual machine is located. The `name` argument is limited to 80 characters. If the `name` argument includes the full path to the virtual machine and exceeds the 80 characters limit, the `folder` folder argument can be used.
781
834
  :param str guest_id: The guest ID of the virtual machine or template.
782
835
  :param int hardware_version: The hardware version number on this virtual machine.
783
836
  :param int memory: The size of the virtual machine's memory, in MB.
784
837
  :param str name: The name of the virtual machine. This can be a name or
785
838
  the full path relative to the datacenter. This is required if a UUID lookup
786
839
  is not performed.
787
- :param int num_cores_per_socket: The number of cores per socket for this virtual machine.
840
+ :param int num_cores_per_socket: The number of cores per socket for this virtual
841
+ machine.
788
842
  :param int num_cpus: The total number of virtual processor cores assigned to this
789
843
  virtual machine.
790
844
  :param int scsi_controller_scan_count: The number of SCSI controllers to
@@ -819,6 +873,7 @@ def get_virtual_machine(alternate_guest_name: Optional[str] = None,
819
873
  __args__['extraConfig'] = extra_config
820
874
  __args__['extraConfigRebootRequired'] = extra_config_reboot_required
821
875
  __args__['firmware'] = firmware
876
+ __args__['folder'] = folder
822
877
  __args__['guestId'] = guest_id
823
878
  __args__['hardwareVersion'] = hardware_version
824
879
  __args__['hvMode'] = hv_mode
@@ -828,6 +883,7 @@ def get_virtual_machine(alternate_guest_name: Optional[str] = None,
828
883
  __args__['memoryHotAddEnabled'] = memory_hot_add_enabled
829
884
  __args__['memoryLimit'] = memory_limit
830
885
  __args__['memoryReservation'] = memory_reservation
886
+ __args__['memoryReservationLockedToMax'] = memory_reservation_locked_to_max
831
887
  __args__['memoryShareCount'] = memory_share_count
832
888
  __args__['memoryShareLevel'] = memory_share_level
833
889
  __args__['moid'] = moid
@@ -879,17 +935,20 @@ def get_virtual_machine(alternate_guest_name: Optional[str] = None,
879
935
  extra_config=pulumi.get(__ret__, 'extra_config'),
880
936
  extra_config_reboot_required=pulumi.get(__ret__, 'extra_config_reboot_required'),
881
937
  firmware=pulumi.get(__ret__, 'firmware'),
938
+ folder=pulumi.get(__ret__, 'folder'),
882
939
  guest_id=pulumi.get(__ret__, 'guest_id'),
883
940
  guest_ip_addresses=pulumi.get(__ret__, 'guest_ip_addresses'),
884
941
  hardware_version=pulumi.get(__ret__, 'hardware_version'),
885
942
  hv_mode=pulumi.get(__ret__, 'hv_mode'),
886
943
  id=pulumi.get(__ret__, 'id'),
887
944
  ide_controller_scan_count=pulumi.get(__ret__, 'ide_controller_scan_count'),
945
+ instance_uuid=pulumi.get(__ret__, 'instance_uuid'),
888
946
  latency_sensitivity=pulumi.get(__ret__, 'latency_sensitivity'),
889
947
  memory=pulumi.get(__ret__, 'memory'),
890
948
  memory_hot_add_enabled=pulumi.get(__ret__, 'memory_hot_add_enabled'),
891
949
  memory_limit=pulumi.get(__ret__, 'memory_limit'),
892
950
  memory_reservation=pulumi.get(__ret__, 'memory_reservation'),
951
+ memory_reservation_locked_to_max=pulumi.get(__ret__, 'memory_reservation_locked_to_max'),
893
952
  memory_share_count=pulumi.get(__ret__, 'memory_share_count'),
894
953
  memory_share_level=pulumi.get(__ret__, 'memory_share_level'),
895
954
  moid=pulumi.get(__ret__, 'moid'),
@@ -918,10 +977,8 @@ def get_virtual_machine(alternate_guest_name: Optional[str] = None,
918
977
  vapp=pulumi.get(__ret__, 'vapp'),
919
978
  vapp_transports=pulumi.get(__ret__, 'vapp_transports'),
920
979
  vbs_enabled=pulumi.get(__ret__, 'vbs_enabled'),
980
+ vtpm=pulumi.get(__ret__, 'vtpm'),
921
981
  vvtd_enabled=pulumi.get(__ret__, 'vvtd_enabled'))
922
-
923
-
924
- @_utilities.lift_output_func(get_virtual_machine)
925
982
  def get_virtual_machine_output(alternate_guest_name: Optional[pulumi.Input[Optional[str]]] = None,
926
983
  annotation: Optional[pulumi.Input[Optional[str]]] = None,
927
984
  boot_delay: Optional[pulumi.Input[Optional[int]]] = None,
@@ -942,6 +999,7 @@ def get_virtual_machine_output(alternate_guest_name: Optional[pulumi.Input[Optio
942
999
  extra_config: Optional[pulumi.Input[Optional[Mapping[str, str]]]] = None,
943
1000
  extra_config_reboot_required: Optional[pulumi.Input[Optional[bool]]] = None,
944
1001
  firmware: Optional[pulumi.Input[Optional[str]]] = None,
1002
+ folder: Optional[pulumi.Input[Optional[str]]] = None,
945
1003
  guest_id: Optional[pulumi.Input[Optional[str]]] = None,
946
1004
  hardware_version: Optional[pulumi.Input[Optional[int]]] = None,
947
1005
  hv_mode: Optional[pulumi.Input[Optional[str]]] = None,
@@ -951,6 +1009,7 @@ def get_virtual_machine_output(alternate_guest_name: Optional[pulumi.Input[Optio
951
1009
  memory_hot_add_enabled: Optional[pulumi.Input[Optional[bool]]] = None,
952
1010
  memory_limit: Optional[pulumi.Input[Optional[int]]] = None,
953
1011
  memory_reservation: Optional[pulumi.Input[Optional[int]]] = None,
1012
+ memory_reservation_locked_to_max: Optional[pulumi.Input[Optional[bool]]] = None,
954
1013
  memory_share_count: Optional[pulumi.Input[Optional[int]]] = None,
955
1014
  memory_share_level: Optional[pulumi.Input[Optional[str]]] = None,
956
1015
  moid: Optional[pulumi.Input[Optional[str]]] = None,
@@ -972,10 +1031,10 @@ def get_virtual_machine_output(alternate_guest_name: Optional[pulumi.Input[Optio
972
1031
  sync_time_with_host_periodically: Optional[pulumi.Input[Optional[bool]]] = None,
973
1032
  tools_upgrade_policy: Optional[pulumi.Input[Optional[str]]] = None,
974
1033
  uuid: Optional[pulumi.Input[Optional[str]]] = None,
975
- vapp: Optional[pulumi.Input[Optional[pulumi.InputType['GetVirtualMachineVappArgs']]]] = None,
1034
+ vapp: Optional[pulumi.Input[Optional[Union['GetVirtualMachineVappArgs', 'GetVirtualMachineVappArgsDict']]]] = None,
976
1035
  vbs_enabled: Optional[pulumi.Input[Optional[bool]]] = None,
977
1036
  vvtd_enabled: Optional[pulumi.Input[Optional[bool]]] = None,
978
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetVirtualMachineResult]:
1037
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetVirtualMachineResult]:
979
1038
  """
980
1039
  The `VirtualMachine` data source can be used to find the UUID of an
981
1040
  existing virtual machine or template. The most common purpose is for finding
@@ -985,10 +1044,9 @@ def get_virtual_machine_output(alternate_guest_name: Optional[pulumi.Input[Optio
985
1044
 
986
1045
  ## Example Usage
987
1046
 
988
- In the following example, a virtual machine template is returned by its
989
- unique name within the `Datacenter`.
1047
+ In the following example, a virtual machine template is returned by its unique
1048
+ name within the `Datacenter`.
990
1049
 
991
- <!--Start PulumiCodeChooser -->
992
1050
  ```python
993
1051
  import pulumi
994
1052
  import pulumi_vsphere as vsphere
@@ -997,11 +1055,10 @@ def get_virtual_machine_output(alternate_guest_name: Optional[pulumi.Input[Optio
997
1055
  template = vsphere.get_virtual_machine(name="ubuntu-server-template",
998
1056
  datacenter_id=datacenter.id)
999
1057
  ```
1000
- <!--End PulumiCodeChooser -->
1058
+
1001
1059
  In the following example, each virtual machine template is returned by its
1002
1060
  unique full path within the `Datacenter`.
1003
1061
 
1004
- <!--Start PulumiCodeChooser -->
1005
1062
  ```python
1006
1063
  import pulumi
1007
1064
  import pulumi_vsphere as vsphere
@@ -1012,25 +1069,28 @@ def get_virtual_machine_output(alternate_guest_name: Optional[pulumi.Input[Optio
1012
1069
  development_template = vsphere.get_virtual_machine(name="development/templates/ubuntu-server-template",
1013
1070
  datacenter_id=datacenter.id)
1014
1071
  ```
1015
- <!--End PulumiCodeChooser -->
1016
1072
 
1017
1073
 
1018
1074
  :param str alternate_guest_name: The alternate guest name of the virtual machine when
1019
- `guest_id` is a non-specific operating system, like `otherGuest` or `otherGuest64`.
1075
+ `guest_id` is a non-specific operating system, like `otherGuest` or
1076
+ `otherGuest64`.
1020
1077
  :param str annotation: The user-provided description of this virtual machine.
1021
1078
  :param str datacenter_id: The managed object reference
1022
1079
  ID of the datacenter the virtual machine is located in.
1023
1080
  This can be omitted if the search path used in `name` is an absolute path.
1024
1081
  For default datacenters, use the `id` attribute from an empty
1025
1082
  `Datacenter` data source.
1026
- :param str firmware: The firmware type for this virtual machine. Can be `bios` or `efi`.
1083
+ :param str firmware: The firmware type for this virtual machine. Can be `bios` or
1084
+ `efi`.
1085
+ :param str folder: The name of the virtual machine folder where the virtual machine is located. The `name` argument is limited to 80 characters. If the `name` argument includes the full path to the virtual machine and exceeds the 80 characters limit, the `folder` folder argument can be used.
1027
1086
  :param str guest_id: The guest ID of the virtual machine or template.
1028
1087
  :param int hardware_version: The hardware version number on this virtual machine.
1029
1088
  :param int memory: The size of the virtual machine's memory, in MB.
1030
1089
  :param str name: The name of the virtual machine. This can be a name or
1031
1090
  the full path relative to the datacenter. This is required if a UUID lookup
1032
1091
  is not performed.
1033
- :param int num_cores_per_socket: The number of cores per socket for this virtual machine.
1092
+ :param int num_cores_per_socket: The number of cores per socket for this virtual
1093
+ machine.
1034
1094
  :param int num_cpus: The total number of virtual processor cores assigned to this
1035
1095
  virtual machine.
1036
1096
  :param int scsi_controller_scan_count: The number of SCSI controllers to
@@ -1044,4 +1104,129 @@ def get_virtual_machine_output(alternate_guest_name: Optional[pulumi.Input[Optio
1044
1104
  :param str uuid: Specify this field for a UUID lookup, `name` and `datacenter_id`
1045
1105
  are not required if this is specified.
1046
1106
  """
1047
- ...
1107
+ __args__ = dict()
1108
+ __args__['alternateGuestName'] = alternate_guest_name
1109
+ __args__['annotation'] = annotation
1110
+ __args__['bootDelay'] = boot_delay
1111
+ __args__['bootRetryDelay'] = boot_retry_delay
1112
+ __args__['bootRetryEnabled'] = boot_retry_enabled
1113
+ __args__['cpuHotAddEnabled'] = cpu_hot_add_enabled
1114
+ __args__['cpuHotRemoveEnabled'] = cpu_hot_remove_enabled
1115
+ __args__['cpuLimit'] = cpu_limit
1116
+ __args__['cpuPerformanceCountersEnabled'] = cpu_performance_counters_enabled
1117
+ __args__['cpuReservation'] = cpu_reservation
1118
+ __args__['cpuShareCount'] = cpu_share_count
1119
+ __args__['cpuShareLevel'] = cpu_share_level
1120
+ __args__['datacenterId'] = datacenter_id
1121
+ __args__['efiSecureBootEnabled'] = efi_secure_boot_enabled
1122
+ __args__['enableDiskUuid'] = enable_disk_uuid
1123
+ __args__['enableLogging'] = enable_logging
1124
+ __args__['eptRviMode'] = ept_rvi_mode
1125
+ __args__['extraConfig'] = extra_config
1126
+ __args__['extraConfigRebootRequired'] = extra_config_reboot_required
1127
+ __args__['firmware'] = firmware
1128
+ __args__['folder'] = folder
1129
+ __args__['guestId'] = guest_id
1130
+ __args__['hardwareVersion'] = hardware_version
1131
+ __args__['hvMode'] = hv_mode
1132
+ __args__['ideControllerScanCount'] = ide_controller_scan_count
1133
+ __args__['latencySensitivity'] = latency_sensitivity
1134
+ __args__['memory'] = memory
1135
+ __args__['memoryHotAddEnabled'] = memory_hot_add_enabled
1136
+ __args__['memoryLimit'] = memory_limit
1137
+ __args__['memoryReservation'] = memory_reservation
1138
+ __args__['memoryReservationLockedToMax'] = memory_reservation_locked_to_max
1139
+ __args__['memoryShareCount'] = memory_share_count
1140
+ __args__['memoryShareLevel'] = memory_share_level
1141
+ __args__['moid'] = moid
1142
+ __args__['name'] = name
1143
+ __args__['nestedHvEnabled'] = nested_hv_enabled
1144
+ __args__['numCoresPerSocket'] = num_cores_per_socket
1145
+ __args__['numCpus'] = num_cpus
1146
+ __args__['replaceTrigger'] = replace_trigger
1147
+ __args__['runToolsScriptsAfterPowerOn'] = run_tools_scripts_after_power_on
1148
+ __args__['runToolsScriptsAfterResume'] = run_tools_scripts_after_resume
1149
+ __args__['runToolsScriptsBeforeGuestReboot'] = run_tools_scripts_before_guest_reboot
1150
+ __args__['runToolsScriptsBeforeGuestShutdown'] = run_tools_scripts_before_guest_shutdown
1151
+ __args__['runToolsScriptsBeforeGuestStandby'] = run_tools_scripts_before_guest_standby
1152
+ __args__['sataControllerScanCount'] = sata_controller_scan_count
1153
+ __args__['scsiControllerScanCount'] = scsi_controller_scan_count
1154
+ __args__['storagePolicyId'] = storage_policy_id
1155
+ __args__['swapPlacementPolicy'] = swap_placement_policy
1156
+ __args__['syncTimeWithHost'] = sync_time_with_host
1157
+ __args__['syncTimeWithHostPeriodically'] = sync_time_with_host_periodically
1158
+ __args__['toolsUpgradePolicy'] = tools_upgrade_policy
1159
+ __args__['uuid'] = uuid
1160
+ __args__['vapp'] = vapp
1161
+ __args__['vbsEnabled'] = vbs_enabled
1162
+ __args__['vvtdEnabled'] = vvtd_enabled
1163
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
1164
+ __ret__ = pulumi.runtime.invoke_output('vsphere:index/getVirtualMachine:getVirtualMachine', __args__, opts=opts, typ=GetVirtualMachineResult)
1165
+ return __ret__.apply(lambda __response__: GetVirtualMachineResult(
1166
+ alternate_guest_name=pulumi.get(__response__, 'alternate_guest_name'),
1167
+ annotation=pulumi.get(__response__, 'annotation'),
1168
+ boot_delay=pulumi.get(__response__, 'boot_delay'),
1169
+ boot_retry_delay=pulumi.get(__response__, 'boot_retry_delay'),
1170
+ boot_retry_enabled=pulumi.get(__response__, 'boot_retry_enabled'),
1171
+ change_version=pulumi.get(__response__, 'change_version'),
1172
+ cpu_hot_add_enabled=pulumi.get(__response__, 'cpu_hot_add_enabled'),
1173
+ cpu_hot_remove_enabled=pulumi.get(__response__, 'cpu_hot_remove_enabled'),
1174
+ cpu_limit=pulumi.get(__response__, 'cpu_limit'),
1175
+ cpu_performance_counters_enabled=pulumi.get(__response__, 'cpu_performance_counters_enabled'),
1176
+ cpu_reservation=pulumi.get(__response__, 'cpu_reservation'),
1177
+ cpu_share_count=pulumi.get(__response__, 'cpu_share_count'),
1178
+ cpu_share_level=pulumi.get(__response__, 'cpu_share_level'),
1179
+ datacenter_id=pulumi.get(__response__, 'datacenter_id'),
1180
+ default_ip_address=pulumi.get(__response__, 'default_ip_address'),
1181
+ disks=pulumi.get(__response__, 'disks'),
1182
+ efi_secure_boot_enabled=pulumi.get(__response__, 'efi_secure_boot_enabled'),
1183
+ enable_disk_uuid=pulumi.get(__response__, 'enable_disk_uuid'),
1184
+ enable_logging=pulumi.get(__response__, 'enable_logging'),
1185
+ ept_rvi_mode=pulumi.get(__response__, 'ept_rvi_mode'),
1186
+ extra_config=pulumi.get(__response__, 'extra_config'),
1187
+ extra_config_reboot_required=pulumi.get(__response__, 'extra_config_reboot_required'),
1188
+ firmware=pulumi.get(__response__, 'firmware'),
1189
+ folder=pulumi.get(__response__, 'folder'),
1190
+ guest_id=pulumi.get(__response__, 'guest_id'),
1191
+ guest_ip_addresses=pulumi.get(__response__, 'guest_ip_addresses'),
1192
+ hardware_version=pulumi.get(__response__, 'hardware_version'),
1193
+ hv_mode=pulumi.get(__response__, 'hv_mode'),
1194
+ id=pulumi.get(__response__, 'id'),
1195
+ ide_controller_scan_count=pulumi.get(__response__, 'ide_controller_scan_count'),
1196
+ instance_uuid=pulumi.get(__response__, 'instance_uuid'),
1197
+ latency_sensitivity=pulumi.get(__response__, 'latency_sensitivity'),
1198
+ memory=pulumi.get(__response__, 'memory'),
1199
+ memory_hot_add_enabled=pulumi.get(__response__, 'memory_hot_add_enabled'),
1200
+ memory_limit=pulumi.get(__response__, 'memory_limit'),
1201
+ memory_reservation=pulumi.get(__response__, 'memory_reservation'),
1202
+ memory_reservation_locked_to_max=pulumi.get(__response__, 'memory_reservation_locked_to_max'),
1203
+ memory_share_count=pulumi.get(__response__, 'memory_share_count'),
1204
+ memory_share_level=pulumi.get(__response__, 'memory_share_level'),
1205
+ moid=pulumi.get(__response__, 'moid'),
1206
+ name=pulumi.get(__response__, 'name'),
1207
+ nested_hv_enabled=pulumi.get(__response__, 'nested_hv_enabled'),
1208
+ network_interface_types=pulumi.get(__response__, 'network_interface_types'),
1209
+ network_interfaces=pulumi.get(__response__, 'network_interfaces'),
1210
+ num_cores_per_socket=pulumi.get(__response__, 'num_cores_per_socket'),
1211
+ num_cpus=pulumi.get(__response__, 'num_cpus'),
1212
+ replace_trigger=pulumi.get(__response__, 'replace_trigger'),
1213
+ run_tools_scripts_after_power_on=pulumi.get(__response__, 'run_tools_scripts_after_power_on'),
1214
+ run_tools_scripts_after_resume=pulumi.get(__response__, 'run_tools_scripts_after_resume'),
1215
+ run_tools_scripts_before_guest_reboot=pulumi.get(__response__, 'run_tools_scripts_before_guest_reboot'),
1216
+ run_tools_scripts_before_guest_shutdown=pulumi.get(__response__, 'run_tools_scripts_before_guest_shutdown'),
1217
+ run_tools_scripts_before_guest_standby=pulumi.get(__response__, 'run_tools_scripts_before_guest_standby'),
1218
+ sata_controller_scan_count=pulumi.get(__response__, 'sata_controller_scan_count'),
1219
+ scsi_bus_sharing=pulumi.get(__response__, 'scsi_bus_sharing'),
1220
+ scsi_controller_scan_count=pulumi.get(__response__, 'scsi_controller_scan_count'),
1221
+ scsi_type=pulumi.get(__response__, 'scsi_type'),
1222
+ storage_policy_id=pulumi.get(__response__, 'storage_policy_id'),
1223
+ swap_placement_policy=pulumi.get(__response__, 'swap_placement_policy'),
1224
+ sync_time_with_host=pulumi.get(__response__, 'sync_time_with_host'),
1225
+ sync_time_with_host_periodically=pulumi.get(__response__, 'sync_time_with_host_periodically'),
1226
+ tools_upgrade_policy=pulumi.get(__response__, 'tools_upgrade_policy'),
1227
+ uuid=pulumi.get(__response__, 'uuid'),
1228
+ vapp=pulumi.get(__response__, 'vapp'),
1229
+ vapp_transports=pulumi.get(__response__, 'vapp_transports'),
1230
+ vbs_enabled=pulumi.get(__response__, 'vbs_enabled'),
1231
+ vtpm=pulumi.get(__response__, 'vtpm'),
1232
+ vvtd_enabled=pulumi.get(__response__, 'vvtd_enabled')))