pulumi-vsphere 4.14.0a1745952392__py3-none-any.whl → 4.14.0a1747752163__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/compute_cluster.py +11 -13
- pulumi_vsphere/compute_cluster_host_group.py +71 -3
- pulumi_vsphere/compute_cluster_vm_affinity_rule.py +1 -3
- pulumi_vsphere/compute_cluster_vm_anti_affinity_rule.py +5 -3
- pulumi_vsphere/compute_cluster_vm_dependency_rule.py +5 -3
- pulumi_vsphere/compute_cluster_vm_group.py +5 -3
- pulumi_vsphere/compute_cluster_vm_host_rule.py +5 -3
- pulumi_vsphere/content_library.py +5 -3
- pulumi_vsphere/content_library_item.py +5 -3
- pulumi_vsphere/custom_attribute.py +5 -3
- pulumi_vsphere/datacenter.py +1 -3
- pulumi_vsphere/datastore_cluster.py +89 -3
- pulumi_vsphere/datastore_cluster_vm_anti_affinity_rule.py +5 -3
- pulumi_vsphere/distributed_port_group.py +5 -3
- pulumi_vsphere/distributed_virtual_switch.py +5 -3
- pulumi_vsphere/distributed_virtual_switch_pvlan_mapping.py +1 -3
- pulumi_vsphere/dpm_host_override.py +89 -3
- pulumi_vsphere/drs_vm_override.py +5 -3
- pulumi_vsphere/entity_permissions.py +1 -3
- pulumi_vsphere/file.py +35 -52
- pulumi_vsphere/folder.py +17 -15
- pulumi_vsphere/get_compute_cluster_host_group.py +0 -4
- pulumi_vsphere/get_datastore_cluster.py +1 -1
- pulumi_vsphere/get_datastore_stats.py +0 -4
- pulumi_vsphere/get_dynamic.py +0 -4
- pulumi_vsphere/get_folder.py +130 -8
- pulumi_vsphere/get_guest_os_customization.py +21 -2
- pulumi_vsphere/get_license.py +8 -6
- pulumi_vsphere/get_network.py +35 -1
- pulumi_vsphere/get_ovf_vm_template.py +4 -4
- pulumi_vsphere/guest_os_customization.py +1 -3
- pulumi_vsphere/ha_vm_override.py +5 -3
- pulumi_vsphere/host.py +61 -9
- pulumi_vsphere/host_port_group.py +1 -3
- pulumi_vsphere/host_virtual_switch.py +5 -3
- pulumi_vsphere/license.py +67 -29
- pulumi_vsphere/nas_datastore.py +63 -3
- pulumi_vsphere/offline_software_depot.py +5 -3
- pulumi_vsphere/outputs.py +33 -0
- pulumi_vsphere/provider.py +21 -3
- pulumi_vsphere/pulumi-plugin.json +1 -1
- pulumi_vsphere/resource_pool.py +490 -166
- pulumi_vsphere/role.py +1 -3
- pulumi_vsphere/storage_drs_vm_override.py +5 -3
- pulumi_vsphere/supervisor.py +3 -5
- pulumi_vsphere/tag.py +5 -3
- pulumi_vsphere/tag_category.py +5 -3
- pulumi_vsphere/vapp_container.py +5 -3
- pulumi_vsphere/vapp_entity.py +5 -3
- pulumi_vsphere/virtual_disk.py +5 -3
- pulumi_vsphere/virtual_machine.py +5 -7
- pulumi_vsphere/virtual_machine_class.py +5 -7
- pulumi_vsphere/virtual_machine_snapshot.py +1 -3
- pulumi_vsphere/vm_storage_policy.py +1 -3
- pulumi_vsphere/vmfs_datastore.py +5 -3
- pulumi_vsphere/vnic.py +1 -3
- {pulumi_vsphere-4.14.0a1745952392.dist-info → pulumi_vsphere-4.14.0a1747752163.dist-info}/METADATA +3 -3
- pulumi_vsphere-4.14.0a1747752163.dist-info/RECORD +87 -0
- {pulumi_vsphere-4.14.0a1745952392.dist-info → pulumi_vsphere-4.14.0a1747752163.dist-info}/WHEEL +1 -1
- pulumi_vsphere-4.14.0a1745952392.dist-info/RECORD +0 -87
- {pulumi_vsphere-4.14.0a1745952392.dist-info → pulumi_vsphere-4.14.0a1747752163.dist-info}/top_level.txt +0 -0
pulumi_vsphere/get_folder.py
CHANGED
|
@@ -75,15 +75,76 @@ def get_folder(path: Optional[builtins.str] = None,
|
|
|
75
75
|
import pulumi
|
|
76
76
|
import pulumi_vsphere as vsphere
|
|
77
77
|
|
|
78
|
-
|
|
78
|
+
datacenter_folder_folder = vsphere.Folder("datacenter_folder",
|
|
79
|
+
path="example-datacenter-folder",
|
|
80
|
+
type="datacenter")
|
|
81
|
+
datacenter_folder = vsphere.get_folder_output(path=datacenter_folder_folder.path.apply(lambda path: f"/{path}"))
|
|
82
|
+
datacenter_datacenter = vsphere.Datacenter("datacenter",
|
|
83
|
+
name="example-datacenter",
|
|
84
|
+
folder=datacenter_folder.path,
|
|
85
|
+
opts = pulumi.ResourceOptions(depends_on=[datacenter_folder]))
|
|
86
|
+
datacenter = vsphere.get_datacenter_output(name=datacenter_datacenter.name)
|
|
87
|
+
vm_folder_folder = vsphere.Folder("vm_folder",
|
|
88
|
+
path="example-vm-folder",
|
|
89
|
+
type="vm",
|
|
90
|
+
datacenter_id=datacenter.id)
|
|
91
|
+
datastore_folder_folder = vsphere.Folder("datastore_folder",
|
|
92
|
+
path="example-datastore-folder",
|
|
93
|
+
type="datastore",
|
|
94
|
+
datacenter_id=datacenter.id)
|
|
95
|
+
network_folder_folder = vsphere.Folder("network_folder",
|
|
96
|
+
path="example-network-folder",
|
|
97
|
+
type="network",
|
|
98
|
+
datacenter_id=datacenter.id)
|
|
99
|
+
host_folder_folder = vsphere.Folder("host_folder",
|
|
100
|
+
path="example-host-folder",
|
|
101
|
+
type="host",
|
|
102
|
+
datacenter_id=datacenter.id)
|
|
103
|
+
vm_folder = vsphere.get_folder_output(path=pulumi.Output.all(
|
|
104
|
+
datacenterFolderFolderPath=datacenter_folder_folder.path,
|
|
105
|
+
name=datacenter_datacenter.name,
|
|
106
|
+
vmFolderFolderPath=vm_folder_folder.path
|
|
107
|
+
).apply(lambda resolved_outputs: f"/{resolved_outputs['datacenterFolderFolderPath']}/{resolved_outputs['name']}/vm/{resolved_outputs['vmFolderFolderPath']}")
|
|
108
|
+
)
|
|
109
|
+
datastore_folder = vsphere.get_folder_output(path=pulumi.Output.all(
|
|
110
|
+
datacenterFolderFolderPath=datacenter_folder_folder.path,
|
|
111
|
+
name=datacenter_datacenter.name,
|
|
112
|
+
datastoreFolderFolderPath=datastore_folder_folder.path
|
|
113
|
+
).apply(lambda resolved_outputs: f"/{resolved_outputs['datacenterFolderFolderPath']}/{resolved_outputs['name']}/datastore/{resolved_outputs['datastoreFolderFolderPath']}")
|
|
114
|
+
)
|
|
115
|
+
network_folder = vsphere.get_folder_output(path=pulumi.Output.all(
|
|
116
|
+
datacenterFolderFolderPath=datacenter_folder_folder.path,
|
|
117
|
+
name=datacenter_datacenter.name,
|
|
118
|
+
networkFolderFolderPath=network_folder_folder.path
|
|
119
|
+
).apply(lambda resolved_outputs: f"/{resolved_outputs['datacenterFolderFolderPath']}/{resolved_outputs['name']}/network/{resolved_outputs['networkFolderFolderPath']}")
|
|
120
|
+
)
|
|
121
|
+
host_folder = vsphere.get_folder_output(path=pulumi.Output.all(
|
|
122
|
+
datacenterFolderFolderPath=datacenter_folder_folder.path,
|
|
123
|
+
name=datacenter_datacenter.name,
|
|
124
|
+
hostFolderFolderPath=host_folder_folder.path
|
|
125
|
+
).apply(lambda resolved_outputs: f"/{resolved_outputs['datacenterFolderFolderPath']}/{resolved_outputs['name']}/host/{resolved_outputs['hostFolderFolderPath']}")
|
|
126
|
+
)
|
|
127
|
+
pulumi.export("vmFolderId", vm_folder.id)
|
|
128
|
+
pulumi.export("datastoreFolderId", datastore_folder.id)
|
|
129
|
+
pulumi.export("networkFolderId", network_folder.id)
|
|
130
|
+
pulumi.export("hostFolderId", host_folder.id)
|
|
131
|
+
pulumi.export("datacenterId", datacenter.id)
|
|
132
|
+
pulumi.export("datacenterFolderPath", datacenter_folder_folder.path)
|
|
79
133
|
```
|
|
80
134
|
|
|
81
135
|
|
|
82
136
|
:param builtins.str path: The absolute path of the folder. For example, given a
|
|
83
137
|
default datacenter of `default-dc`, a folder of type `vm`, and a folder name
|
|
84
|
-
of `
|
|
85
|
-
`/default-dc/vm/
|
|
86
|
-
|
|
138
|
+
of `example-vm-folder`, the resulting `path` would be
|
|
139
|
+
`/default-dc/vm/example-vm-folder`.
|
|
140
|
+
|
|
141
|
+
For nested datacenters, include the full hierarchy in the path. For example, if datacenter
|
|
142
|
+
`default-dc` is inside folder `parent-folder`, the path to a VM folder would be
|
|
143
|
+
`/parent-folder/default-dc/vm/example-vm-folder`.
|
|
144
|
+
|
|
145
|
+
The valid folder types to be used in a `path` are: `vm`, `host`, `datacenter`, `datastore`, or `network`.
|
|
146
|
+
|
|
147
|
+
Always include a leading slash in the `path`.
|
|
87
148
|
"""
|
|
88
149
|
__args__ = dict()
|
|
89
150
|
__args__['path'] = path
|
|
@@ -109,15 +170,76 @@ def get_folder_output(path: Optional[pulumi.Input[builtins.str]] = None,
|
|
|
109
170
|
import pulumi
|
|
110
171
|
import pulumi_vsphere as vsphere
|
|
111
172
|
|
|
112
|
-
|
|
173
|
+
datacenter_folder_folder = vsphere.Folder("datacenter_folder",
|
|
174
|
+
path="example-datacenter-folder",
|
|
175
|
+
type="datacenter")
|
|
176
|
+
datacenter_folder = vsphere.get_folder_output(path=datacenter_folder_folder.path.apply(lambda path: f"/{path}"))
|
|
177
|
+
datacenter_datacenter = vsphere.Datacenter("datacenter",
|
|
178
|
+
name="example-datacenter",
|
|
179
|
+
folder=datacenter_folder.path,
|
|
180
|
+
opts = pulumi.ResourceOptions(depends_on=[datacenter_folder]))
|
|
181
|
+
datacenter = vsphere.get_datacenter_output(name=datacenter_datacenter.name)
|
|
182
|
+
vm_folder_folder = vsphere.Folder("vm_folder",
|
|
183
|
+
path="example-vm-folder",
|
|
184
|
+
type="vm",
|
|
185
|
+
datacenter_id=datacenter.id)
|
|
186
|
+
datastore_folder_folder = vsphere.Folder("datastore_folder",
|
|
187
|
+
path="example-datastore-folder",
|
|
188
|
+
type="datastore",
|
|
189
|
+
datacenter_id=datacenter.id)
|
|
190
|
+
network_folder_folder = vsphere.Folder("network_folder",
|
|
191
|
+
path="example-network-folder",
|
|
192
|
+
type="network",
|
|
193
|
+
datacenter_id=datacenter.id)
|
|
194
|
+
host_folder_folder = vsphere.Folder("host_folder",
|
|
195
|
+
path="example-host-folder",
|
|
196
|
+
type="host",
|
|
197
|
+
datacenter_id=datacenter.id)
|
|
198
|
+
vm_folder = vsphere.get_folder_output(path=pulumi.Output.all(
|
|
199
|
+
datacenterFolderFolderPath=datacenter_folder_folder.path,
|
|
200
|
+
name=datacenter_datacenter.name,
|
|
201
|
+
vmFolderFolderPath=vm_folder_folder.path
|
|
202
|
+
).apply(lambda resolved_outputs: f"/{resolved_outputs['datacenterFolderFolderPath']}/{resolved_outputs['name']}/vm/{resolved_outputs['vmFolderFolderPath']}")
|
|
203
|
+
)
|
|
204
|
+
datastore_folder = vsphere.get_folder_output(path=pulumi.Output.all(
|
|
205
|
+
datacenterFolderFolderPath=datacenter_folder_folder.path,
|
|
206
|
+
name=datacenter_datacenter.name,
|
|
207
|
+
datastoreFolderFolderPath=datastore_folder_folder.path
|
|
208
|
+
).apply(lambda resolved_outputs: f"/{resolved_outputs['datacenterFolderFolderPath']}/{resolved_outputs['name']}/datastore/{resolved_outputs['datastoreFolderFolderPath']}")
|
|
209
|
+
)
|
|
210
|
+
network_folder = vsphere.get_folder_output(path=pulumi.Output.all(
|
|
211
|
+
datacenterFolderFolderPath=datacenter_folder_folder.path,
|
|
212
|
+
name=datacenter_datacenter.name,
|
|
213
|
+
networkFolderFolderPath=network_folder_folder.path
|
|
214
|
+
).apply(lambda resolved_outputs: f"/{resolved_outputs['datacenterFolderFolderPath']}/{resolved_outputs['name']}/network/{resolved_outputs['networkFolderFolderPath']}")
|
|
215
|
+
)
|
|
216
|
+
host_folder = vsphere.get_folder_output(path=pulumi.Output.all(
|
|
217
|
+
datacenterFolderFolderPath=datacenter_folder_folder.path,
|
|
218
|
+
name=datacenter_datacenter.name,
|
|
219
|
+
hostFolderFolderPath=host_folder_folder.path
|
|
220
|
+
).apply(lambda resolved_outputs: f"/{resolved_outputs['datacenterFolderFolderPath']}/{resolved_outputs['name']}/host/{resolved_outputs['hostFolderFolderPath']}")
|
|
221
|
+
)
|
|
222
|
+
pulumi.export("vmFolderId", vm_folder.id)
|
|
223
|
+
pulumi.export("datastoreFolderId", datastore_folder.id)
|
|
224
|
+
pulumi.export("networkFolderId", network_folder.id)
|
|
225
|
+
pulumi.export("hostFolderId", host_folder.id)
|
|
226
|
+
pulumi.export("datacenterId", datacenter.id)
|
|
227
|
+
pulumi.export("datacenterFolderPath", datacenter_folder_folder.path)
|
|
113
228
|
```
|
|
114
229
|
|
|
115
230
|
|
|
116
231
|
:param builtins.str path: The absolute path of the folder. For example, given a
|
|
117
232
|
default datacenter of `default-dc`, a folder of type `vm`, and a folder name
|
|
118
|
-
of `
|
|
119
|
-
`/default-dc/vm/
|
|
120
|
-
|
|
233
|
+
of `example-vm-folder`, the resulting `path` would be
|
|
234
|
+
`/default-dc/vm/example-vm-folder`.
|
|
235
|
+
|
|
236
|
+
For nested datacenters, include the full hierarchy in the path. For example, if datacenter
|
|
237
|
+
`default-dc` is inside folder `parent-folder`, the path to a VM folder would be
|
|
238
|
+
`/parent-folder/default-dc/vm/example-vm-folder`.
|
|
239
|
+
|
|
240
|
+
The valid folder types to be used in a `path` are: `vm`, `host`, `datacenter`, `datastore`, or `network`.
|
|
241
|
+
|
|
242
|
+
Always include a leading slash in the `path`.
|
|
121
243
|
"""
|
|
122
244
|
__args__ = dict()
|
|
123
245
|
__args__['path'] = path
|
|
@@ -54,11 +54,18 @@ class GetGuestOsCustomizationResult:
|
|
|
54
54
|
@property
|
|
55
55
|
@pulumi.getter(name="changeVersion")
|
|
56
56
|
def change_version(self) -> builtins.str:
|
|
57
|
+
"""
|
|
58
|
+
The number of last changed version to the customization
|
|
59
|
+
specification.
|
|
60
|
+
"""
|
|
57
61
|
return pulumi.get(self, "change_version")
|
|
58
62
|
|
|
59
63
|
@property
|
|
60
64
|
@pulumi.getter
|
|
61
65
|
def description(self) -> builtins.str:
|
|
66
|
+
"""
|
|
67
|
+
The description for the customization specification.
|
|
68
|
+
"""
|
|
62
69
|
return pulumi.get(self, "description")
|
|
63
70
|
|
|
64
71
|
@property
|
|
@@ -72,6 +79,10 @@ class GetGuestOsCustomizationResult:
|
|
|
72
79
|
@property
|
|
73
80
|
@pulumi.getter(name="lastUpdateTime")
|
|
74
81
|
def last_update_time(self) -> builtins.str:
|
|
82
|
+
"""
|
|
83
|
+
The time of last modification to the customization
|
|
84
|
+
specification.
|
|
85
|
+
"""
|
|
75
86
|
return pulumi.get(self, "last_update_time")
|
|
76
87
|
|
|
77
88
|
@property
|
|
@@ -82,11 +93,19 @@ class GetGuestOsCustomizationResult:
|
|
|
82
93
|
@property
|
|
83
94
|
@pulumi.getter
|
|
84
95
|
def specs(self) -> Sequence['outputs.GetGuestOsCustomizationSpecResult']:
|
|
96
|
+
"""
|
|
97
|
+
Container object for the guest operating system properties to be
|
|
98
|
+
customized. See
|
|
99
|
+
virtual machine customizations
|
|
100
|
+
"""
|
|
85
101
|
return pulumi.get(self, "specs")
|
|
86
102
|
|
|
87
103
|
@property
|
|
88
104
|
@pulumi.getter
|
|
89
105
|
def type(self) -> builtins.str:
|
|
106
|
+
"""
|
|
107
|
+
The type of customization specification: One among: Windows, Linux.
|
|
108
|
+
"""
|
|
90
109
|
return pulumi.get(self, "type")
|
|
91
110
|
|
|
92
111
|
|
|
@@ -113,7 +132,7 @@ def get_guest_os_customization(name: Optional[builtins.str] = None,
|
|
|
113
132
|
|
|
114
133
|
|
|
115
134
|
:param builtins.str name: The name of the customization specification is the unique
|
|
116
|
-
identifier per vCenter Server instance.
|
|
135
|
+
identifier per vCenter Server instance.
|
|
117
136
|
"""
|
|
118
137
|
__args__ = dict()
|
|
119
138
|
__args__['name'] = name
|
|
@@ -136,7 +155,7 @@ def get_guest_os_customization_output(name: Optional[pulumi.Input[builtins.str]]
|
|
|
136
155
|
|
|
137
156
|
|
|
138
157
|
:param builtins.str name: The name of the customization specification is the unique
|
|
139
|
-
identifier per vCenter Server instance.
|
|
158
|
+
identifier per vCenter Server instance.
|
|
140
159
|
"""
|
|
141
160
|
__args__ = dict()
|
|
142
161
|
__args__['name'] = name
|
pulumi_vsphere/get_license.py
CHANGED
|
@@ -61,14 +61,16 @@ class GetLicenseResult:
|
|
|
61
61
|
@property
|
|
62
62
|
@pulumi.getter
|
|
63
63
|
def id(self) -> builtins.str:
|
|
64
|
+
"""
|
|
65
|
+
The license key ID.
|
|
66
|
+
"""
|
|
64
67
|
return pulumi.get(self, "id")
|
|
65
68
|
|
|
66
69
|
@property
|
|
67
70
|
@pulumi.getter
|
|
68
71
|
def labels(self) -> Mapping[str, builtins.str]:
|
|
69
72
|
"""
|
|
70
|
-
A map of
|
|
71
|
-
key.
|
|
73
|
+
A map of labels applied to the license key.
|
|
72
74
|
"""
|
|
73
75
|
return pulumi.get(self, "labels")
|
|
74
76
|
|
|
@@ -89,7 +91,7 @@ class GetLicenseResult:
|
|
|
89
91
|
@pulumi.getter
|
|
90
92
|
def total(self) -> builtins.int:
|
|
91
93
|
"""
|
|
92
|
-
|
|
94
|
+
The total number of units contained in the license key.
|
|
93
95
|
"""
|
|
94
96
|
return pulumi.get(self, "total")
|
|
95
97
|
|
|
@@ -97,7 +99,7 @@ class GetLicenseResult:
|
|
|
97
99
|
@pulumi.getter
|
|
98
100
|
def used(self) -> builtins.int:
|
|
99
101
|
"""
|
|
100
|
-
The number of units
|
|
102
|
+
The number of units assigned to this license key.
|
|
101
103
|
"""
|
|
102
104
|
return pulumi.get(self, "used")
|
|
103
105
|
|
|
@@ -133,7 +135,7 @@ def get_license(license_key: Optional[builtins.str] = None,
|
|
|
133
135
|
```
|
|
134
136
|
|
|
135
137
|
|
|
136
|
-
:param builtins.str license_key: The license key.
|
|
138
|
+
:param builtins.str license_key: The license key value.
|
|
137
139
|
"""
|
|
138
140
|
__args__ = dict()
|
|
139
141
|
__args__['licenseKey'] = license_key
|
|
@@ -164,7 +166,7 @@ def get_license_output(license_key: Optional[pulumi.Input[builtins.str]] = None,
|
|
|
164
166
|
```
|
|
165
167
|
|
|
166
168
|
|
|
167
|
-
:param builtins.str license_key: The license key.
|
|
169
|
+
:param builtins.str license_key: The license key value.
|
|
168
170
|
"""
|
|
169
171
|
__args__ = dict()
|
|
170
172
|
__args__['licenseKey'] = license_key
|
pulumi_vsphere/get_network.py
CHANGED
|
@@ -29,7 +29,7 @@ class GetNetworkResult:
|
|
|
29
29
|
"""
|
|
30
30
|
A collection of values returned by getNetwork.
|
|
31
31
|
"""
|
|
32
|
-
def __init__(__self__, datacenter_id=None, distributed_virtual_switch_uuid=None, filters=None, id=None, name=None, type=None):
|
|
32
|
+
def __init__(__self__, datacenter_id=None, distributed_virtual_switch_uuid=None, filters=None, id=None, name=None, retry_interval=None, retry_timeout=None, type=None):
|
|
33
33
|
if datacenter_id and not isinstance(datacenter_id, str):
|
|
34
34
|
raise TypeError("Expected argument 'datacenter_id' to be a str")
|
|
35
35
|
pulumi.set(__self__, "datacenter_id", datacenter_id)
|
|
@@ -45,6 +45,12 @@ class GetNetworkResult:
|
|
|
45
45
|
if name and not isinstance(name, str):
|
|
46
46
|
raise TypeError("Expected argument 'name' to be a str")
|
|
47
47
|
pulumi.set(__self__, "name", name)
|
|
48
|
+
if retry_interval and not isinstance(retry_interval, int):
|
|
49
|
+
raise TypeError("Expected argument 'retry_interval' to be a int")
|
|
50
|
+
pulumi.set(__self__, "retry_interval", retry_interval)
|
|
51
|
+
if retry_timeout and not isinstance(retry_timeout, int):
|
|
52
|
+
raise TypeError("Expected argument 'retry_timeout' to be a int")
|
|
53
|
+
pulumi.set(__self__, "retry_timeout", retry_timeout)
|
|
48
54
|
if type and not isinstance(type, str):
|
|
49
55
|
raise TypeError("Expected argument 'type' to be a str")
|
|
50
56
|
pulumi.set(__self__, "type", type)
|
|
@@ -77,6 +83,16 @@ class GetNetworkResult:
|
|
|
77
83
|
def name(self) -> builtins.str:
|
|
78
84
|
return pulumi.get(self, "name")
|
|
79
85
|
|
|
86
|
+
@property
|
|
87
|
+
@pulumi.getter(name="retryInterval")
|
|
88
|
+
def retry_interval(self) -> Optional[builtins.int]:
|
|
89
|
+
return pulumi.get(self, "retry_interval")
|
|
90
|
+
|
|
91
|
+
@property
|
|
92
|
+
@pulumi.getter(name="retryTimeout")
|
|
93
|
+
def retry_timeout(self) -> Optional[builtins.int]:
|
|
94
|
+
return pulumi.get(self, "retry_timeout")
|
|
95
|
+
|
|
80
96
|
@property
|
|
81
97
|
@pulumi.getter
|
|
82
98
|
def type(self) -> builtins.str:
|
|
@@ -100,6 +116,8 @@ class AwaitableGetNetworkResult(GetNetworkResult):
|
|
|
100
116
|
filters=self.filters,
|
|
101
117
|
id=self.id,
|
|
102
118
|
name=self.name,
|
|
119
|
+
retry_interval=self.retry_interval,
|
|
120
|
+
retry_timeout=self.retry_timeout,
|
|
103
121
|
type=self.type)
|
|
104
122
|
|
|
105
123
|
|
|
@@ -107,6 +125,8 @@ def get_network(datacenter_id: Optional[builtins.str] = None,
|
|
|
107
125
|
distributed_virtual_switch_uuid: Optional[builtins.str] = None,
|
|
108
126
|
filters: Optional[Sequence[Union['GetNetworkFilterArgs', 'GetNetworkFilterArgsDict']]] = None,
|
|
109
127
|
name: Optional[builtins.str] = None,
|
|
128
|
+
retry_interval: Optional[builtins.int] = None,
|
|
129
|
+
retry_timeout: Optional[builtins.int] = None,
|
|
110
130
|
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetNetworkResult:
|
|
111
131
|
"""
|
|
112
132
|
The `get_network` data source can be used to discover the ID of a network in
|
|
@@ -151,12 +171,16 @@ def get_network(datacenter_id: Optional[builtins.str] = None,
|
|
|
151
171
|
the distributed virtual switch ID.
|
|
152
172
|
:param Sequence[Union['GetNetworkFilterArgs', 'GetNetworkFilterArgsDict']] filters: Apply a filter for the discovered network.
|
|
153
173
|
:param builtins.str name: The name of the network. This can be a name or path.
|
|
174
|
+
:param builtins.int retry_interval: The interval in milliseconds to retry the read operation if `retry_timeout` is set. Default: 500.
|
|
175
|
+
:param builtins.int retry_timeout: The timeout duration in seconds for the data source to retry read operations.
|
|
154
176
|
"""
|
|
155
177
|
__args__ = dict()
|
|
156
178
|
__args__['datacenterId'] = datacenter_id
|
|
157
179
|
__args__['distributedVirtualSwitchUuid'] = distributed_virtual_switch_uuid
|
|
158
180
|
__args__['filters'] = filters
|
|
159
181
|
__args__['name'] = name
|
|
182
|
+
__args__['retryInterval'] = retry_interval
|
|
183
|
+
__args__['retryTimeout'] = retry_timeout
|
|
160
184
|
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
161
185
|
__ret__ = pulumi.runtime.invoke('vsphere:index/getNetwork:getNetwork', __args__, opts=opts, typ=GetNetworkResult).value
|
|
162
186
|
|
|
@@ -166,11 +190,15 @@ def get_network(datacenter_id: Optional[builtins.str] = None,
|
|
|
166
190
|
filters=pulumi.get(__ret__, 'filters'),
|
|
167
191
|
id=pulumi.get(__ret__, 'id'),
|
|
168
192
|
name=pulumi.get(__ret__, 'name'),
|
|
193
|
+
retry_interval=pulumi.get(__ret__, 'retry_interval'),
|
|
194
|
+
retry_timeout=pulumi.get(__ret__, 'retry_timeout'),
|
|
169
195
|
type=pulumi.get(__ret__, 'type'))
|
|
170
196
|
def get_network_output(datacenter_id: Optional[pulumi.Input[Optional[builtins.str]]] = None,
|
|
171
197
|
distributed_virtual_switch_uuid: Optional[pulumi.Input[Optional[builtins.str]]] = None,
|
|
172
198
|
filters: Optional[pulumi.Input[Optional[Sequence[Union['GetNetworkFilterArgs', 'GetNetworkFilterArgsDict']]]]] = None,
|
|
173
199
|
name: Optional[pulumi.Input[builtins.str]] = None,
|
|
200
|
+
retry_interval: Optional[pulumi.Input[Optional[builtins.int]]] = None,
|
|
201
|
+
retry_timeout: Optional[pulumi.Input[Optional[builtins.int]]] = None,
|
|
174
202
|
opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetNetworkResult]:
|
|
175
203
|
"""
|
|
176
204
|
The `get_network` data source can be used to discover the ID of a network in
|
|
@@ -215,12 +243,16 @@ def get_network_output(datacenter_id: Optional[pulumi.Input[Optional[builtins.st
|
|
|
215
243
|
the distributed virtual switch ID.
|
|
216
244
|
:param Sequence[Union['GetNetworkFilterArgs', 'GetNetworkFilterArgsDict']] filters: Apply a filter for the discovered network.
|
|
217
245
|
:param builtins.str name: The name of the network. This can be a name or path.
|
|
246
|
+
:param builtins.int retry_interval: The interval in milliseconds to retry the read operation if `retry_timeout` is set. Default: 500.
|
|
247
|
+
:param builtins.int retry_timeout: The timeout duration in seconds for the data source to retry read operations.
|
|
218
248
|
"""
|
|
219
249
|
__args__ = dict()
|
|
220
250
|
__args__['datacenterId'] = datacenter_id
|
|
221
251
|
__args__['distributedVirtualSwitchUuid'] = distributed_virtual_switch_uuid
|
|
222
252
|
__args__['filters'] = filters
|
|
223
253
|
__args__['name'] = name
|
|
254
|
+
__args__['retryInterval'] = retry_interval
|
|
255
|
+
__args__['retryTimeout'] = retry_timeout
|
|
224
256
|
opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
225
257
|
__ret__ = pulumi.runtime.invoke_output('vsphere:index/getNetwork:getNetwork', __args__, opts=opts, typ=GetNetworkResult)
|
|
226
258
|
return __ret__.apply(lambda __response__: GetNetworkResult(
|
|
@@ -229,4 +261,6 @@ def get_network_output(datacenter_id: Optional[pulumi.Input[Optional[builtins.st
|
|
|
229
261
|
filters=pulumi.get(__response__, 'filters'),
|
|
230
262
|
id=pulumi.get(__response__, 'id'),
|
|
231
263
|
name=pulumi.get(__response__, 'name'),
|
|
264
|
+
retry_interval=pulumi.get(__response__, 'retry_interval'),
|
|
265
|
+
retry_timeout=pulumi.get(__response__, 'retry_timeout'),
|
|
232
266
|
type=pulumi.get(__response__, 'type')))
|
|
@@ -400,8 +400,8 @@ def get_ovf_vm_template(allow_unverified_ssl_cert: Optional[builtins.bool] = Non
|
|
|
400
400
|
:param builtins.str deployment_option: The key of the chosen deployment option. If
|
|
401
401
|
empty, the default option is chosen.
|
|
402
402
|
:param builtins.str disk_provisioning: The disk provisioning type. If set, all the
|
|
403
|
-
disks in the
|
|
404
|
-
one of `thin`, `
|
|
403
|
+
disks included in the OVF/OVA will have the same specified policy. Can be
|
|
404
|
+
one of `thin`, `thick`, `eagerZeroedThick`, or `sameAsSource`.
|
|
405
405
|
:param builtins.bool enable_hidden_properties: Allow properties with
|
|
406
406
|
`ovf:userConfigurable=false` to be set.
|
|
407
407
|
:param builtins.str folder: The name of the folder in which to place the virtual
|
|
@@ -503,8 +503,8 @@ def get_ovf_vm_template_output(allow_unverified_ssl_cert: Optional[pulumi.Input[
|
|
|
503
503
|
:param builtins.str deployment_option: The key of the chosen deployment option. If
|
|
504
504
|
empty, the default option is chosen.
|
|
505
505
|
:param builtins.str disk_provisioning: The disk provisioning type. If set, all the
|
|
506
|
-
disks in the
|
|
507
|
-
one of `thin`, `
|
|
506
|
+
disks included in the OVF/OVA will have the same specified policy. Can be
|
|
507
|
+
one of `thin`, `thick`, `eagerZeroedThick`, or `sameAsSource`.
|
|
508
508
|
:param builtins.bool enable_hidden_properties: Allow properties with
|
|
509
509
|
`ovf:userConfigurable=false` to be set.
|
|
510
510
|
:param builtins.str folder: The name of the folder in which to place the virtual
|
|
@@ -193,10 +193,8 @@ class _GuestOsCustomizationState:
|
|
|
193
193
|
pulumi.set(self, "type", value)
|
|
194
194
|
|
|
195
195
|
|
|
196
|
+
@pulumi.type_token("vsphere:index/guestOsCustomization:GuestOsCustomization")
|
|
196
197
|
class GuestOsCustomization(pulumi.CustomResource):
|
|
197
|
-
|
|
198
|
-
pulumi_type = "vsphere:index/guestOsCustomization:GuestOsCustomization"
|
|
199
|
-
|
|
200
198
|
@overload
|
|
201
199
|
def __init__(__self__,
|
|
202
200
|
resource_name: str,
|
pulumi_vsphere/ha_vm_override.py
CHANGED
|
@@ -559,10 +559,8 @@ class _HaVmOverrideState:
|
|
|
559
559
|
pulumi.set(self, "virtual_machine_id", value)
|
|
560
560
|
|
|
561
561
|
|
|
562
|
+
@pulumi.type_token("vsphere:index/haVmOverride:HaVmOverride")
|
|
562
563
|
class HaVmOverride(pulumi.CustomResource):
|
|
563
|
-
|
|
564
|
-
pulumi_type = "vsphere:index/haVmOverride:HaVmOverride"
|
|
565
|
-
|
|
566
564
|
@overload
|
|
567
565
|
def __init__(__self__,
|
|
568
566
|
resource_name: str,
|
|
@@ -655,6 +653,8 @@ class HaVmOverride(pulumi.CustomResource):
|
|
|
655
653
|
|
|
656
654
|
is below:
|
|
657
655
|
|
|
656
|
+
[docs-import]: https://developer.hashicorp.com/terraform/cli/import
|
|
657
|
+
|
|
658
658
|
```sh
|
|
659
659
|
$ pulumi import vsphere:index/haVmOverride:HaVmOverride ha_vm_override \\
|
|
660
660
|
```
|
|
@@ -771,6 +771,8 @@ class HaVmOverride(pulumi.CustomResource):
|
|
|
771
771
|
|
|
772
772
|
is below:
|
|
773
773
|
|
|
774
|
+
[docs-import]: https://developer.hashicorp.com/terraform/cli/import
|
|
775
|
+
|
|
774
776
|
```sh
|
|
775
777
|
$ pulumi import vsphere:index/haVmOverride:HaVmOverride ha_vm_override \\
|
|
776
778
|
```
|
pulumi_vsphere/host.py
CHANGED
|
@@ -628,10 +628,8 @@ class _HostState:
|
|
|
628
628
|
pulumi.set(self, "username", value)
|
|
629
629
|
|
|
630
630
|
|
|
631
|
+
@pulumi.type_token("vsphere:index/host:Host")
|
|
631
632
|
class Host(pulumi.CustomResource):
|
|
632
|
-
|
|
633
|
-
pulumi_type = "vsphere:index/host:Host"
|
|
634
|
-
|
|
635
633
|
@overload
|
|
636
634
|
def __init__(__self__,
|
|
637
635
|
resource_name: str,
|
|
@@ -676,6 +674,33 @@ class Host(pulumi.CustomResource):
|
|
|
676
674
|
datacenter=datacenter.id)
|
|
677
675
|
```
|
|
678
676
|
|
|
677
|
+
### Create host in a compute cluster
|
|
678
|
+
|
|
679
|
+
```python
|
|
680
|
+
import pulumi
|
|
681
|
+
import pulumi_vsphere as vsphere
|
|
682
|
+
|
|
683
|
+
datacenter = vsphere.get_datacenter(name="dc-01")
|
|
684
|
+
cluster = vsphere.get_compute_cluster(name="cluster-01",
|
|
685
|
+
datacenter_id=datacenter.id)
|
|
686
|
+
thumbprint = vsphere.get_host_thumbprint(address="esxi-01.example.com",
|
|
687
|
+
insecure=True)
|
|
688
|
+
esx_01 = vsphere.Host("esx-01",
|
|
689
|
+
hostname="esxi-01.example.com",
|
|
690
|
+
username="root",
|
|
691
|
+
password="password",
|
|
692
|
+
license="00000-00000-00000-00000-00000",
|
|
693
|
+
thumbprint=thumbprint.id,
|
|
694
|
+
cluster=cluster.id,
|
|
695
|
+
services=[{
|
|
696
|
+
"ntpd": {
|
|
697
|
+
"enabled": True,
|
|
698
|
+
"policy": "on",
|
|
699
|
+
"ntp_servers": ["pool.ntp.org"],
|
|
700
|
+
},
|
|
701
|
+
}])
|
|
702
|
+
```
|
|
703
|
+
|
|
679
704
|
## Import
|
|
680
705
|
|
|
681
706
|
An existing host can be imported into this resource by supplying
|
|
@@ -720,7 +745,7 @@ class Host(pulumi.CustomResource):
|
|
|
720
745
|
|
|
721
746
|
data "vsphere_host_thumbprint" "thumbprint" {
|
|
722
747
|
|
|
723
|
-
address
|
|
748
|
+
address = "esxi-01.example.com"
|
|
724
749
|
|
|
725
750
|
insecure = true
|
|
726
751
|
|
|
@@ -768,9 +793,9 @@ class Host(pulumi.CustomResource):
|
|
|
768
793
|
|
|
769
794
|
}
|
|
770
795
|
|
|
771
|
-
|
|
796
|
+
}
|
|
772
797
|
|
|
773
|
-
|
|
798
|
+
}
|
|
774
799
|
|
|
775
800
|
```sh
|
|
776
801
|
$ pulumi import vsphere:index/host:Host esx-01 host-123
|
|
@@ -855,6 +880,33 @@ class Host(pulumi.CustomResource):
|
|
|
855
880
|
datacenter=datacenter.id)
|
|
856
881
|
```
|
|
857
882
|
|
|
883
|
+
### Create host in a compute cluster
|
|
884
|
+
|
|
885
|
+
```python
|
|
886
|
+
import pulumi
|
|
887
|
+
import pulumi_vsphere as vsphere
|
|
888
|
+
|
|
889
|
+
datacenter = vsphere.get_datacenter(name="dc-01")
|
|
890
|
+
cluster = vsphere.get_compute_cluster(name="cluster-01",
|
|
891
|
+
datacenter_id=datacenter.id)
|
|
892
|
+
thumbprint = vsphere.get_host_thumbprint(address="esxi-01.example.com",
|
|
893
|
+
insecure=True)
|
|
894
|
+
esx_01 = vsphere.Host("esx-01",
|
|
895
|
+
hostname="esxi-01.example.com",
|
|
896
|
+
username="root",
|
|
897
|
+
password="password",
|
|
898
|
+
license="00000-00000-00000-00000-00000",
|
|
899
|
+
thumbprint=thumbprint.id,
|
|
900
|
+
cluster=cluster.id,
|
|
901
|
+
services=[{
|
|
902
|
+
"ntpd": {
|
|
903
|
+
"enabled": True,
|
|
904
|
+
"policy": "on",
|
|
905
|
+
"ntp_servers": ["pool.ntp.org"],
|
|
906
|
+
},
|
|
907
|
+
}])
|
|
908
|
+
```
|
|
909
|
+
|
|
858
910
|
## Import
|
|
859
911
|
|
|
860
912
|
An existing host can be imported into this resource by supplying
|
|
@@ -899,7 +951,7 @@ class Host(pulumi.CustomResource):
|
|
|
899
951
|
|
|
900
952
|
data "vsphere_host_thumbprint" "thumbprint" {
|
|
901
953
|
|
|
902
|
-
address
|
|
954
|
+
address = "esxi-01.example.com"
|
|
903
955
|
|
|
904
956
|
insecure = true
|
|
905
957
|
|
|
@@ -947,9 +999,9 @@ class Host(pulumi.CustomResource):
|
|
|
947
999
|
|
|
948
1000
|
}
|
|
949
1001
|
|
|
950
|
-
|
|
1002
|
+
}
|
|
951
1003
|
|
|
952
|
-
|
|
1004
|
+
}
|
|
953
1005
|
|
|
954
1006
|
```sh
|
|
955
1007
|
$ pulumi import vsphere:index/host:Host esx-01 host-123
|
|
@@ -665,10 +665,8 @@ class _HostPortGroupState:
|
|
|
665
665
|
pulumi.set(self, "vlan_id", value)
|
|
666
666
|
|
|
667
667
|
|
|
668
|
+
@pulumi.type_token("vsphere:index/hostPortGroup:HostPortGroup")
|
|
668
669
|
class HostPortGroup(pulumi.CustomResource):
|
|
669
|
-
|
|
670
|
-
pulumi_type = "vsphere:index/hostPortGroup:HostPortGroup"
|
|
671
|
-
|
|
672
670
|
@overload
|
|
673
671
|
def __init__(__self__,
|
|
674
672
|
resource_name: str,
|
|
@@ -742,10 +742,8 @@ class _HostVirtualSwitchState:
|
|
|
742
742
|
pulumi.set(self, "teaming_policy", value)
|
|
743
743
|
|
|
744
744
|
|
|
745
|
+
@pulumi.type_token("vsphere:index/hostVirtualSwitch:HostVirtualSwitch")
|
|
745
746
|
class HostVirtualSwitch(pulumi.CustomResource):
|
|
746
|
-
|
|
747
|
-
pulumi_type = "vsphere:index/hostVirtualSwitch:HostVirtualSwitch"
|
|
748
|
-
|
|
749
747
|
@overload
|
|
750
748
|
def __init__(__self__,
|
|
751
749
|
resource_name: str,
|
|
@@ -843,6 +841,8 @@ class HostVirtualSwitch(pulumi.CustomResource):
|
|
|
843
841
|
|
|
844
842
|
Import can the be done via the following command:
|
|
845
843
|
|
|
844
|
+
[docs-import]: https://developer.hashicorp.com/terraform/cli/import
|
|
845
|
+
|
|
846
846
|
[docs-about-morefs]: /docs/providers/vsphere/index.html#use-of-managed-object-references-by-the-vsphere-provider
|
|
847
847
|
|
|
848
848
|
```sh
|
|
@@ -964,6 +964,8 @@ class HostVirtualSwitch(pulumi.CustomResource):
|
|
|
964
964
|
|
|
965
965
|
Import can the be done via the following command:
|
|
966
966
|
|
|
967
|
+
[docs-import]: https://developer.hashicorp.com/terraform/cli/import
|
|
968
|
+
|
|
967
969
|
[docs-about-morefs]: /docs/providers/vsphere/index.html#use-of-managed-object-references-by-the-vsphere-provider
|
|
968
970
|
|
|
969
971
|
```sh
|