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.
- pulumi_vsphere/__init__.py +51 -1
- pulumi_vsphere/_inputs.py +2568 -1025
- pulumi_vsphere/_utilities.py +50 -10
- pulumi_vsphere/compute_cluster.py +1564 -2373
- pulumi_vsphere/compute_cluster_host_group.py +191 -55
- pulumi_vsphere/compute_cluster_vm_affinity_rule.py +157 -113
- pulumi_vsphere/compute_cluster_vm_anti_affinity_rule.py +133 -89
- pulumi_vsphere/compute_cluster_vm_dependency_rule.py +314 -106
- pulumi_vsphere/compute_cluster_vm_group.py +256 -55
- pulumi_vsphere/compute_cluster_vm_host_rule.py +323 -123
- pulumi_vsphere/config/__init__.py +2 -1
- pulumi_vsphere/config/__init__.pyi +7 -2
- pulumi_vsphere/config/vars.py +20 -15
- pulumi_vsphere/configuration_profile.py +286 -0
- pulumi_vsphere/content_library.py +177 -71
- pulumi_vsphere/content_library_item.py +252 -106
- pulumi_vsphere/custom_attribute.py +118 -38
- pulumi_vsphere/datacenter.py +128 -107
- pulumi_vsphere/datastore_cluster.py +636 -731
- pulumi_vsphere/datastore_cluster_vm_anti_affinity_rule.py +251 -89
- pulumi_vsphere/distributed_port_group.py +1129 -967
- pulumi_vsphere/distributed_virtual_switch.py +1971 -2239
- pulumi_vsphere/distributed_virtual_switch_pvlan_mapping.py +294 -0
- pulumi_vsphere/dpm_host_override.py +222 -72
- pulumi_vsphere/drs_vm_override.py +236 -72
- pulumi_vsphere/entity_permissions.py +96 -69
- pulumi_vsphere/file.py +173 -178
- pulumi_vsphere/folder.py +236 -113
- pulumi_vsphere/get_compute_cluster.py +34 -23
- pulumi_vsphere/get_compute_cluster_host_group.py +52 -41
- pulumi_vsphere/get_configuration_profile.py +145 -0
- pulumi_vsphere/get_content_library.py +33 -21
- pulumi_vsphere/get_content_library_item.py +47 -31
- pulumi_vsphere/get_custom_attribute.py +26 -17
- pulumi_vsphere/get_datacenter.py +40 -18
- pulumi_vsphere/get_datastore.py +60 -24
- pulumi_vsphere/get_datastore_cluster.py +47 -22
- pulumi_vsphere/get_datastore_stats.py +204 -0
- pulumi_vsphere/get_distributed_virtual_switch.py +36 -23
- pulumi_vsphere/get_dynamic.py +55 -45
- pulumi_vsphere/get_folder.py +163 -25
- pulumi_vsphere/get_guest_os_customization.py +68 -37
- pulumi_vsphere/get_host.py +34 -23
- pulumi_vsphere/get_host_base_images.py +104 -0
- pulumi_vsphere/get_host_pci_device.py +78 -35
- pulumi_vsphere/get_host_thumbprint.py +58 -38
- pulumi_vsphere/get_host_vgpu_profile.py +195 -0
- pulumi_vsphere/get_license.py +44 -28
- pulumi_vsphere/get_network.py +157 -46
- pulumi_vsphere/get_ovf_vm_template.py +184 -301
- pulumi_vsphere/get_policy.py +23 -15
- pulumi_vsphere/get_resource_pool.py +107 -40
- pulumi_vsphere/get_role.py +49 -35
- pulumi_vsphere/get_tag.py +34 -23
- pulumi_vsphere/get_tag_category.py +32 -21
- pulumi_vsphere/get_vapp_container.py +31 -21
- pulumi_vsphere/get_virtual_machine.py +499 -287
- pulumi_vsphere/get_vmfs_disks.py +42 -29
- pulumi_vsphere/guest_os_customization.py +135 -79
- pulumi_vsphere/ha_vm_override.py +470 -577
- pulumi_vsphere/host.py +515 -262
- pulumi_vsphere/host_port_group.py +352 -355
- pulumi_vsphere/host_virtual_switch.py +580 -580
- pulumi_vsphere/license.py +110 -92
- pulumi_vsphere/nas_datastore.py +398 -270
- pulumi_vsphere/offline_software_depot.py +190 -0
- pulumi_vsphere/outputs.py +1582 -1027
- pulumi_vsphere/provider.py +172 -152
- pulumi_vsphere/pulumi-plugin.json +2 -1
- pulumi_vsphere/resource_pool.py +357 -273
- pulumi_vsphere/role.py +79 -47
- pulumi_vsphere/storage_drs_vm_override.py +225 -89
- pulumi_vsphere/supervisor.py +1064 -0
- pulumi_vsphere/tag.py +217 -55
- pulumi_vsphere/tag_category.py +158 -72
- pulumi_vsphere/vapp_container.py +425 -259
- pulumi_vsphere/vapp_entity.py +324 -174
- pulumi_vsphere/virtual_disk.py +245 -153
- pulumi_vsphere/virtual_machine.py +1696 -1836
- pulumi_vsphere/virtual_machine_class.py +448 -0
- pulumi_vsphere/virtual_machine_snapshot.py +137 -131
- pulumi_vsphere/vm_storage_policy.py +160 -154
- pulumi_vsphere/vmfs_datastore.py +460 -186
- pulumi_vsphere/vnic.py +249 -231
- {pulumi_vsphere-4.10.0a1709017641.dist-info → pulumi_vsphere-4.17.0a1763710194.dist-info}/METADATA +7 -6
- pulumi_vsphere-4.17.0a1763710194.dist-info/RECORD +89 -0
- {pulumi_vsphere-4.10.0a1709017641.dist-info → pulumi_vsphere-4.17.0a1763710194.dist-info}/WHEEL +1 -1
- pulumi_vsphere-4.10.0a1709017641.dist-info/RECORD +0 -80
- {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
|
|
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
|
|
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__ = ['ComputeClusterHostGroupArgs', 'ComputeClusterHostGroup']
|
|
@@ -14,22 +19,22 @@ __all__ = ['ComputeClusterHostGroupArgs', 'ComputeClusterHostGroup']
|
|
|
14
19
|
@pulumi.input_type
|
|
15
20
|
class ComputeClusterHostGroupArgs:
|
|
16
21
|
def __init__(__self__, *,
|
|
17
|
-
compute_cluster_id: pulumi.Input[str],
|
|
18
|
-
host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
19
|
-
name: Optional[pulumi.Input[str]] = None):
|
|
22
|
+
compute_cluster_id: pulumi.Input[_builtins.str],
|
|
23
|
+
host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
24
|
+
name: Optional[pulumi.Input[_builtins.str]] = None):
|
|
20
25
|
"""
|
|
21
26
|
The set of arguments for constructing a ComputeClusterHostGroup resource.
|
|
22
|
-
:param pulumi.Input[str] compute_cluster_id: The managed object reference
|
|
27
|
+
:param pulumi.Input[_builtins.str] compute_cluster_id: The managed object reference
|
|
23
28
|
ID of the cluster to put the group in. Forces a new
|
|
24
29
|
resource if changed.
|
|
25
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] host_system_ids: The managed object IDs of
|
|
30
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] host_system_ids: The managed object IDs of
|
|
26
31
|
the hosts to put in the cluster.
|
|
27
32
|
|
|
28
33
|
> **NOTE:** The namespace for cluster names on this resource (defined by the
|
|
29
34
|
`name` argument) is shared with the
|
|
30
35
|
`ComputeClusterVmGroup`
|
|
31
36
|
resource. Make sure your names are unique across both resources.
|
|
32
|
-
:param pulumi.Input[str] name: The name of the host group. This must be unique in the
|
|
37
|
+
:param pulumi.Input[_builtins.str] name: The name of the host group. This must be unique in the
|
|
33
38
|
cluster. Forces a new resource if changed.
|
|
34
39
|
"""
|
|
35
40
|
pulumi.set(__self__, "compute_cluster_id", compute_cluster_id)
|
|
@@ -38,9 +43,9 @@ class ComputeClusterHostGroupArgs:
|
|
|
38
43
|
if name is not None:
|
|
39
44
|
pulumi.set(__self__, "name", name)
|
|
40
45
|
|
|
41
|
-
@property
|
|
46
|
+
@_builtins.property
|
|
42
47
|
@pulumi.getter(name="computeClusterId")
|
|
43
|
-
def compute_cluster_id(self) -> pulumi.Input[str]:
|
|
48
|
+
def compute_cluster_id(self) -> pulumi.Input[_builtins.str]:
|
|
44
49
|
"""
|
|
45
50
|
The managed object reference
|
|
46
51
|
ID of the cluster to put the group in. Forces a new
|
|
@@ -49,12 +54,12 @@ class ComputeClusterHostGroupArgs:
|
|
|
49
54
|
return pulumi.get(self, "compute_cluster_id")
|
|
50
55
|
|
|
51
56
|
@compute_cluster_id.setter
|
|
52
|
-
def compute_cluster_id(self, value: pulumi.Input[str]):
|
|
57
|
+
def compute_cluster_id(self, value: pulumi.Input[_builtins.str]):
|
|
53
58
|
pulumi.set(self, "compute_cluster_id", value)
|
|
54
59
|
|
|
55
|
-
@property
|
|
60
|
+
@_builtins.property
|
|
56
61
|
@pulumi.getter(name="hostSystemIds")
|
|
57
|
-
def host_system_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
62
|
+
def host_system_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
|
58
63
|
"""
|
|
59
64
|
The managed object IDs of
|
|
60
65
|
the hosts to put in the cluster.
|
|
@@ -67,12 +72,12 @@ class ComputeClusterHostGroupArgs:
|
|
|
67
72
|
return pulumi.get(self, "host_system_ids")
|
|
68
73
|
|
|
69
74
|
@host_system_ids.setter
|
|
70
|
-
def host_system_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
75
|
+
def host_system_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
|
71
76
|
pulumi.set(self, "host_system_ids", value)
|
|
72
77
|
|
|
73
|
-
@property
|
|
78
|
+
@_builtins.property
|
|
74
79
|
@pulumi.getter
|
|
75
|
-
def name(self) -> Optional[pulumi.Input[str]]:
|
|
80
|
+
def name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
76
81
|
"""
|
|
77
82
|
The name of the host group. This must be unique in the
|
|
78
83
|
cluster. Forces a new resource if changed.
|
|
@@ -80,29 +85,29 @@ class ComputeClusterHostGroupArgs:
|
|
|
80
85
|
return pulumi.get(self, "name")
|
|
81
86
|
|
|
82
87
|
@name.setter
|
|
83
|
-
def name(self, value: Optional[pulumi.Input[str]]):
|
|
88
|
+
def name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
84
89
|
pulumi.set(self, "name", value)
|
|
85
90
|
|
|
86
91
|
|
|
87
92
|
@pulumi.input_type
|
|
88
93
|
class _ComputeClusterHostGroupState:
|
|
89
94
|
def __init__(__self__, *,
|
|
90
|
-
compute_cluster_id: Optional[pulumi.Input[str]] = None,
|
|
91
|
-
host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
92
|
-
name: Optional[pulumi.Input[str]] = None):
|
|
95
|
+
compute_cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
96
|
+
host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
97
|
+
name: Optional[pulumi.Input[_builtins.str]] = None):
|
|
93
98
|
"""
|
|
94
99
|
Input properties used for looking up and filtering ComputeClusterHostGroup resources.
|
|
95
|
-
:param pulumi.Input[str] compute_cluster_id: The managed object reference
|
|
100
|
+
:param pulumi.Input[_builtins.str] compute_cluster_id: The managed object reference
|
|
96
101
|
ID of the cluster to put the group in. Forces a new
|
|
97
102
|
resource if changed.
|
|
98
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] host_system_ids: The managed object IDs of
|
|
103
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] host_system_ids: The managed object IDs of
|
|
99
104
|
the hosts to put in the cluster.
|
|
100
105
|
|
|
101
106
|
> **NOTE:** The namespace for cluster names on this resource (defined by the
|
|
102
107
|
`name` argument) is shared with the
|
|
103
108
|
`ComputeClusterVmGroup`
|
|
104
109
|
resource. Make sure your names are unique across both resources.
|
|
105
|
-
:param pulumi.Input[str] name: The name of the host group. This must be unique in the
|
|
110
|
+
:param pulumi.Input[_builtins.str] name: The name of the host group. This must be unique in the
|
|
106
111
|
cluster. Forces a new resource if changed.
|
|
107
112
|
"""
|
|
108
113
|
if compute_cluster_id is not None:
|
|
@@ -112,9 +117,9 @@ class _ComputeClusterHostGroupState:
|
|
|
112
117
|
if name is not None:
|
|
113
118
|
pulumi.set(__self__, "name", name)
|
|
114
119
|
|
|
115
|
-
@property
|
|
120
|
+
@_builtins.property
|
|
116
121
|
@pulumi.getter(name="computeClusterId")
|
|
117
|
-
def compute_cluster_id(self) -> Optional[pulumi.Input[str]]:
|
|
122
|
+
def compute_cluster_id(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
118
123
|
"""
|
|
119
124
|
The managed object reference
|
|
120
125
|
ID of the cluster to put the group in. Forces a new
|
|
@@ -123,12 +128,12 @@ class _ComputeClusterHostGroupState:
|
|
|
123
128
|
return pulumi.get(self, "compute_cluster_id")
|
|
124
129
|
|
|
125
130
|
@compute_cluster_id.setter
|
|
126
|
-
def compute_cluster_id(self, value: Optional[pulumi.Input[str]]):
|
|
131
|
+
def compute_cluster_id(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
127
132
|
pulumi.set(self, "compute_cluster_id", value)
|
|
128
133
|
|
|
129
|
-
@property
|
|
134
|
+
@_builtins.property
|
|
130
135
|
@pulumi.getter(name="hostSystemIds")
|
|
131
|
-
def host_system_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
136
|
+
def host_system_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
|
132
137
|
"""
|
|
133
138
|
The managed object IDs of
|
|
134
139
|
the hosts to put in the cluster.
|
|
@@ -141,12 +146,12 @@ class _ComputeClusterHostGroupState:
|
|
|
141
146
|
return pulumi.get(self, "host_system_ids")
|
|
142
147
|
|
|
143
148
|
@host_system_ids.setter
|
|
144
|
-
def host_system_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
149
|
+
def host_system_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
|
145
150
|
pulumi.set(self, "host_system_ids", value)
|
|
146
151
|
|
|
147
|
-
@property
|
|
152
|
+
@_builtins.property
|
|
148
153
|
@pulumi.getter
|
|
149
|
-
def name(self) -> Optional[pulumi.Input[str]]:
|
|
154
|
+
def name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
150
155
|
"""
|
|
151
156
|
The name of the host group. This must be unique in the
|
|
152
157
|
cluster. Forces a new resource if changed.
|
|
@@ -154,34 +159,100 @@ class _ComputeClusterHostGroupState:
|
|
|
154
159
|
return pulumi.get(self, "name")
|
|
155
160
|
|
|
156
161
|
@name.setter
|
|
157
|
-
def name(self, value: Optional[pulumi.Input[str]]):
|
|
162
|
+
def name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
158
163
|
pulumi.set(self, "name", value)
|
|
159
164
|
|
|
160
165
|
|
|
166
|
+
@pulumi.type_token("vsphere:index/computeClusterHostGroup:ComputeClusterHostGroup")
|
|
161
167
|
class ComputeClusterHostGroup(pulumi.CustomResource):
|
|
162
168
|
@overload
|
|
163
169
|
def __init__(__self__,
|
|
164
170
|
resource_name: str,
|
|
165
171
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
166
|
-
compute_cluster_id: Optional[pulumi.Input[str]] = None,
|
|
167
|
-
host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
168
|
-
name: Optional[pulumi.Input[str]] = None,
|
|
172
|
+
compute_cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
173
|
+
host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
174
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
169
175
|
__props__=None):
|
|
170
176
|
"""
|
|
171
|
-
|
|
177
|
+
The `ComputeClusterHostGroup` resource can be used to manage groups
|
|
178
|
+
of hosts in a cluster, either created by the
|
|
179
|
+
`ComputeCluster` resource or looked up
|
|
180
|
+
by the `ComputeCluster` data source.
|
|
181
|
+
|
|
182
|
+
This resource mainly serves as an input to the
|
|
183
|
+
`ComputeClusterVmHostRule`
|
|
184
|
+
resource - see the documentation for that resource for further details on how
|
|
185
|
+
to use host groups.
|
|
186
|
+
|
|
187
|
+
> **NOTE:** This resource requires vCenter and is not available on direct ESXi
|
|
188
|
+
connections.
|
|
189
|
+
|
|
190
|
+
## Example Usage
|
|
191
|
+
|
|
192
|
+
```python
|
|
193
|
+
import pulumi
|
|
194
|
+
import pulumi_vsphere as vsphere
|
|
195
|
+
|
|
196
|
+
config = pulumi.Config()
|
|
197
|
+
datacenter = config.get("datacenter")
|
|
198
|
+
if datacenter is None:
|
|
199
|
+
datacenter = "dc-01"
|
|
200
|
+
hosts = config.get_object("hosts")
|
|
201
|
+
if hosts is None:
|
|
202
|
+
hosts = [
|
|
203
|
+
"esxi-01.example.com",
|
|
204
|
+
"esxi-02.example.com",
|
|
205
|
+
"esxi-03.example.com",
|
|
206
|
+
]
|
|
207
|
+
datacenter_get_datacenter = vsphere.get_datacenter(name=datacenter)
|
|
208
|
+
hosts_get_host = [vsphere.get_host(name=hosts[__index],
|
|
209
|
+
datacenter_id=datacenter_get_datacenter.id) for __index in range(len(hosts))]
|
|
210
|
+
compute_cluster = vsphere.ComputeCluster("compute_cluster",
|
|
211
|
+
name="compute-cluster-test",
|
|
212
|
+
datacenter_id=dc["id"],
|
|
213
|
+
host_system_ids=[[__item.id for __item in hosts_get_host]],
|
|
214
|
+
drs_enabled=True,
|
|
215
|
+
drs_automation_level="fullyAutomated",
|
|
216
|
+
ha_enabled=True)
|
|
217
|
+
cluster_host_group = vsphere.ComputeClusterHostGroup("cluster_host_group",
|
|
218
|
+
name="test-cluster-host-group",
|
|
219
|
+
compute_cluster_id=compute_cluster.id,
|
|
220
|
+
host_system_ids=[[__item.id for __item in hosts_get_host]])
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
## Import
|
|
224
|
+
|
|
225
|
+
An existing group can be imported into this resource by
|
|
226
|
+
|
|
227
|
+
supplying both the path to the cluster, and the name of the host group. If the
|
|
228
|
+
|
|
229
|
+
name or cluster is not found, or if the group is of a different type, an error
|
|
230
|
+
|
|
231
|
+
will be returned. An example is below:
|
|
232
|
+
|
|
233
|
+
[docs-import]: https://developer.hashicorp.com/terraform/cli/import
|
|
234
|
+
|
|
235
|
+
```sh
|
|
236
|
+
$ pulumi import vsphere:index/computeClusterHostGroup:ComputeClusterHostGroup cluster_host_group \\
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
'{"compute_cluster_path": "/dc1/host/cluster1", \\
|
|
240
|
+
|
|
241
|
+
"name": "pulumi-test-cluster-host-group"}'
|
|
242
|
+
|
|
172
243
|
:param str resource_name: The name of the resource.
|
|
173
244
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
174
|
-
:param pulumi.Input[str] compute_cluster_id: The managed object reference
|
|
245
|
+
:param pulumi.Input[_builtins.str] compute_cluster_id: The managed object reference
|
|
175
246
|
ID of the cluster to put the group in. Forces a new
|
|
176
247
|
resource if changed.
|
|
177
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] host_system_ids: The managed object IDs of
|
|
248
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] host_system_ids: The managed object IDs of
|
|
178
249
|
the hosts to put in the cluster.
|
|
179
250
|
|
|
180
251
|
> **NOTE:** The namespace for cluster names on this resource (defined by the
|
|
181
252
|
`name` argument) is shared with the
|
|
182
253
|
`ComputeClusterVmGroup`
|
|
183
254
|
resource. Make sure your names are unique across both resources.
|
|
184
|
-
:param pulumi.Input[str] name: The name of the host group. This must be unique in the
|
|
255
|
+
:param pulumi.Input[_builtins.str] name: The name of the host group. This must be unique in the
|
|
185
256
|
cluster. Forces a new resource if changed.
|
|
186
257
|
"""
|
|
187
258
|
...
|
|
@@ -191,7 +262,72 @@ class ComputeClusterHostGroup(pulumi.CustomResource):
|
|
|
191
262
|
args: ComputeClusterHostGroupArgs,
|
|
192
263
|
opts: Optional[pulumi.ResourceOptions] = None):
|
|
193
264
|
"""
|
|
194
|
-
|
|
265
|
+
The `ComputeClusterHostGroup` resource can be used to manage groups
|
|
266
|
+
of hosts in a cluster, either created by the
|
|
267
|
+
`ComputeCluster` resource or looked up
|
|
268
|
+
by the `ComputeCluster` data source.
|
|
269
|
+
|
|
270
|
+
This resource mainly serves as an input to the
|
|
271
|
+
`ComputeClusterVmHostRule`
|
|
272
|
+
resource - see the documentation for that resource for further details on how
|
|
273
|
+
to use host groups.
|
|
274
|
+
|
|
275
|
+
> **NOTE:** This resource requires vCenter and is not available on direct ESXi
|
|
276
|
+
connections.
|
|
277
|
+
|
|
278
|
+
## Example Usage
|
|
279
|
+
|
|
280
|
+
```python
|
|
281
|
+
import pulumi
|
|
282
|
+
import pulumi_vsphere as vsphere
|
|
283
|
+
|
|
284
|
+
config = pulumi.Config()
|
|
285
|
+
datacenter = config.get("datacenter")
|
|
286
|
+
if datacenter is None:
|
|
287
|
+
datacenter = "dc-01"
|
|
288
|
+
hosts = config.get_object("hosts")
|
|
289
|
+
if hosts is None:
|
|
290
|
+
hosts = [
|
|
291
|
+
"esxi-01.example.com",
|
|
292
|
+
"esxi-02.example.com",
|
|
293
|
+
"esxi-03.example.com",
|
|
294
|
+
]
|
|
295
|
+
datacenter_get_datacenter = vsphere.get_datacenter(name=datacenter)
|
|
296
|
+
hosts_get_host = [vsphere.get_host(name=hosts[__index],
|
|
297
|
+
datacenter_id=datacenter_get_datacenter.id) for __index in range(len(hosts))]
|
|
298
|
+
compute_cluster = vsphere.ComputeCluster("compute_cluster",
|
|
299
|
+
name="compute-cluster-test",
|
|
300
|
+
datacenter_id=dc["id"],
|
|
301
|
+
host_system_ids=[[__item.id for __item in hosts_get_host]],
|
|
302
|
+
drs_enabled=True,
|
|
303
|
+
drs_automation_level="fullyAutomated",
|
|
304
|
+
ha_enabled=True)
|
|
305
|
+
cluster_host_group = vsphere.ComputeClusterHostGroup("cluster_host_group",
|
|
306
|
+
name="test-cluster-host-group",
|
|
307
|
+
compute_cluster_id=compute_cluster.id,
|
|
308
|
+
host_system_ids=[[__item.id for __item in hosts_get_host]])
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
## Import
|
|
312
|
+
|
|
313
|
+
An existing group can be imported into this resource by
|
|
314
|
+
|
|
315
|
+
supplying both the path to the cluster, and the name of the host group. If the
|
|
316
|
+
|
|
317
|
+
name or cluster is not found, or if the group is of a different type, an error
|
|
318
|
+
|
|
319
|
+
will be returned. An example is below:
|
|
320
|
+
|
|
321
|
+
[docs-import]: https://developer.hashicorp.com/terraform/cli/import
|
|
322
|
+
|
|
323
|
+
```sh
|
|
324
|
+
$ pulumi import vsphere:index/computeClusterHostGroup:ComputeClusterHostGroup cluster_host_group \\
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
'{"compute_cluster_path": "/dc1/host/cluster1", \\
|
|
328
|
+
|
|
329
|
+
"name": "pulumi-test-cluster-host-group"}'
|
|
330
|
+
|
|
195
331
|
:param str resource_name: The name of the resource.
|
|
196
332
|
:param ComputeClusterHostGroupArgs args: The arguments to use to populate this resource's properties.
|
|
197
333
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
@@ -207,9 +343,9 @@ class ComputeClusterHostGroup(pulumi.CustomResource):
|
|
|
207
343
|
def _internal_init(__self__,
|
|
208
344
|
resource_name: str,
|
|
209
345
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
210
|
-
compute_cluster_id: Optional[pulumi.Input[str]] = None,
|
|
211
|
-
host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
212
|
-
name: Optional[pulumi.Input[str]] = None,
|
|
346
|
+
compute_cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
347
|
+
host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
348
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
213
349
|
__props__=None):
|
|
214
350
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
215
351
|
if not isinstance(opts, pulumi.ResourceOptions):
|
|
@@ -234,9 +370,9 @@ class ComputeClusterHostGroup(pulumi.CustomResource):
|
|
|
234
370
|
def get(resource_name: str,
|
|
235
371
|
id: pulumi.Input[str],
|
|
236
372
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
237
|
-
compute_cluster_id: Optional[pulumi.Input[str]] = None,
|
|
238
|
-
host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
239
|
-
name: Optional[pulumi.Input[str]] = None) -> 'ComputeClusterHostGroup':
|
|
373
|
+
compute_cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
374
|
+
host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
375
|
+
name: Optional[pulumi.Input[_builtins.str]] = None) -> 'ComputeClusterHostGroup':
|
|
240
376
|
"""
|
|
241
377
|
Get an existing ComputeClusterHostGroup resource's state with the given name, id, and optional extra
|
|
242
378
|
properties used to qualify the lookup.
|
|
@@ -244,17 +380,17 @@ class ComputeClusterHostGroup(pulumi.CustomResource):
|
|
|
244
380
|
:param str resource_name: The unique name of the resulting resource.
|
|
245
381
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
246
382
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
247
|
-
:param pulumi.Input[str] compute_cluster_id: The managed object reference
|
|
383
|
+
:param pulumi.Input[_builtins.str] compute_cluster_id: The managed object reference
|
|
248
384
|
ID of the cluster to put the group in. Forces a new
|
|
249
385
|
resource if changed.
|
|
250
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] host_system_ids: The managed object IDs of
|
|
386
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] host_system_ids: The managed object IDs of
|
|
251
387
|
the hosts to put in the cluster.
|
|
252
388
|
|
|
253
389
|
> **NOTE:** The namespace for cluster names on this resource (defined by the
|
|
254
390
|
`name` argument) is shared with the
|
|
255
391
|
`ComputeClusterVmGroup`
|
|
256
392
|
resource. Make sure your names are unique across both resources.
|
|
257
|
-
:param pulumi.Input[str] name: The name of the host group. This must be unique in the
|
|
393
|
+
:param pulumi.Input[_builtins.str] name: The name of the host group. This must be unique in the
|
|
258
394
|
cluster. Forces a new resource if changed.
|
|
259
395
|
"""
|
|
260
396
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
@@ -266,9 +402,9 @@ class ComputeClusterHostGroup(pulumi.CustomResource):
|
|
|
266
402
|
__props__.__dict__["name"] = name
|
|
267
403
|
return ComputeClusterHostGroup(resource_name, opts=opts, __props__=__props__)
|
|
268
404
|
|
|
269
|
-
@property
|
|
405
|
+
@_builtins.property
|
|
270
406
|
@pulumi.getter(name="computeClusterId")
|
|
271
|
-
def compute_cluster_id(self) -> pulumi.Output[str]:
|
|
407
|
+
def compute_cluster_id(self) -> pulumi.Output[_builtins.str]:
|
|
272
408
|
"""
|
|
273
409
|
The managed object reference
|
|
274
410
|
ID of the cluster to put the group in. Forces a new
|
|
@@ -276,9 +412,9 @@ class ComputeClusterHostGroup(pulumi.CustomResource):
|
|
|
276
412
|
"""
|
|
277
413
|
return pulumi.get(self, "compute_cluster_id")
|
|
278
414
|
|
|
279
|
-
@property
|
|
415
|
+
@_builtins.property
|
|
280
416
|
@pulumi.getter(name="hostSystemIds")
|
|
281
|
-
def host_system_ids(self) -> pulumi.Output[Optional[Sequence[str]]]:
|
|
417
|
+
def host_system_ids(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
|
|
282
418
|
"""
|
|
283
419
|
The managed object IDs of
|
|
284
420
|
the hosts to put in the cluster.
|
|
@@ -290,9 +426,9 @@ class ComputeClusterHostGroup(pulumi.CustomResource):
|
|
|
290
426
|
"""
|
|
291
427
|
return pulumi.get(self, "host_system_ids")
|
|
292
428
|
|
|
293
|
-
@property
|
|
429
|
+
@_builtins.property
|
|
294
430
|
@pulumi.getter
|
|
295
|
-
def name(self) -> pulumi.Output[str]:
|
|
431
|
+
def name(self) -> pulumi.Output[_builtins.str]:
|
|
296
432
|
"""
|
|
297
433
|
The name of the host group. This must be unique in the
|
|
298
434
|
cluster. Forces a new resource if changed.
|