pulumi-vsphere 4.10.0a1709017641__py3-none-any.whl → 4.17.0a1763710194__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 (89) hide show
  1. pulumi_vsphere/__init__.py +51 -1
  2. pulumi_vsphere/_inputs.py +2568 -1025
  3. pulumi_vsphere/_utilities.py +50 -10
  4. pulumi_vsphere/compute_cluster.py +1564 -2373
  5. pulumi_vsphere/compute_cluster_host_group.py +191 -55
  6. pulumi_vsphere/compute_cluster_vm_affinity_rule.py +157 -113
  7. pulumi_vsphere/compute_cluster_vm_anti_affinity_rule.py +133 -89
  8. pulumi_vsphere/compute_cluster_vm_dependency_rule.py +314 -106
  9. pulumi_vsphere/compute_cluster_vm_group.py +256 -55
  10. pulumi_vsphere/compute_cluster_vm_host_rule.py +323 -123
  11. pulumi_vsphere/config/__init__.py +2 -1
  12. pulumi_vsphere/config/__init__.pyi +7 -2
  13. pulumi_vsphere/config/vars.py +20 -15
  14. pulumi_vsphere/configuration_profile.py +286 -0
  15. pulumi_vsphere/content_library.py +177 -71
  16. pulumi_vsphere/content_library_item.py +252 -106
  17. pulumi_vsphere/custom_attribute.py +118 -38
  18. pulumi_vsphere/datacenter.py +128 -107
  19. pulumi_vsphere/datastore_cluster.py +636 -731
  20. pulumi_vsphere/datastore_cluster_vm_anti_affinity_rule.py +251 -89
  21. pulumi_vsphere/distributed_port_group.py +1129 -967
  22. pulumi_vsphere/distributed_virtual_switch.py +1971 -2239
  23. pulumi_vsphere/distributed_virtual_switch_pvlan_mapping.py +294 -0
  24. pulumi_vsphere/dpm_host_override.py +222 -72
  25. pulumi_vsphere/drs_vm_override.py +236 -72
  26. pulumi_vsphere/entity_permissions.py +96 -69
  27. pulumi_vsphere/file.py +173 -178
  28. pulumi_vsphere/folder.py +236 -113
  29. pulumi_vsphere/get_compute_cluster.py +34 -23
  30. pulumi_vsphere/get_compute_cluster_host_group.py +52 -41
  31. pulumi_vsphere/get_configuration_profile.py +145 -0
  32. pulumi_vsphere/get_content_library.py +33 -21
  33. pulumi_vsphere/get_content_library_item.py +47 -31
  34. pulumi_vsphere/get_custom_attribute.py +26 -17
  35. pulumi_vsphere/get_datacenter.py +40 -18
  36. pulumi_vsphere/get_datastore.py +60 -24
  37. pulumi_vsphere/get_datastore_cluster.py +47 -22
  38. pulumi_vsphere/get_datastore_stats.py +204 -0
  39. pulumi_vsphere/get_distributed_virtual_switch.py +36 -23
  40. pulumi_vsphere/get_dynamic.py +55 -45
  41. pulumi_vsphere/get_folder.py +163 -25
  42. pulumi_vsphere/get_guest_os_customization.py +68 -37
  43. pulumi_vsphere/get_host.py +34 -23
  44. pulumi_vsphere/get_host_base_images.py +104 -0
  45. pulumi_vsphere/get_host_pci_device.py +78 -35
  46. pulumi_vsphere/get_host_thumbprint.py +58 -38
  47. pulumi_vsphere/get_host_vgpu_profile.py +195 -0
  48. pulumi_vsphere/get_license.py +44 -28
  49. pulumi_vsphere/get_network.py +157 -46
  50. pulumi_vsphere/get_ovf_vm_template.py +184 -301
  51. pulumi_vsphere/get_policy.py +23 -15
  52. pulumi_vsphere/get_resource_pool.py +107 -40
  53. pulumi_vsphere/get_role.py +49 -35
  54. pulumi_vsphere/get_tag.py +34 -23
  55. pulumi_vsphere/get_tag_category.py +32 -21
  56. pulumi_vsphere/get_vapp_container.py +31 -21
  57. pulumi_vsphere/get_virtual_machine.py +499 -287
  58. pulumi_vsphere/get_vmfs_disks.py +42 -29
  59. pulumi_vsphere/guest_os_customization.py +135 -79
  60. pulumi_vsphere/ha_vm_override.py +470 -577
  61. pulumi_vsphere/host.py +515 -262
  62. pulumi_vsphere/host_port_group.py +352 -355
  63. pulumi_vsphere/host_virtual_switch.py +580 -580
  64. pulumi_vsphere/license.py +110 -92
  65. pulumi_vsphere/nas_datastore.py +398 -270
  66. pulumi_vsphere/offline_software_depot.py +190 -0
  67. pulumi_vsphere/outputs.py +1582 -1027
  68. pulumi_vsphere/provider.py +172 -152
  69. pulumi_vsphere/pulumi-plugin.json +2 -1
  70. pulumi_vsphere/resource_pool.py +357 -273
  71. pulumi_vsphere/role.py +79 -47
  72. pulumi_vsphere/storage_drs_vm_override.py +225 -89
  73. pulumi_vsphere/supervisor.py +1064 -0
  74. pulumi_vsphere/tag.py +217 -55
  75. pulumi_vsphere/tag_category.py +158 -72
  76. pulumi_vsphere/vapp_container.py +425 -259
  77. pulumi_vsphere/vapp_entity.py +324 -174
  78. pulumi_vsphere/virtual_disk.py +245 -153
  79. pulumi_vsphere/virtual_machine.py +1696 -1836
  80. pulumi_vsphere/virtual_machine_class.py +448 -0
  81. pulumi_vsphere/virtual_machine_snapshot.py +137 -131
  82. pulumi_vsphere/vm_storage_policy.py +160 -154
  83. pulumi_vsphere/vmfs_datastore.py +460 -186
  84. pulumi_vsphere/vnic.py +249 -231
  85. {pulumi_vsphere-4.10.0a1709017641.dist-info → pulumi_vsphere-4.17.0a1763710194.dist-info}/METADATA +7 -6
  86. pulumi_vsphere-4.17.0a1763710194.dist-info/RECORD +89 -0
  87. {pulumi_vsphere-4.10.0a1709017641.dist-info → pulumi_vsphere-4.17.0a1763710194.dist-info}/WHEEL +1 -1
  88. pulumi_vsphere-4.10.0a1709017641.dist-info/RECORD +0 -80
  89. {pulumi_vsphere-4.10.0a1709017641.dist-info → pulumi_vsphere-4.17.0a1763710194.dist-info}/top_level.txt +0 -0
@@ -1,12 +1,17 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
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
 
12
17
  __all__ = ['CustomAttributeArgs', 'CustomAttribute']
@@ -14,23 +19,23 @@ __all__ = ['CustomAttributeArgs', 'CustomAttribute']
14
19
  @pulumi.input_type
15
20
  class CustomAttributeArgs:
16
21
  def __init__(__self__, *,
17
- managed_object_type: Optional[pulumi.Input[str]] = None,
18
- name: Optional[pulumi.Input[str]] = None):
22
+ managed_object_type: Optional[pulumi.Input[_builtins.str]] = None,
23
+ name: Optional[pulumi.Input[_builtins.str]] = None):
19
24
  """
20
25
  The set of arguments for constructing a CustomAttribute resource.
21
- :param pulumi.Input[str] managed_object_type: The object type that this attribute may be
26
+ :param pulumi.Input[_builtins.str] managed_object_type: The object type that this attribute may be
22
27
  applied to. If not set, the custom attribute may be applied to any object
23
28
  type. For a full list, review the Managed Object Types. Forces a new resource if changed.
24
- :param pulumi.Input[str] name: The name of the custom attribute.
29
+ :param pulumi.Input[_builtins.str] name: The name of the custom attribute.
25
30
  """
26
31
  if managed_object_type is not None:
27
32
  pulumi.set(__self__, "managed_object_type", managed_object_type)
28
33
  if name is not None:
29
34
  pulumi.set(__self__, "name", name)
30
35
 
31
- @property
36
+ @_builtins.property
32
37
  @pulumi.getter(name="managedObjectType")
33
- def managed_object_type(self) -> Optional[pulumi.Input[str]]:
38
+ def managed_object_type(self) -> Optional[pulumi.Input[_builtins.str]]:
34
39
  """
35
40
  The object type that this attribute may be
36
41
  applied to. If not set, the custom attribute may be applied to any object
@@ -39,42 +44,42 @@ class CustomAttributeArgs:
39
44
  return pulumi.get(self, "managed_object_type")
40
45
 
41
46
  @managed_object_type.setter
42
- def managed_object_type(self, value: Optional[pulumi.Input[str]]):
47
+ def managed_object_type(self, value: Optional[pulumi.Input[_builtins.str]]):
43
48
  pulumi.set(self, "managed_object_type", value)
44
49
 
45
- @property
50
+ @_builtins.property
46
51
  @pulumi.getter
47
- def name(self) -> Optional[pulumi.Input[str]]:
52
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
48
53
  """
49
54
  The name of the custom attribute.
50
55
  """
51
56
  return pulumi.get(self, "name")
52
57
 
53
58
  @name.setter
54
- def name(self, value: Optional[pulumi.Input[str]]):
59
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
55
60
  pulumi.set(self, "name", value)
56
61
 
57
62
 
58
63
  @pulumi.input_type
59
64
  class _CustomAttributeState:
60
65
  def __init__(__self__, *,
61
- managed_object_type: Optional[pulumi.Input[str]] = None,
62
- name: Optional[pulumi.Input[str]] = None):
66
+ managed_object_type: Optional[pulumi.Input[_builtins.str]] = None,
67
+ name: Optional[pulumi.Input[_builtins.str]] = None):
63
68
  """
64
69
  Input properties used for looking up and filtering CustomAttribute resources.
65
- :param pulumi.Input[str] managed_object_type: The object type that this attribute may be
70
+ :param pulumi.Input[_builtins.str] managed_object_type: The object type that this attribute may be
66
71
  applied to. If not set, the custom attribute may be applied to any object
67
72
  type. For a full list, review the Managed Object Types. Forces a new resource if changed.
68
- :param pulumi.Input[str] name: The name of the custom attribute.
73
+ :param pulumi.Input[_builtins.str] name: The name of the custom attribute.
69
74
  """
70
75
  if managed_object_type is not None:
71
76
  pulumi.set(__self__, "managed_object_type", managed_object_type)
72
77
  if name is not None:
73
78
  pulumi.set(__self__, "name", name)
74
79
 
75
- @property
80
+ @_builtins.property
76
81
  @pulumi.getter(name="managedObjectType")
77
- def managed_object_type(self) -> Optional[pulumi.Input[str]]:
82
+ def managed_object_type(self) -> Optional[pulumi.Input[_builtins.str]]:
78
83
  """
79
84
  The object type that this attribute may be
80
85
  applied to. If not set, the custom attribute may be applied to any object
@@ -83,38 +88,76 @@ class _CustomAttributeState:
83
88
  return pulumi.get(self, "managed_object_type")
84
89
 
85
90
  @managed_object_type.setter
86
- def managed_object_type(self, value: Optional[pulumi.Input[str]]):
91
+ def managed_object_type(self, value: Optional[pulumi.Input[_builtins.str]]):
87
92
  pulumi.set(self, "managed_object_type", value)
88
93
 
89
- @property
94
+ @_builtins.property
90
95
  @pulumi.getter
91
- def name(self) -> Optional[pulumi.Input[str]]:
96
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
92
97
  """
93
98
  The name of the custom attribute.
94
99
  """
95
100
  return pulumi.get(self, "name")
96
101
 
97
102
  @name.setter
98
- def name(self, value: Optional[pulumi.Input[str]]):
103
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
99
104
  pulumi.set(self, "name", value)
100
105
 
101
106
 
107
+ @pulumi.type_token("vsphere:index/customAttribute:CustomAttribute")
102
108
  class CustomAttribute(pulumi.CustomResource):
103
109
  @overload
104
110
  def __init__(__self__,
105
111
  resource_name: str,
106
112
  opts: Optional[pulumi.ResourceOptions] = None,
107
- managed_object_type: Optional[pulumi.Input[str]] = None,
108
- name: Optional[pulumi.Input[str]] = None,
113
+ managed_object_type: Optional[pulumi.Input[_builtins.str]] = None,
114
+ name: Optional[pulumi.Input[_builtins.str]] = None,
109
115
  __props__=None):
110
116
  """
111
- Create a CustomAttribute resource with the given unique name, props, and options.
117
+ The `CustomAttribute` resource can be used to create and manage custom
118
+ attributes, which allow users to associate user-specific meta-information with
119
+ vSphere managed objects. Custom attribute values must be strings and are stored
120
+ on the vCenter Server and not the managed object.
121
+
122
+ For more information about custom attributes, click [here][ext-custom-attributes].
123
+
124
+ [ext-custom-attributes]: https://techdocs.broadcom.com/us/en/vmware-cis/vsphere/vsphere/8-0/vcenter-and-host-management-8-0/vsphere-tags-and-attributes-host-management/custom-attributes-in-the-vsphere-client-host-management.html
125
+
126
+ > **NOTE:** Custom attributes are unsupported on direct ESXi host connections
127
+ and require vCenter Server.
128
+
129
+ ## Example Usage
130
+
131
+ This example creates a custom attribute named `test-attribute`. The
132
+ resulting custom attribute can be assigned to VMs only.
133
+
134
+ ```python
135
+ import pulumi
136
+ import pulumi_vsphere as vsphere
137
+
138
+ attribute = vsphere.CustomAttribute("attribute",
139
+ name="test-attribute",
140
+ managed_object_type="VirtualMachine")
141
+ ```
142
+
143
+ ## Import
144
+
145
+ An existing custom attribute can be imported into this resource
146
+
147
+ via its name, using the following command:
148
+
149
+ [docs-import]: https://developer.hashicorp.com/terraform/cli/import
150
+
151
+ ```sh
152
+ $ pulumi import vsphere:index/customAttribute:CustomAttribute attribute terraform-test-attribute
153
+ ```
154
+
112
155
  :param str resource_name: The name of the resource.
113
156
  :param pulumi.ResourceOptions opts: Options for the resource.
114
- :param pulumi.Input[str] managed_object_type: The object type that this attribute may be
157
+ :param pulumi.Input[_builtins.str] managed_object_type: The object type that this attribute may be
115
158
  applied to. If not set, the custom attribute may be applied to any object
116
159
  type. For a full list, review the Managed Object Types. Forces a new resource if changed.
117
- :param pulumi.Input[str] name: The name of the custom attribute.
160
+ :param pulumi.Input[_builtins.str] name: The name of the custom attribute.
118
161
  """
119
162
  ...
120
163
  @overload
@@ -123,7 +166,44 @@ class CustomAttribute(pulumi.CustomResource):
123
166
  args: Optional[CustomAttributeArgs] = None,
124
167
  opts: Optional[pulumi.ResourceOptions] = None):
125
168
  """
126
- Create a CustomAttribute resource with the given unique name, props, and options.
169
+ The `CustomAttribute` resource can be used to create and manage custom
170
+ attributes, which allow users to associate user-specific meta-information with
171
+ vSphere managed objects. Custom attribute values must be strings and are stored
172
+ on the vCenter Server and not the managed object.
173
+
174
+ For more information about custom attributes, click [here][ext-custom-attributes].
175
+
176
+ [ext-custom-attributes]: https://techdocs.broadcom.com/us/en/vmware-cis/vsphere/vsphere/8-0/vcenter-and-host-management-8-0/vsphere-tags-and-attributes-host-management/custom-attributes-in-the-vsphere-client-host-management.html
177
+
178
+ > **NOTE:** Custom attributes are unsupported on direct ESXi host connections
179
+ and require vCenter Server.
180
+
181
+ ## Example Usage
182
+
183
+ This example creates a custom attribute named `test-attribute`. The
184
+ resulting custom attribute can be assigned to VMs only.
185
+
186
+ ```python
187
+ import pulumi
188
+ import pulumi_vsphere as vsphere
189
+
190
+ attribute = vsphere.CustomAttribute("attribute",
191
+ name="test-attribute",
192
+ managed_object_type="VirtualMachine")
193
+ ```
194
+
195
+ ## Import
196
+
197
+ An existing custom attribute can be imported into this resource
198
+
199
+ via its name, using the following command:
200
+
201
+ [docs-import]: https://developer.hashicorp.com/terraform/cli/import
202
+
203
+ ```sh
204
+ $ pulumi import vsphere:index/customAttribute:CustomAttribute attribute terraform-test-attribute
205
+ ```
206
+
127
207
  :param str resource_name: The name of the resource.
128
208
  :param CustomAttributeArgs args: The arguments to use to populate this resource's properties.
129
209
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -139,8 +219,8 @@ class CustomAttribute(pulumi.CustomResource):
139
219
  def _internal_init(__self__,
140
220
  resource_name: str,
141
221
  opts: Optional[pulumi.ResourceOptions] = None,
142
- managed_object_type: Optional[pulumi.Input[str]] = None,
143
- name: Optional[pulumi.Input[str]] = None,
222
+ managed_object_type: Optional[pulumi.Input[_builtins.str]] = None,
223
+ name: Optional[pulumi.Input[_builtins.str]] = None,
144
224
  __props__=None):
145
225
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
146
226
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -162,8 +242,8 @@ class CustomAttribute(pulumi.CustomResource):
162
242
  def get(resource_name: str,
163
243
  id: pulumi.Input[str],
164
244
  opts: Optional[pulumi.ResourceOptions] = None,
165
- managed_object_type: Optional[pulumi.Input[str]] = None,
166
- name: Optional[pulumi.Input[str]] = None) -> 'CustomAttribute':
245
+ managed_object_type: Optional[pulumi.Input[_builtins.str]] = None,
246
+ name: Optional[pulumi.Input[_builtins.str]] = None) -> 'CustomAttribute':
167
247
  """
168
248
  Get an existing CustomAttribute resource's state with the given name, id, and optional extra
169
249
  properties used to qualify the lookup.
@@ -171,10 +251,10 @@ class CustomAttribute(pulumi.CustomResource):
171
251
  :param str resource_name: The unique name of the resulting resource.
172
252
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
173
253
  :param pulumi.ResourceOptions opts: Options for the resource.
174
- :param pulumi.Input[str] managed_object_type: The object type that this attribute may be
254
+ :param pulumi.Input[_builtins.str] managed_object_type: The object type that this attribute may be
175
255
  applied to. If not set, the custom attribute may be applied to any object
176
256
  type. For a full list, review the Managed Object Types. Forces a new resource if changed.
177
- :param pulumi.Input[str] name: The name of the custom attribute.
257
+ :param pulumi.Input[_builtins.str] name: The name of the custom attribute.
178
258
  """
179
259
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
180
260
 
@@ -184,9 +264,9 @@ class CustomAttribute(pulumi.CustomResource):
184
264
  __props__.__dict__["name"] = name
185
265
  return CustomAttribute(resource_name, opts=opts, __props__=__props__)
186
266
 
187
- @property
267
+ @_builtins.property
188
268
  @pulumi.getter(name="managedObjectType")
189
- def managed_object_type(self) -> pulumi.Output[Optional[str]]:
269
+ def managed_object_type(self) -> pulumi.Output[Optional[_builtins.str]]:
190
270
  """
191
271
  The object type that this attribute may be
192
272
  applied to. If not set, the custom attribute may be applied to any object
@@ -194,9 +274,9 @@ class CustomAttribute(pulumi.CustomResource):
194
274
  """
195
275
  return pulumi.get(self, "managed_object_type")
196
276
 
197
- @property
277
+ @_builtins.property
198
278
  @pulumi.getter
199
- def name(self) -> pulumi.Output[str]:
279
+ def name(self) -> pulumi.Output[_builtins.str]:
200
280
  """
201
281
  The name of the custom attribute.
202
282
  """