pulumi-vsphere 4.11.0a1719905852__py3-none-any.whl → 4.11.0a1720619049__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.
- pulumi_vsphere/_inputs.py +12 -6
- pulumi_vsphere/compute_cluster_vm_affinity_rule.py +0 -4
- pulumi_vsphere/datacenter.py +7 -28
- pulumi_vsphere/datastore_cluster.py +0 -14
- pulumi_vsphere/distributed_port_group.py +56 -7
- pulumi_vsphere/distributed_virtual_switch.py +7 -28
- pulumi_vsphere/entity_permissions.py +56 -35
- pulumi_vsphere/folder.py +0 -21
- pulumi_vsphere/get_compute_cluster_host_group.py +18 -16
- pulumi_vsphere/get_content_library.py +10 -6
- pulumi_vsphere/get_content_library_item.py +12 -8
- pulumi_vsphere/get_datastore.py +9 -9
- pulumi_vsphere/get_datastore_stats.py +34 -32
- pulumi_vsphere/get_dynamic.py +14 -12
- pulumi_vsphere/get_guest_os_customization.py +8 -43
- pulumi_vsphere/get_host_base_images.py +6 -6
- pulumi_vsphere/get_host_pci_device.py +4 -2
- pulumi_vsphere/get_host_thumbprint.py +12 -12
- pulumi_vsphere/get_host_vgpu_profile.py +4 -2
- pulumi_vsphere/get_license.py +2 -1
- pulumi_vsphere/get_network.py +14 -14
- pulumi_vsphere/get_resource_pool.py +12 -8
- pulumi_vsphere/get_role.py +4 -4
- pulumi_vsphere/get_virtual_machine.py +58 -33
- pulumi_vsphere/guest_os_customization.py +4 -4
- pulumi_vsphere/nas_datastore.py +7 -7
- pulumi_vsphere/outputs.py +48 -40
- pulumi_vsphere/pulumi-plugin.json +1 -1
- pulumi_vsphere/resource_pool.py +2 -2
- pulumi_vsphere/supervisor.py +104 -0
- pulumi_vsphere/virtual_disk.py +7 -7
- pulumi_vsphere/virtual_machine.py +2 -2
- pulumi_vsphere/virtual_machine_class.py +2 -0
- pulumi_vsphere/virtual_machine_snapshot.py +2 -2
- pulumi_vsphere/vm_storage_policy.py +2 -2
- pulumi_vsphere/vnic.py +61 -65
- {pulumi_vsphere-4.11.0a1719905852.dist-info → pulumi_vsphere-4.11.0a1720619049.dist-info}/METADATA +1 -1
- {pulumi_vsphere-4.11.0a1719905852.dist-info → pulumi_vsphere-4.11.0a1720619049.dist-info}/RECORD +40 -40
- {pulumi_vsphere-4.11.0a1719905852.dist-info → pulumi_vsphere-4.11.0a1720619049.dist-info}/WHEEL +1 -1
- {pulumi_vsphere-4.11.0a1719905852.dist-info → pulumi_vsphere-4.11.0a1720619049.dist-info}/top_level.txt +0 -0
pulumi_vsphere/nas_datastore.py
CHANGED
|
@@ -30,7 +30,7 @@ class NasDatastoreArgs:
|
|
|
30
30
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] host_system_ids: The managed object IDs of
|
|
31
31
|
the hosts to mount the datastore on.
|
|
32
32
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] remote_hosts: The hostnames or IP addresses of the remote
|
|
33
|
-
|
|
33
|
+
servers. Only one element should be present for NFS v3 but multiple
|
|
34
34
|
can be present for NFS v4.1. Forces a new resource if changed.
|
|
35
35
|
:param pulumi.Input[str] remote_path: The remote path of the mount point. Forces a new
|
|
36
36
|
resource if changed.
|
|
@@ -104,7 +104,7 @@ class NasDatastoreArgs:
|
|
|
104
104
|
def remote_hosts(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
|
|
105
105
|
"""
|
|
106
106
|
The hostnames or IP addresses of the remote
|
|
107
|
-
|
|
107
|
+
servers. Only one element should be present for NFS v3 but multiple
|
|
108
108
|
can be present for NFS v4.1. Forces a new resource if changed.
|
|
109
109
|
"""
|
|
110
110
|
return pulumi.get(self, "remote_hosts")
|
|
@@ -303,7 +303,7 @@ class _NasDatastoreState:
|
|
|
303
303
|
:param pulumi.Input[bool] protocol_endpoint: Indicates that this NAS volume is a protocol endpoint.
|
|
304
304
|
This field is only populated if the host supports virtual datastores.
|
|
305
305
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] remote_hosts: The hostnames or IP addresses of the remote
|
|
306
|
-
|
|
306
|
+
servers. Only one element should be present for NFS v3 but multiple
|
|
307
307
|
can be present for NFS v4.1. Forces a new resource if changed.
|
|
308
308
|
:param pulumi.Input[str] remote_path: The remote path of the mount point. Forces a new
|
|
309
309
|
resource if changed.
|
|
@@ -529,7 +529,7 @@ class _NasDatastoreState:
|
|
|
529
529
|
def remote_hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
530
530
|
"""
|
|
531
531
|
The hostnames or IP addresses of the remote
|
|
532
|
-
|
|
532
|
+
servers. Only one element should be present for NFS v3 but multiple
|
|
533
533
|
can be present for NFS v4.1. Forces a new resource if changed.
|
|
534
534
|
"""
|
|
535
535
|
return pulumi.get(self, "remote_hosts")
|
|
@@ -665,7 +665,7 @@ class NasDatastore(pulumi.CustomResource):
|
|
|
665
665
|
:param pulumi.Input[str] name: The name of the datastore. Forces a new resource if
|
|
666
666
|
changed.
|
|
667
667
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] remote_hosts: The hostnames or IP addresses of the remote
|
|
668
|
-
|
|
668
|
+
servers. Only one element should be present for NFS v3 but multiple
|
|
669
669
|
can be present for NFS v4.1. Forces a new resource if changed.
|
|
670
670
|
:param pulumi.Input[str] remote_path: The remote path of the mount point. Forces a new
|
|
671
671
|
resource if changed.
|
|
@@ -817,7 +817,7 @@ class NasDatastore(pulumi.CustomResource):
|
|
|
817
817
|
:param pulumi.Input[bool] protocol_endpoint: Indicates that this NAS volume is a protocol endpoint.
|
|
818
818
|
This field is only populated if the host supports virtual datastores.
|
|
819
819
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] remote_hosts: The hostnames or IP addresses of the remote
|
|
820
|
-
|
|
820
|
+
servers. Only one element should be present for NFS v3 but multiple
|
|
821
821
|
can be present for NFS v4.1. Forces a new resource if changed.
|
|
822
822
|
:param pulumi.Input[str] remote_path: The remote path of the mount point. Forces a new
|
|
823
823
|
resource if changed.
|
|
@@ -981,7 +981,7 @@ class NasDatastore(pulumi.CustomResource):
|
|
|
981
981
|
def remote_hosts(self) -> pulumi.Output[Sequence[str]]:
|
|
982
982
|
"""
|
|
983
983
|
The hostnames or IP addresses of the remote
|
|
984
|
-
|
|
984
|
+
servers. Only one element should be present for NFS v3 but multiple
|
|
985
985
|
can be present for NFS v4.1. Forces a new resource if changed.
|
|
986
986
|
"""
|
|
987
987
|
return pulumi.get(self, "remote_hosts")
|
pulumi_vsphere/outputs.py
CHANGED
|
@@ -762,9 +762,12 @@ class EntityPermissionsPermission(dict):
|
|
|
762
762
|
role_id: str,
|
|
763
763
|
user_or_group: str):
|
|
764
764
|
"""
|
|
765
|
-
:param bool is_group: Whether user_or_group field refers to a user or a
|
|
766
|
-
|
|
767
|
-
:param
|
|
765
|
+
:param bool is_group: Whether `user_or_group` field refers to a user or a
|
|
766
|
+
group. True for a group and false for a user.
|
|
767
|
+
:param bool propagate: Whether or not this permission propagates down the
|
|
768
|
+
hierarchy to sub-entities.
|
|
769
|
+
:param str role_id: The role id of the role to be given to the user on
|
|
770
|
+
the specified entity.
|
|
768
771
|
:param str user_or_group: The user/group getting the permission.
|
|
769
772
|
"""
|
|
770
773
|
pulumi.set(__self__, "is_group", is_group)
|
|
@@ -776,7 +779,8 @@ class EntityPermissionsPermission(dict):
|
|
|
776
779
|
@pulumi.getter(name="isGroup")
|
|
777
780
|
def is_group(self) -> bool:
|
|
778
781
|
"""
|
|
779
|
-
Whether user_or_group field refers to a user or a
|
|
782
|
+
Whether `user_or_group` field refers to a user or a
|
|
783
|
+
group. True for a group and false for a user.
|
|
780
784
|
"""
|
|
781
785
|
return pulumi.get(self, "is_group")
|
|
782
786
|
|
|
@@ -784,7 +788,8 @@ class EntityPermissionsPermission(dict):
|
|
|
784
788
|
@pulumi.getter
|
|
785
789
|
def propagate(self) -> bool:
|
|
786
790
|
"""
|
|
787
|
-
Whether or not this permission propagates down the
|
|
791
|
+
Whether or not this permission propagates down the
|
|
792
|
+
hierarchy to sub-entities.
|
|
788
793
|
"""
|
|
789
794
|
return pulumi.get(self, "propagate")
|
|
790
795
|
|
|
@@ -792,7 +797,8 @@ class EntityPermissionsPermission(dict):
|
|
|
792
797
|
@pulumi.getter(name="roleId")
|
|
793
798
|
def role_id(self) -> str:
|
|
794
799
|
"""
|
|
795
|
-
The role id of the role to be given to the user on
|
|
800
|
+
The role id of the role to be given to the user on
|
|
801
|
+
the specified entity.
|
|
796
802
|
"""
|
|
797
803
|
return pulumi.get(self, "role_id")
|
|
798
804
|
|
|
@@ -3691,13 +3697,14 @@ class GetHostVgpuProfileVgpuProfileResult(dict):
|
|
|
3691
3697
|
"""
|
|
3692
3698
|
:param bool disk_snapshot_supported: Indicates whether the GPU plugin on this host is
|
|
3693
3699
|
capable of disk-only snapshots when VM is not powered off.
|
|
3694
|
-
:param bool memory_snapshot_supported: Indicates whether the GPU plugin on this host
|
|
3695
|
-
capable of memory snapshots.
|
|
3696
|
-
:param bool migrate_supported: Indicates whether the GPU plugin on this host is
|
|
3697
|
-
of migration.
|
|
3698
|
-
:param bool suspend_supported: Indicates whether the GPU plugin on this host is
|
|
3699
|
-
of suspend-resume.
|
|
3700
|
-
:param str vgpu: Name of a particular vGPU available as a shared GPU device (vGPU
|
|
3700
|
+
:param bool memory_snapshot_supported: Indicates whether the GPU plugin on this host
|
|
3701
|
+
is capable of memory snapshots.
|
|
3702
|
+
:param bool migrate_supported: Indicates whether the GPU plugin on this host is
|
|
3703
|
+
capable of migration.
|
|
3704
|
+
:param bool suspend_supported: Indicates whether the GPU plugin on this host is
|
|
3705
|
+
capable of suspend-resume.
|
|
3706
|
+
:param str vgpu: Name of a particular vGPU available as a shared GPU device (vGPU
|
|
3707
|
+
profile).
|
|
3701
3708
|
"""
|
|
3702
3709
|
pulumi.set(__self__, "disk_snapshot_supported", disk_snapshot_supported)
|
|
3703
3710
|
pulumi.set(__self__, "memory_snapshot_supported", memory_snapshot_supported)
|
|
@@ -3718,8 +3725,8 @@ class GetHostVgpuProfileVgpuProfileResult(dict):
|
|
|
3718
3725
|
@pulumi.getter(name="memorySnapshotSupported")
|
|
3719
3726
|
def memory_snapshot_supported(self) -> bool:
|
|
3720
3727
|
"""
|
|
3721
|
-
Indicates whether the GPU plugin on this host
|
|
3722
|
-
capable of memory snapshots.
|
|
3728
|
+
Indicates whether the GPU plugin on this host
|
|
3729
|
+
is capable of memory snapshots.
|
|
3723
3730
|
"""
|
|
3724
3731
|
return pulumi.get(self, "memory_snapshot_supported")
|
|
3725
3732
|
|
|
@@ -3727,8 +3734,8 @@ class GetHostVgpuProfileVgpuProfileResult(dict):
|
|
|
3727
3734
|
@pulumi.getter(name="migrateSupported")
|
|
3728
3735
|
def migrate_supported(self) -> bool:
|
|
3729
3736
|
"""
|
|
3730
|
-
Indicates whether the GPU plugin on this host is
|
|
3731
|
-
of migration.
|
|
3737
|
+
Indicates whether the GPU plugin on this host is
|
|
3738
|
+
capable of migration.
|
|
3732
3739
|
"""
|
|
3733
3740
|
return pulumi.get(self, "migrate_supported")
|
|
3734
3741
|
|
|
@@ -3736,8 +3743,8 @@ class GetHostVgpuProfileVgpuProfileResult(dict):
|
|
|
3736
3743
|
@pulumi.getter(name="suspendSupported")
|
|
3737
3744
|
def suspend_supported(self) -> bool:
|
|
3738
3745
|
"""
|
|
3739
|
-
Indicates whether the GPU plugin on this host is
|
|
3740
|
-
of suspend-resume.
|
|
3746
|
+
Indicates whether the GPU plugin on this host is
|
|
3747
|
+
capable of suspend-resume.
|
|
3741
3748
|
"""
|
|
3742
3749
|
return pulumi.get(self, "suspend_supported")
|
|
3743
3750
|
|
|
@@ -3745,7 +3752,8 @@ class GetHostVgpuProfileVgpuProfileResult(dict):
|
|
|
3745
3752
|
@pulumi.getter
|
|
3746
3753
|
def vgpu(self) -> str:
|
|
3747
3754
|
"""
|
|
3748
|
-
Name of a particular vGPU available as a shared GPU device (vGPU
|
|
3755
|
+
Name of a particular vGPU available as a shared GPU device (vGPU
|
|
3756
|
+
profile).
|
|
3749
3757
|
"""
|
|
3750
3758
|
return pulumi.get(self, "vgpu")
|
|
3751
3759
|
|
|
@@ -3824,21 +3832,21 @@ class GetVirtualMachineNetworkInterfaceResult(dict):
|
|
|
3824
3832
|
bandwidth_reservation: Optional[int] = None,
|
|
3825
3833
|
bandwidth_share_level: Optional[str] = None):
|
|
3826
3834
|
"""
|
|
3827
|
-
:param str adapter_type: The network interface types for each network interface found
|
|
3828
|
-
on the virtual machine, in device bus order. Will be one of `e1000`,
|
|
3829
|
-
`vmxnet3vrdma`, or `vmxnet3`.
|
|
3835
|
+
:param str adapter_type: The network interface types for each network interface found
|
|
3836
|
+
on the virtual machine, in device bus order. Will be one of `e1000`,
|
|
3837
|
+
`e1000e`, `vmxnet3vrdma`, or `vmxnet3`.
|
|
3830
3838
|
:param int bandwidth_share_count: The share count for this network interface when the
|
|
3831
3839
|
share level is custom.
|
|
3832
3840
|
:param str mac_address: The MAC address of this network interface.
|
|
3833
|
-
:param str network_id: The managed object reference ID of the network this interface
|
|
3834
|
-
connected to.
|
|
3841
|
+
:param str network_id: The managed object reference ID of the network this interface
|
|
3842
|
+
is connected to.
|
|
3835
3843
|
:param str physical_function: The ID of the Physical SR-IOV NIC to attach to, e.g. '0000:d8:00.0'
|
|
3836
|
-
:param int bandwidth_limit: The upper bandwidth limit of this network interface,
|
|
3844
|
+
:param int bandwidth_limit: The upper bandwidth limit of this network interface,
|
|
3837
3845
|
in Mbits/sec.
|
|
3838
|
-
:param int bandwidth_reservation: The bandwidth reservation of this network
|
|
3839
|
-
in Mbits/sec.
|
|
3840
|
-
:param str bandwidth_share_level: The bandwidth share allocation level for this
|
|
3841
|
-
Can be one of `low`, `normal`, `high`, or `custom`.
|
|
3846
|
+
:param int bandwidth_reservation: The bandwidth reservation of this network
|
|
3847
|
+
interface, in Mbits/sec.
|
|
3848
|
+
:param str bandwidth_share_level: The bandwidth share allocation level for this
|
|
3849
|
+
interface. Can be one of `low`, `normal`, `high`, or `custom`.
|
|
3842
3850
|
"""
|
|
3843
3851
|
pulumi.set(__self__, "adapter_type", adapter_type)
|
|
3844
3852
|
pulumi.set(__self__, "bandwidth_share_count", bandwidth_share_count)
|
|
@@ -3856,9 +3864,9 @@ class GetVirtualMachineNetworkInterfaceResult(dict):
|
|
|
3856
3864
|
@pulumi.getter(name="adapterType")
|
|
3857
3865
|
def adapter_type(self) -> str:
|
|
3858
3866
|
"""
|
|
3859
|
-
The network interface types for each network interface found
|
|
3860
|
-
on the virtual machine, in device bus order. Will be one of `e1000`,
|
|
3861
|
-
`vmxnet3vrdma`, or `vmxnet3`.
|
|
3867
|
+
The network interface types for each network interface found
|
|
3868
|
+
on the virtual machine, in device bus order. Will be one of `e1000`,
|
|
3869
|
+
`e1000e`, `vmxnet3vrdma`, or `vmxnet3`.
|
|
3862
3870
|
"""
|
|
3863
3871
|
return pulumi.get(self, "adapter_type")
|
|
3864
3872
|
|
|
@@ -3883,8 +3891,8 @@ class GetVirtualMachineNetworkInterfaceResult(dict):
|
|
|
3883
3891
|
@pulumi.getter(name="networkId")
|
|
3884
3892
|
def network_id(self) -> str:
|
|
3885
3893
|
"""
|
|
3886
|
-
The managed object reference ID of the network this interface
|
|
3887
|
-
connected to.
|
|
3894
|
+
The managed object reference ID of the network this interface
|
|
3895
|
+
is connected to.
|
|
3888
3896
|
"""
|
|
3889
3897
|
return pulumi.get(self, "network_id")
|
|
3890
3898
|
|
|
@@ -3900,7 +3908,7 @@ class GetVirtualMachineNetworkInterfaceResult(dict):
|
|
|
3900
3908
|
@pulumi.getter(name="bandwidthLimit")
|
|
3901
3909
|
def bandwidth_limit(self) -> Optional[int]:
|
|
3902
3910
|
"""
|
|
3903
|
-
The upper bandwidth limit of this network interface,
|
|
3911
|
+
The upper bandwidth limit of this network interface,
|
|
3904
3912
|
in Mbits/sec.
|
|
3905
3913
|
"""
|
|
3906
3914
|
return pulumi.get(self, "bandwidth_limit")
|
|
@@ -3909,8 +3917,8 @@ class GetVirtualMachineNetworkInterfaceResult(dict):
|
|
|
3909
3917
|
@pulumi.getter(name="bandwidthReservation")
|
|
3910
3918
|
def bandwidth_reservation(self) -> Optional[int]:
|
|
3911
3919
|
"""
|
|
3912
|
-
The bandwidth reservation of this network
|
|
3913
|
-
in Mbits/sec.
|
|
3920
|
+
The bandwidth reservation of this network
|
|
3921
|
+
interface, in Mbits/sec.
|
|
3914
3922
|
"""
|
|
3915
3923
|
return pulumi.get(self, "bandwidth_reservation")
|
|
3916
3924
|
|
|
@@ -3918,8 +3926,8 @@ class GetVirtualMachineNetworkInterfaceResult(dict):
|
|
|
3918
3926
|
@pulumi.getter(name="bandwidthShareLevel")
|
|
3919
3927
|
def bandwidth_share_level(self) -> Optional[str]:
|
|
3920
3928
|
"""
|
|
3921
|
-
The bandwidth share allocation level for this
|
|
3922
|
-
Can be one of `low`, `normal`, `high`, or `custom`.
|
|
3929
|
+
The bandwidth share allocation level for this
|
|
3930
|
+
interface. Can be one of `low`, `normal`, `high`, or `custom`.
|
|
3923
3931
|
"""
|
|
3924
3932
|
return pulumi.get(self, "bandwidth_share_level")
|
|
3925
3933
|
|
pulumi_vsphere/resource_pool.py
CHANGED
|
@@ -650,7 +650,7 @@ class ResourcePool(pulumi.CustomResource):
|
|
|
650
650
|
For more information on vSphere resource pools, please refer to the
|
|
651
651
|
[product documentation][ref-vsphere-resource_pools].
|
|
652
652
|
|
|
653
|
-
[ref-vsphere-resource_pools]: https://docs.vmware.com/en/VMware-vSphere/
|
|
653
|
+
[ref-vsphere-resource_pools]: https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-resource-management/GUID-60077B40-66FF-4625-934A-641703ED7601.html
|
|
654
654
|
|
|
655
655
|
## Example Usage
|
|
656
656
|
|
|
@@ -772,7 +772,7 @@ class ResourcePool(pulumi.CustomResource):
|
|
|
772
772
|
For more information on vSphere resource pools, please refer to the
|
|
773
773
|
[product documentation][ref-vsphere-resource_pools].
|
|
774
774
|
|
|
775
|
-
[ref-vsphere-resource_pools]: https://docs.vmware.com/en/VMware-vSphere/
|
|
775
|
+
[ref-vsphere-resource_pools]: https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-resource-management/GUID-60077B40-66FF-4625-934A-641703ED7601.html
|
|
776
776
|
|
|
777
777
|
## Example Usage
|
|
778
778
|
|
pulumi_vsphere/supervisor.py
CHANGED
|
@@ -541,6 +541,58 @@ class Supervisor(pulumi.CustomResource):
|
|
|
541
541
|
|
|
542
542
|
## Example Usage
|
|
543
543
|
|
|
544
|
+
### S
|
|
545
|
+
|
|
546
|
+
**Enable Workload Management on a compute cluster**
|
|
547
|
+
|
|
548
|
+
```python
|
|
549
|
+
import pulumi
|
|
550
|
+
import pulumi_vsphere as vsphere
|
|
551
|
+
|
|
552
|
+
vm_class = vsphere.VirtualMachineClass("vm_class",
|
|
553
|
+
name="custom-class",
|
|
554
|
+
cpus=4,
|
|
555
|
+
memory=4096)
|
|
556
|
+
supervisor = vsphere.Supervisor("supervisor",
|
|
557
|
+
cluster="<compute_cluster_id>",
|
|
558
|
+
storage_policy="<storage_policy_name>",
|
|
559
|
+
content_library="<content_library_id>",
|
|
560
|
+
main_dns="10.0.0.250",
|
|
561
|
+
worker_dns="10.0.0.250",
|
|
562
|
+
edge_cluster="<edge_cluster_id>",
|
|
563
|
+
dvs_uuid="<distributed_switch_uuid>",
|
|
564
|
+
sizing_hint="MEDIUM",
|
|
565
|
+
management_network=vsphere.SupervisorManagementNetworkArgs(
|
|
566
|
+
network="<portgroup_id>",
|
|
567
|
+
subnet_mask="255.255.255.0",
|
|
568
|
+
starting_address="10.0.0.150",
|
|
569
|
+
gateway="10.0.0.250",
|
|
570
|
+
address_count=5,
|
|
571
|
+
),
|
|
572
|
+
ingress_cidrs=[vsphere.SupervisorIngressCidrArgs(
|
|
573
|
+
address="10.10.10.0",
|
|
574
|
+
prefix=24,
|
|
575
|
+
)],
|
|
576
|
+
egress_cidrs=[vsphere.SupervisorEgressCidrArgs(
|
|
577
|
+
address="10.10.11.0",
|
|
578
|
+
prefix=24,
|
|
579
|
+
)],
|
|
580
|
+
pod_cidrs=[vsphere.SupervisorPodCidrArgs(
|
|
581
|
+
address="10.244.10.0",
|
|
582
|
+
prefix=23,
|
|
583
|
+
)],
|
|
584
|
+
service_cidr=vsphere.SupervisorServiceCidrArgs(
|
|
585
|
+
address="10.10.12.0",
|
|
586
|
+
prefix=24,
|
|
587
|
+
),
|
|
588
|
+
search_domains="vsphere.local",
|
|
589
|
+
namespaces=[vsphere.SupervisorNamespaceArgs(
|
|
590
|
+
name="custom-namespace",
|
|
591
|
+
content_libraries=[],
|
|
592
|
+
vm_classes=[vm_class.id],
|
|
593
|
+
)])
|
|
594
|
+
```
|
|
595
|
+
|
|
544
596
|
:param str resource_name: The name of the resource.
|
|
545
597
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
546
598
|
:param pulumi.Input[str] cluster: The identifier of the compute cluster.
|
|
@@ -575,6 +627,58 @@ class Supervisor(pulumi.CustomResource):
|
|
|
575
627
|
|
|
576
628
|
## Example Usage
|
|
577
629
|
|
|
630
|
+
### S
|
|
631
|
+
|
|
632
|
+
**Enable Workload Management on a compute cluster**
|
|
633
|
+
|
|
634
|
+
```python
|
|
635
|
+
import pulumi
|
|
636
|
+
import pulumi_vsphere as vsphere
|
|
637
|
+
|
|
638
|
+
vm_class = vsphere.VirtualMachineClass("vm_class",
|
|
639
|
+
name="custom-class",
|
|
640
|
+
cpus=4,
|
|
641
|
+
memory=4096)
|
|
642
|
+
supervisor = vsphere.Supervisor("supervisor",
|
|
643
|
+
cluster="<compute_cluster_id>",
|
|
644
|
+
storage_policy="<storage_policy_name>",
|
|
645
|
+
content_library="<content_library_id>",
|
|
646
|
+
main_dns="10.0.0.250",
|
|
647
|
+
worker_dns="10.0.0.250",
|
|
648
|
+
edge_cluster="<edge_cluster_id>",
|
|
649
|
+
dvs_uuid="<distributed_switch_uuid>",
|
|
650
|
+
sizing_hint="MEDIUM",
|
|
651
|
+
management_network=vsphere.SupervisorManagementNetworkArgs(
|
|
652
|
+
network="<portgroup_id>",
|
|
653
|
+
subnet_mask="255.255.255.0",
|
|
654
|
+
starting_address="10.0.0.150",
|
|
655
|
+
gateway="10.0.0.250",
|
|
656
|
+
address_count=5,
|
|
657
|
+
),
|
|
658
|
+
ingress_cidrs=[vsphere.SupervisorIngressCidrArgs(
|
|
659
|
+
address="10.10.10.0",
|
|
660
|
+
prefix=24,
|
|
661
|
+
)],
|
|
662
|
+
egress_cidrs=[vsphere.SupervisorEgressCidrArgs(
|
|
663
|
+
address="10.10.11.0",
|
|
664
|
+
prefix=24,
|
|
665
|
+
)],
|
|
666
|
+
pod_cidrs=[vsphere.SupervisorPodCidrArgs(
|
|
667
|
+
address="10.244.10.0",
|
|
668
|
+
prefix=23,
|
|
669
|
+
)],
|
|
670
|
+
service_cidr=vsphere.SupervisorServiceCidrArgs(
|
|
671
|
+
address="10.10.12.0",
|
|
672
|
+
prefix=24,
|
|
673
|
+
),
|
|
674
|
+
search_domains="vsphere.local",
|
|
675
|
+
namespaces=[vsphere.SupervisorNamespaceArgs(
|
|
676
|
+
name="custom-namespace",
|
|
677
|
+
content_libraries=[],
|
|
678
|
+
vm_classes=[vm_class.id],
|
|
679
|
+
)])
|
|
680
|
+
```
|
|
681
|
+
|
|
578
682
|
:param str resource_name: The name of the resource.
|
|
579
683
|
:param SupervisorArgs args: The arguments to use to populate this resource's properties.
|
|
580
684
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
pulumi_vsphere/virtual_disk.py
CHANGED
|
@@ -52,7 +52,7 @@ class VirtualDiskArgs:
|
|
|
52
52
|
information on what each kind of disk provisioning policy means, click
|
|
53
53
|
[here][docs-vmware-vm-disk-provisioning].
|
|
54
54
|
|
|
55
|
-
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/
|
|
55
|
+
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-vm-administration/GUID-4C0F4D73-82F2-4B81-8AA7-1DD752A8A5AC.html
|
|
56
56
|
"""
|
|
57
57
|
pulumi.set(__self__, "datastore", datastore)
|
|
58
58
|
pulumi.set(__self__, "size", size)
|
|
@@ -169,7 +169,7 @@ class VirtualDiskArgs:
|
|
|
169
169
|
information on what each kind of disk provisioning policy means, click
|
|
170
170
|
[here][docs-vmware-vm-disk-provisioning].
|
|
171
171
|
|
|
172
|
-
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/
|
|
172
|
+
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-vm-administration/GUID-4C0F4D73-82F2-4B81-8AA7-1DD752A8A5AC.html
|
|
173
173
|
"""
|
|
174
174
|
return pulumi.get(self, "type")
|
|
175
175
|
|
|
@@ -217,7 +217,7 @@ class _VirtualDiskState:
|
|
|
217
217
|
information on what each kind of disk provisioning policy means, click
|
|
218
218
|
[here][docs-vmware-vm-disk-provisioning].
|
|
219
219
|
|
|
220
|
-
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/
|
|
220
|
+
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-vm-administration/GUID-4C0F4D73-82F2-4B81-8AA7-1DD752A8A5AC.html
|
|
221
221
|
:param pulumi.Input[str] vmdk_path: The path, including filename, of the virtual disk to
|
|
222
222
|
be created. This needs to end in `.vmdk`.
|
|
223
223
|
"""
|
|
@@ -326,7 +326,7 @@ class _VirtualDiskState:
|
|
|
326
326
|
information on what each kind of disk provisioning policy means, click
|
|
327
327
|
[here][docs-vmware-vm-disk-provisioning].
|
|
328
328
|
|
|
329
|
-
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/
|
|
329
|
+
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-vm-administration/GUID-4C0F4D73-82F2-4B81-8AA7-1DD752A8A5AC.html
|
|
330
330
|
"""
|
|
331
331
|
return pulumi.get(self, "type")
|
|
332
332
|
|
|
@@ -392,7 +392,7 @@ class VirtualDisk(pulumi.CustomResource):
|
|
|
392
392
|
information on what each kind of disk provisioning policy means, click
|
|
393
393
|
[here][docs-vmware-vm-disk-provisioning].
|
|
394
394
|
|
|
395
|
-
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/
|
|
395
|
+
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-vm-administration/GUID-4C0F4D73-82F2-4B81-8AA7-1DD752A8A5AC.html
|
|
396
396
|
:param pulumi.Input[str] vmdk_path: The path, including filename, of the virtual disk to
|
|
397
397
|
be created. This needs to end in `.vmdk`.
|
|
398
398
|
"""
|
|
@@ -499,7 +499,7 @@ class VirtualDisk(pulumi.CustomResource):
|
|
|
499
499
|
information on what each kind of disk provisioning policy means, click
|
|
500
500
|
[here][docs-vmware-vm-disk-provisioning].
|
|
501
501
|
|
|
502
|
-
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/
|
|
502
|
+
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-vm-administration/GUID-4C0F4D73-82F2-4B81-8AA7-1DD752A8A5AC.html
|
|
503
503
|
:param pulumi.Input[str] vmdk_path: The path, including filename, of the virtual disk to
|
|
504
504
|
be created. This needs to end in `.vmdk`.
|
|
505
505
|
"""
|
|
@@ -583,7 +583,7 @@ class VirtualDisk(pulumi.CustomResource):
|
|
|
583
583
|
information on what each kind of disk provisioning policy means, click
|
|
584
584
|
[here][docs-vmware-vm-disk-provisioning].
|
|
585
585
|
|
|
586
|
-
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/
|
|
586
|
+
[docs-vmware-vm-disk-provisioning]: https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-vm-administration/GUID-4C0F4D73-82F2-4B81-8AA7-1DD752A8A5AC.html
|
|
587
587
|
"""
|
|
588
588
|
return pulumi.get(self, "type")
|
|
589
589
|
|
|
@@ -3493,7 +3493,7 @@ class VirtualMachine(pulumi.CustomResource):
|
|
|
3493
3493
|
|
|
3494
3494
|
@property
|
|
3495
3495
|
@pulumi.getter(name="eptRviMode")
|
|
3496
|
-
def ept_rvi_mode(self) -> pulumi.Output[
|
|
3496
|
+
def ept_rvi_mode(self) -> pulumi.Output[str]:
|
|
3497
3497
|
"""
|
|
3498
3498
|
The EPT/RVI (hardware memory virtualization) setting for this virtual machine. Can be one of automatic, on, or off.
|
|
3499
3499
|
"""
|
|
@@ -3574,7 +3574,7 @@ class VirtualMachine(pulumi.CustomResource):
|
|
|
3574
3574
|
|
|
3575
3575
|
@property
|
|
3576
3576
|
@pulumi.getter(name="hvMode")
|
|
3577
|
-
def hv_mode(self) -> pulumi.Output[
|
|
3577
|
+
def hv_mode(self) -> pulumi.Output[str]:
|
|
3578
3578
|
"""
|
|
3579
3579
|
The (non-nested) hardware virtualization setting for this virtual machine. Can be one of hvAuto, hvOn, or hvOff.
|
|
3580
3580
|
"""
|
|
@@ -249,6 +249,7 @@ class VirtualMachineClass(pulumi.CustomResource):
|
|
|
249
249
|
```
|
|
250
250
|
|
|
251
251
|
**Create a class with a vGPU**
|
|
252
|
+
|
|
252
253
|
```python
|
|
253
254
|
import pulumi
|
|
254
255
|
import pulumi_vsphere as vsphere
|
|
@@ -296,6 +297,7 @@ class VirtualMachineClass(pulumi.CustomResource):
|
|
|
296
297
|
```
|
|
297
298
|
|
|
298
299
|
**Create a class with a vGPU**
|
|
300
|
+
|
|
299
301
|
```python
|
|
300
302
|
import pulumi
|
|
301
303
|
import pulumi_vsphere as vsphere
|
|
@@ -290,7 +290,7 @@ class VirtualMachineSnapshot(pulumi.CustomResource):
|
|
|
290
290
|
For more information on managing snapshots and how they work in VMware, see
|
|
291
291
|
[here][ext-vm-snapshot-management].
|
|
292
292
|
|
|
293
|
-
[ext-vm-snapshot-management]: https://docs.vmware.com/en/VMware-vSphere/
|
|
293
|
+
[ext-vm-snapshot-management]: https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-esxi-host-client/GUID-CA948C69-7F58-4519-AEB1-739545EA94E5.html
|
|
294
294
|
|
|
295
295
|
> **NOTE:** A snapshot in VMware differs from traditional disk snapshots, and
|
|
296
296
|
can contain the actual running state of the virtual machine, data for all disks
|
|
@@ -351,7 +351,7 @@ class VirtualMachineSnapshot(pulumi.CustomResource):
|
|
|
351
351
|
For more information on managing snapshots and how they work in VMware, see
|
|
352
352
|
[here][ext-vm-snapshot-management].
|
|
353
353
|
|
|
354
|
-
[ext-vm-snapshot-management]: https://docs.vmware.com/en/VMware-vSphere/
|
|
354
|
+
[ext-vm-snapshot-management]: https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-esxi-host-client/GUID-CA948C69-7F58-4519-AEB1-739545EA94E5.html
|
|
355
355
|
|
|
356
356
|
> **NOTE:** A snapshot in VMware differs from traditional disk snapshots, and
|
|
357
357
|
can contain the actual running state of the virtual machine, data for all disks
|
|
@@ -227,7 +227,7 @@ class VmStoragePolicy(pulumi.CustomResource):
|
|
|
227
227
|
])
|
|
228
228
|
```
|
|
229
229
|
|
|
230
|
-
|
|
230
|
+
Lastly, when creating a virtual machine resource, a storage policy can be specified to direct virtual machine placement to a datastore which matches the policy's `tags_rules`.
|
|
231
231
|
|
|
232
232
|
```python
|
|
233
233
|
import pulumi
|
|
@@ -345,7 +345,7 @@ class VmStoragePolicy(pulumi.CustomResource):
|
|
|
345
345
|
])
|
|
346
346
|
```
|
|
347
347
|
|
|
348
|
-
|
|
348
|
+
Lastly, when creating a virtual machine resource, a storage policy can be specified to direct virtual machine placement to a datastore which matches the policy's `tags_rules`.
|
|
349
349
|
|
|
350
350
|
```python
|
|
351
351
|
import pulumi
|