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__ = ['NasDatastoreArgs', 'NasDatastore']
@@ -14,55 +19,55 @@ __all__ = ['NasDatastoreArgs', 'NasDatastore']
14
19
  @pulumi.input_type
15
20
  class NasDatastoreArgs:
16
21
  def __init__(__self__, *,
17
- host_system_ids: pulumi.Input[Sequence[pulumi.Input[str]]],
18
- remote_hosts: pulumi.Input[Sequence[pulumi.Input[str]]],
19
- remote_path: pulumi.Input[str],
20
- access_mode: Optional[pulumi.Input[str]] = None,
21
- custom_attributes: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
22
- datastore_cluster_id: Optional[pulumi.Input[str]] = None,
23
- folder: Optional[pulumi.Input[str]] = None,
24
- name: Optional[pulumi.Input[str]] = None,
25
- security_type: Optional[pulumi.Input[str]] = None,
26
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
27
- type: Optional[pulumi.Input[str]] = None):
22
+ host_system_ids: pulumi.Input[Sequence[pulumi.Input[_builtins.str]]],
23
+ remote_hosts: pulumi.Input[Sequence[pulumi.Input[_builtins.str]]],
24
+ remote_path: pulumi.Input[_builtins.str],
25
+ access_mode: Optional[pulumi.Input[_builtins.str]] = None,
26
+ custom_attributes: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
27
+ datastore_cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
28
+ folder: Optional[pulumi.Input[_builtins.str]] = None,
29
+ name: Optional[pulumi.Input[_builtins.str]] = None,
30
+ security_type: Optional[pulumi.Input[_builtins.str]] = None,
31
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
32
+ type: Optional[pulumi.Input[_builtins.str]] = None):
28
33
  """
29
34
  The set of arguments for constructing a NasDatastore resource.
30
- :param pulumi.Input[Sequence[pulumi.Input[str]]] host_system_ids: The managed object IDs of
35
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] host_system_ids: The managed object IDs of
31
36
  the hosts to mount the datastore on.
32
- :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_hosts: The hostnames or IP addresses of the remote
33
- server or servers. Only one element should be present for NFS v3 but multiple
37
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] remote_hosts: The hostnames or IP addresses of the remote
38
+ servers. Only one element should be present for NFS v3 but multiple
34
39
  can be present for NFS v4.1. Forces a new resource if changed.
35
- :param pulumi.Input[str] remote_path: The remote path of the mount point. Forces a new
40
+ :param pulumi.Input[_builtins.str] remote_path: The remote path of the mount point. Forces a new
36
41
  resource if changed.
37
- :param pulumi.Input[str] access_mode: Access mode for the mount point. Can be one of
42
+ :param pulumi.Input[_builtins.str] access_mode: Access mode for the mount point. Can be one of
38
43
  `readOnly` or `readWrite`. Note that `readWrite` does not necessarily mean
39
44
  that the datastore will be read-write depending on the permissions of the
40
45
  actual share. Default: `readWrite`. Forces a new resource if changed.
41
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] custom_attributes: Map of custom attribute ids to attribute
46
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] custom_attributes: Map of custom attribute ids to attribute
42
47
  value strings to set on datasource resource.
43
48
 
44
49
  > **NOTE:** Custom attributes are unsupported on direct ESXi connections
45
50
  and require vCenter.
46
- :param pulumi.Input[str] datastore_cluster_id: The managed object
51
+ :param pulumi.Input[_builtins.str] datastore_cluster_id: The managed object
47
52
  ID of a datastore cluster to put this datastore in.
48
53
  Conflicts with `folder`.
49
- :param pulumi.Input[str] folder: The relative path to a folder to put this datastore in.
54
+ :param pulumi.Input[_builtins.str] folder: The relative path to a folder to put this datastore in.
50
55
  This is a path relative to the datacenter you are deploying the datastore to.
51
56
  Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`,
52
57
  The provider will place a datastore named `test` in a datastore folder
53
58
  located at `/dc1/datastore/foo/bar`, with the final inventory path being
54
59
  `/dc1/datastore/foo/bar/test`. Conflicts with
55
60
  `datastore_cluster_id`.
56
- :param pulumi.Input[str] name: The name of the datastore. Forces a new resource if
61
+ :param pulumi.Input[_builtins.str] name: The name of the datastore. Forces a new resource if
57
62
  changed.
58
- :param pulumi.Input[str] security_type: The security type to use when using NFS v4.1.
63
+ :param pulumi.Input[_builtins.str] security_type: The security type to use when using NFS v4.1.
59
64
  Can be one of `AUTH_SYS`, `SEC_KRB5`, or `SEC_KRB5I`. Forces a new resource
60
65
  if changed.
61
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The IDs of any tags to attach to this resource.
66
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The IDs of any tags to attach to this resource.
62
67
 
63
68
  > **NOTE:** Tagging support is unsupported on direct ESXi connections and
64
69
  requires vCenter 6.0 or higher.
65
- :param pulumi.Input[str] type: The type of NAS volume. Can be one of `NFS` (to denote
70
+ :param pulumi.Input[_builtins.str] type: The type of NAS volume. Can be one of `NFS` (to denote
66
71
  v3) or `NFS41` (to denote NFS v4.1). Default: `NFS`. Forces a new resource if
67
72
  changed.
68
73
  """
@@ -86,9 +91,9 @@ class NasDatastoreArgs:
86
91
  if type is not None:
87
92
  pulumi.set(__self__, "type", type)
88
93
 
89
- @property
94
+ @_builtins.property
90
95
  @pulumi.getter(name="hostSystemIds")
91
- def host_system_ids(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
96
+ def host_system_ids(self) -> pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]:
92
97
  """
93
98
  The managed object IDs of
94
99
  the hosts to mount the datastore on.
@@ -96,26 +101,26 @@ class NasDatastoreArgs:
96
101
  return pulumi.get(self, "host_system_ids")
97
102
 
98
103
  @host_system_ids.setter
99
- def host_system_ids(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
104
+ def host_system_ids(self, value: pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]):
100
105
  pulumi.set(self, "host_system_ids", value)
101
106
 
102
- @property
107
+ @_builtins.property
103
108
  @pulumi.getter(name="remoteHosts")
104
- def remote_hosts(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
109
+ def remote_hosts(self) -> pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]:
105
110
  """
106
111
  The hostnames or IP addresses of the remote
107
- server or servers. Only one element should be present for NFS v3 but multiple
112
+ servers. Only one element should be present for NFS v3 but multiple
108
113
  can be present for NFS v4.1. Forces a new resource if changed.
109
114
  """
110
115
  return pulumi.get(self, "remote_hosts")
111
116
 
112
117
  @remote_hosts.setter
113
- def remote_hosts(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
118
+ def remote_hosts(self, value: pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]):
114
119
  pulumi.set(self, "remote_hosts", value)
115
120
 
116
- @property
121
+ @_builtins.property
117
122
  @pulumi.getter(name="remotePath")
118
- def remote_path(self) -> pulumi.Input[str]:
123
+ def remote_path(self) -> pulumi.Input[_builtins.str]:
119
124
  """
120
125
  The remote path of the mount point. Forces a new
121
126
  resource if changed.
@@ -123,12 +128,12 @@ class NasDatastoreArgs:
123
128
  return pulumi.get(self, "remote_path")
124
129
 
125
130
  @remote_path.setter
126
- def remote_path(self, value: pulumi.Input[str]):
131
+ def remote_path(self, value: pulumi.Input[_builtins.str]):
127
132
  pulumi.set(self, "remote_path", value)
128
133
 
129
- @property
134
+ @_builtins.property
130
135
  @pulumi.getter(name="accessMode")
131
- def access_mode(self) -> Optional[pulumi.Input[str]]:
136
+ def access_mode(self) -> Optional[pulumi.Input[_builtins.str]]:
132
137
  """
133
138
  Access mode for the mount point. Can be one of
134
139
  `readOnly` or `readWrite`. Note that `readWrite` does not necessarily mean
@@ -138,12 +143,12 @@ class NasDatastoreArgs:
138
143
  return pulumi.get(self, "access_mode")
139
144
 
140
145
  @access_mode.setter
141
- def access_mode(self, value: Optional[pulumi.Input[str]]):
146
+ def access_mode(self, value: Optional[pulumi.Input[_builtins.str]]):
142
147
  pulumi.set(self, "access_mode", value)
143
148
 
144
- @property
149
+ @_builtins.property
145
150
  @pulumi.getter(name="customAttributes")
146
- def custom_attributes(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
151
+ def custom_attributes(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
147
152
  """
148
153
  Map of custom attribute ids to attribute
149
154
  value strings to set on datasource resource.
@@ -154,12 +159,12 @@ class NasDatastoreArgs:
154
159
  return pulumi.get(self, "custom_attributes")
155
160
 
156
161
  @custom_attributes.setter
157
- def custom_attributes(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
162
+ def custom_attributes(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
158
163
  pulumi.set(self, "custom_attributes", value)
159
164
 
160
- @property
165
+ @_builtins.property
161
166
  @pulumi.getter(name="datastoreClusterId")
162
- def datastore_cluster_id(self) -> Optional[pulumi.Input[str]]:
167
+ def datastore_cluster_id(self) -> Optional[pulumi.Input[_builtins.str]]:
163
168
  """
164
169
  The managed object
165
170
  ID of a datastore cluster to put this datastore in.
@@ -168,12 +173,12 @@ class NasDatastoreArgs:
168
173
  return pulumi.get(self, "datastore_cluster_id")
169
174
 
170
175
  @datastore_cluster_id.setter
171
- def datastore_cluster_id(self, value: Optional[pulumi.Input[str]]):
176
+ def datastore_cluster_id(self, value: Optional[pulumi.Input[_builtins.str]]):
172
177
  pulumi.set(self, "datastore_cluster_id", value)
173
178
 
174
- @property
179
+ @_builtins.property
175
180
  @pulumi.getter
176
- def folder(self) -> Optional[pulumi.Input[str]]:
181
+ def folder(self) -> Optional[pulumi.Input[_builtins.str]]:
177
182
  """
178
183
  The relative path to a folder to put this datastore in.
179
184
  This is a path relative to the datacenter you are deploying the datastore to.
@@ -186,12 +191,12 @@ class NasDatastoreArgs:
186
191
  return pulumi.get(self, "folder")
187
192
 
188
193
  @folder.setter
189
- def folder(self, value: Optional[pulumi.Input[str]]):
194
+ def folder(self, value: Optional[pulumi.Input[_builtins.str]]):
190
195
  pulumi.set(self, "folder", value)
191
196
 
192
- @property
197
+ @_builtins.property
193
198
  @pulumi.getter
194
- def name(self) -> Optional[pulumi.Input[str]]:
199
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
195
200
  """
196
201
  The name of the datastore. Forces a new resource if
197
202
  changed.
@@ -199,12 +204,12 @@ class NasDatastoreArgs:
199
204
  return pulumi.get(self, "name")
200
205
 
201
206
  @name.setter
202
- def name(self, value: Optional[pulumi.Input[str]]):
207
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
203
208
  pulumi.set(self, "name", value)
204
209
 
205
- @property
210
+ @_builtins.property
206
211
  @pulumi.getter(name="securityType")
207
- def security_type(self) -> Optional[pulumi.Input[str]]:
212
+ def security_type(self) -> Optional[pulumi.Input[_builtins.str]]:
208
213
  """
209
214
  The security type to use when using NFS v4.1.
210
215
  Can be one of `AUTH_SYS`, `SEC_KRB5`, or `SEC_KRB5I`. Forces a new resource
@@ -213,12 +218,12 @@ class NasDatastoreArgs:
213
218
  return pulumi.get(self, "security_type")
214
219
 
215
220
  @security_type.setter
216
- def security_type(self, value: Optional[pulumi.Input[str]]):
221
+ def security_type(self, value: Optional[pulumi.Input[_builtins.str]]):
217
222
  pulumi.set(self, "security_type", value)
218
223
 
219
- @property
224
+ @_builtins.property
220
225
  @pulumi.getter
221
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
226
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
222
227
  """
223
228
  The IDs of any tags to attach to this resource.
224
229
 
@@ -228,12 +233,12 @@ class NasDatastoreArgs:
228
233
  return pulumi.get(self, "tags")
229
234
 
230
235
  @tags.setter
231
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
236
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
232
237
  pulumi.set(self, "tags", value)
233
238
 
234
- @property
239
+ @_builtins.property
235
240
  @pulumi.getter
236
- def type(self) -> Optional[pulumi.Input[str]]:
241
+ def type(self) -> Optional[pulumi.Input[_builtins.str]]:
237
242
  """
238
243
  The type of NAS volume. Can be one of `NFS` (to denote
239
244
  v3) or `NFS41` (to denote NFS v4.1). Default: `NFS`. Forces a new resource if
@@ -242,84 +247,84 @@ class NasDatastoreArgs:
242
247
  return pulumi.get(self, "type")
243
248
 
244
249
  @type.setter
245
- def type(self, value: Optional[pulumi.Input[str]]):
250
+ def type(self, value: Optional[pulumi.Input[_builtins.str]]):
246
251
  pulumi.set(self, "type", value)
247
252
 
248
253
 
249
254
  @pulumi.input_type
250
255
  class _NasDatastoreState:
251
256
  def __init__(__self__, *,
252
- access_mode: Optional[pulumi.Input[str]] = None,
253
- accessible: Optional[pulumi.Input[bool]] = None,
254
- capacity: Optional[pulumi.Input[int]] = None,
255
- custom_attributes: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
256
- datastore_cluster_id: Optional[pulumi.Input[str]] = None,
257
- folder: Optional[pulumi.Input[str]] = None,
258
- free_space: Optional[pulumi.Input[int]] = None,
259
- host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
260
- maintenance_mode: Optional[pulumi.Input[str]] = None,
261
- multiple_host_access: Optional[pulumi.Input[bool]] = None,
262
- name: Optional[pulumi.Input[str]] = None,
263
- protocol_endpoint: Optional[pulumi.Input[bool]] = None,
264
- remote_hosts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
265
- remote_path: Optional[pulumi.Input[str]] = None,
266
- security_type: Optional[pulumi.Input[str]] = None,
267
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
268
- type: Optional[pulumi.Input[str]] = None,
269
- uncommitted_space: Optional[pulumi.Input[int]] = None,
270
- url: Optional[pulumi.Input[str]] = None):
257
+ access_mode: Optional[pulumi.Input[_builtins.str]] = None,
258
+ accessible: Optional[pulumi.Input[_builtins.bool]] = None,
259
+ capacity: Optional[pulumi.Input[_builtins.int]] = None,
260
+ custom_attributes: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
261
+ datastore_cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
262
+ folder: Optional[pulumi.Input[_builtins.str]] = None,
263
+ free_space: Optional[pulumi.Input[_builtins.int]] = None,
264
+ host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
265
+ maintenance_mode: Optional[pulumi.Input[_builtins.str]] = None,
266
+ multiple_host_access: Optional[pulumi.Input[_builtins.bool]] = None,
267
+ name: Optional[pulumi.Input[_builtins.str]] = None,
268
+ protocol_endpoint: Optional[pulumi.Input[_builtins.bool]] = None,
269
+ remote_hosts: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
270
+ remote_path: Optional[pulumi.Input[_builtins.str]] = None,
271
+ security_type: Optional[pulumi.Input[_builtins.str]] = None,
272
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
273
+ type: Optional[pulumi.Input[_builtins.str]] = None,
274
+ uncommitted_space: Optional[pulumi.Input[_builtins.int]] = None,
275
+ url: Optional[pulumi.Input[_builtins.str]] = None):
271
276
  """
272
277
  Input properties used for looking up and filtering NasDatastore resources.
273
- :param pulumi.Input[str] access_mode: Access mode for the mount point. Can be one of
278
+ :param pulumi.Input[_builtins.str] access_mode: Access mode for the mount point. Can be one of
274
279
  `readOnly` or `readWrite`. Note that `readWrite` does not necessarily mean
275
280
  that the datastore will be read-write depending on the permissions of the
276
281
  actual share. Default: `readWrite`. Forces a new resource if changed.
277
- :param pulumi.Input[bool] accessible: The connectivity status of the datastore. If this is `false`,
282
+ :param pulumi.Input[_builtins.bool] accessible: The connectivity status of the datastore. If this is `false`,
278
283
  some other computed attributes may be out of date.
279
- :param pulumi.Input[int] capacity: Maximum capacity of the datastore, in megabytes.
280
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] custom_attributes: Map of custom attribute ids to attribute
284
+ :param pulumi.Input[_builtins.int] capacity: Maximum capacity of the datastore, in megabytes.
285
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] custom_attributes: Map of custom attribute ids to attribute
281
286
  value strings to set on datasource resource.
282
287
 
283
288
  > **NOTE:** Custom attributes are unsupported on direct ESXi connections
284
289
  and require vCenter.
285
- :param pulumi.Input[str] datastore_cluster_id: The managed object
290
+ :param pulumi.Input[_builtins.str] datastore_cluster_id: The managed object
286
291
  ID of a datastore cluster to put this datastore in.
287
292
  Conflicts with `folder`.
288
- :param pulumi.Input[str] folder: The relative path to a folder to put this datastore in.
293
+ :param pulumi.Input[_builtins.str] folder: The relative path to a folder to put this datastore in.
289
294
  This is a path relative to the datacenter you are deploying the datastore to.
290
295
  Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`,
291
296
  The provider will place a datastore named `test` in a datastore folder
292
297
  located at `/dc1/datastore/foo/bar`, with the final inventory path being
293
298
  `/dc1/datastore/foo/bar/test`. Conflicts with
294
299
  `datastore_cluster_id`.
295
- :param pulumi.Input[int] free_space: Available space of this datastore, in megabytes.
296
- :param pulumi.Input[Sequence[pulumi.Input[str]]] host_system_ids: The managed object IDs of
300
+ :param pulumi.Input[_builtins.int] free_space: Available space of this datastore, in megabytes.
301
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] host_system_ids: The managed object IDs of
297
302
  the hosts to mount the datastore on.
298
- :param pulumi.Input[str] maintenance_mode: The current maintenance mode state of the datastore.
299
- :param pulumi.Input[bool] multiple_host_access: If `true`, more than one host in the datacenter has
303
+ :param pulumi.Input[_builtins.str] maintenance_mode: The current maintenance mode state of the datastore.
304
+ :param pulumi.Input[_builtins.bool] multiple_host_access: If `true`, more than one host in the datacenter has
300
305
  been configured with access to the datastore.
301
- :param pulumi.Input[str] name: The name of the datastore. Forces a new resource if
306
+ :param pulumi.Input[_builtins.str] name: The name of the datastore. Forces a new resource if
302
307
  changed.
303
- :param pulumi.Input[bool] protocol_endpoint: Indicates that this NAS volume is a protocol endpoint.
308
+ :param pulumi.Input[_builtins.bool] protocol_endpoint: Indicates that this NAS volume is a protocol endpoint.
304
309
  This field is only populated if the host supports virtual datastores.
305
- :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_hosts: The hostnames or IP addresses of the remote
306
- server or servers. Only one element should be present for NFS v3 but multiple
310
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] remote_hosts: The hostnames or IP addresses of the remote
311
+ servers. Only one element should be present for NFS v3 but multiple
307
312
  can be present for NFS v4.1. Forces a new resource if changed.
308
- :param pulumi.Input[str] remote_path: The remote path of the mount point. Forces a new
313
+ :param pulumi.Input[_builtins.str] remote_path: The remote path of the mount point. Forces a new
309
314
  resource if changed.
310
- :param pulumi.Input[str] security_type: The security type to use when using NFS v4.1.
315
+ :param pulumi.Input[_builtins.str] security_type: The security type to use when using NFS v4.1.
311
316
  Can be one of `AUTH_SYS`, `SEC_KRB5`, or `SEC_KRB5I`. Forces a new resource
312
317
  if changed.
313
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The IDs of any tags to attach to this resource.
318
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The IDs of any tags to attach to this resource.
314
319
 
315
320
  > **NOTE:** Tagging support is unsupported on direct ESXi connections and
316
321
  requires vCenter 6.0 or higher.
317
- :param pulumi.Input[str] type: The type of NAS volume. Can be one of `NFS` (to denote
322
+ :param pulumi.Input[_builtins.str] type: The type of NAS volume. Can be one of `NFS` (to denote
318
323
  v3) or `NFS41` (to denote NFS v4.1). Default: `NFS`. Forces a new resource if
319
324
  changed.
320
- :param pulumi.Input[int] uncommitted_space: Total additional storage space, in megabytes,
325
+ :param pulumi.Input[_builtins.int] uncommitted_space: Total additional storage space, in megabytes,
321
326
  potentially used by all virtual machines on this datastore.
322
- :param pulumi.Input[str] url: The unique locator for the datastore.
327
+ :param pulumi.Input[_builtins.str] url: The unique locator for the datastore.
323
328
  """
324
329
  if access_mode is not None:
325
330
  pulumi.set(__self__, "access_mode", access_mode)
@@ -360,9 +365,9 @@ class _NasDatastoreState:
360
365
  if url is not None:
361
366
  pulumi.set(__self__, "url", url)
362
367
 
363
- @property
368
+ @_builtins.property
364
369
  @pulumi.getter(name="accessMode")
365
- def access_mode(self) -> Optional[pulumi.Input[str]]:
370
+ def access_mode(self) -> Optional[pulumi.Input[_builtins.str]]:
366
371
  """
367
372
  Access mode for the mount point. Can be one of
368
373
  `readOnly` or `readWrite`. Note that `readWrite` does not necessarily mean
@@ -372,12 +377,12 @@ class _NasDatastoreState:
372
377
  return pulumi.get(self, "access_mode")
373
378
 
374
379
  @access_mode.setter
375
- def access_mode(self, value: Optional[pulumi.Input[str]]):
380
+ def access_mode(self, value: Optional[pulumi.Input[_builtins.str]]):
376
381
  pulumi.set(self, "access_mode", value)
377
382
 
378
- @property
383
+ @_builtins.property
379
384
  @pulumi.getter
380
- def accessible(self) -> Optional[pulumi.Input[bool]]:
385
+ def accessible(self) -> Optional[pulumi.Input[_builtins.bool]]:
381
386
  """
382
387
  The connectivity status of the datastore. If this is `false`,
383
388
  some other computed attributes may be out of date.
@@ -385,24 +390,24 @@ class _NasDatastoreState:
385
390
  return pulumi.get(self, "accessible")
386
391
 
387
392
  @accessible.setter
388
- def accessible(self, value: Optional[pulumi.Input[bool]]):
393
+ def accessible(self, value: Optional[pulumi.Input[_builtins.bool]]):
389
394
  pulumi.set(self, "accessible", value)
390
395
 
391
- @property
396
+ @_builtins.property
392
397
  @pulumi.getter
393
- def capacity(self) -> Optional[pulumi.Input[int]]:
398
+ def capacity(self) -> Optional[pulumi.Input[_builtins.int]]:
394
399
  """
395
400
  Maximum capacity of the datastore, in megabytes.
396
401
  """
397
402
  return pulumi.get(self, "capacity")
398
403
 
399
404
  @capacity.setter
400
- def capacity(self, value: Optional[pulumi.Input[int]]):
405
+ def capacity(self, value: Optional[pulumi.Input[_builtins.int]]):
401
406
  pulumi.set(self, "capacity", value)
402
407
 
403
- @property
408
+ @_builtins.property
404
409
  @pulumi.getter(name="customAttributes")
405
- def custom_attributes(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
410
+ def custom_attributes(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
406
411
  """
407
412
  Map of custom attribute ids to attribute
408
413
  value strings to set on datasource resource.
@@ -413,12 +418,12 @@ class _NasDatastoreState:
413
418
  return pulumi.get(self, "custom_attributes")
414
419
 
415
420
  @custom_attributes.setter
416
- def custom_attributes(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
421
+ def custom_attributes(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
417
422
  pulumi.set(self, "custom_attributes", value)
418
423
 
419
- @property
424
+ @_builtins.property
420
425
  @pulumi.getter(name="datastoreClusterId")
421
- def datastore_cluster_id(self) -> Optional[pulumi.Input[str]]:
426
+ def datastore_cluster_id(self) -> Optional[pulumi.Input[_builtins.str]]:
422
427
  """
423
428
  The managed object
424
429
  ID of a datastore cluster to put this datastore in.
@@ -427,12 +432,12 @@ class _NasDatastoreState:
427
432
  return pulumi.get(self, "datastore_cluster_id")
428
433
 
429
434
  @datastore_cluster_id.setter
430
- def datastore_cluster_id(self, value: Optional[pulumi.Input[str]]):
435
+ def datastore_cluster_id(self, value: Optional[pulumi.Input[_builtins.str]]):
431
436
  pulumi.set(self, "datastore_cluster_id", value)
432
437
 
433
- @property
438
+ @_builtins.property
434
439
  @pulumi.getter
435
- def folder(self) -> Optional[pulumi.Input[str]]:
440
+ def folder(self) -> Optional[pulumi.Input[_builtins.str]]:
436
441
  """
437
442
  The relative path to a folder to put this datastore in.
438
443
  This is a path relative to the datacenter you are deploying the datastore to.
@@ -445,24 +450,24 @@ class _NasDatastoreState:
445
450
  return pulumi.get(self, "folder")
446
451
 
447
452
  @folder.setter
448
- def folder(self, value: Optional[pulumi.Input[str]]):
453
+ def folder(self, value: Optional[pulumi.Input[_builtins.str]]):
449
454
  pulumi.set(self, "folder", value)
450
455
 
451
- @property
456
+ @_builtins.property
452
457
  @pulumi.getter(name="freeSpace")
453
- def free_space(self) -> Optional[pulumi.Input[int]]:
458
+ def free_space(self) -> Optional[pulumi.Input[_builtins.int]]:
454
459
  """
455
460
  Available space of this datastore, in megabytes.
456
461
  """
457
462
  return pulumi.get(self, "free_space")
458
463
 
459
464
  @free_space.setter
460
- def free_space(self, value: Optional[pulumi.Input[int]]):
465
+ def free_space(self, value: Optional[pulumi.Input[_builtins.int]]):
461
466
  pulumi.set(self, "free_space", value)
462
467
 
463
- @property
468
+ @_builtins.property
464
469
  @pulumi.getter(name="hostSystemIds")
465
- def host_system_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
470
+ def host_system_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
466
471
  """
467
472
  The managed object IDs of
468
473
  the hosts to mount the datastore on.
@@ -470,24 +475,24 @@ class _NasDatastoreState:
470
475
  return pulumi.get(self, "host_system_ids")
471
476
 
472
477
  @host_system_ids.setter
473
- def host_system_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
478
+ def host_system_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
474
479
  pulumi.set(self, "host_system_ids", value)
475
480
 
476
- @property
481
+ @_builtins.property
477
482
  @pulumi.getter(name="maintenanceMode")
478
- def maintenance_mode(self) -> Optional[pulumi.Input[str]]:
483
+ def maintenance_mode(self) -> Optional[pulumi.Input[_builtins.str]]:
479
484
  """
480
485
  The current maintenance mode state of the datastore.
481
486
  """
482
487
  return pulumi.get(self, "maintenance_mode")
483
488
 
484
489
  @maintenance_mode.setter
485
- def maintenance_mode(self, value: Optional[pulumi.Input[str]]):
490
+ def maintenance_mode(self, value: Optional[pulumi.Input[_builtins.str]]):
486
491
  pulumi.set(self, "maintenance_mode", value)
487
492
 
488
- @property
493
+ @_builtins.property
489
494
  @pulumi.getter(name="multipleHostAccess")
490
- def multiple_host_access(self) -> Optional[pulumi.Input[bool]]:
495
+ def multiple_host_access(self) -> Optional[pulumi.Input[_builtins.bool]]:
491
496
  """
492
497
  If `true`, more than one host in the datacenter has
493
498
  been configured with access to the datastore.
@@ -495,12 +500,12 @@ class _NasDatastoreState:
495
500
  return pulumi.get(self, "multiple_host_access")
496
501
 
497
502
  @multiple_host_access.setter
498
- def multiple_host_access(self, value: Optional[pulumi.Input[bool]]):
503
+ def multiple_host_access(self, value: Optional[pulumi.Input[_builtins.bool]]):
499
504
  pulumi.set(self, "multiple_host_access", value)
500
505
 
501
- @property
506
+ @_builtins.property
502
507
  @pulumi.getter
503
- def name(self) -> Optional[pulumi.Input[str]]:
508
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
504
509
  """
505
510
  The name of the datastore. Forces a new resource if
506
511
  changed.
@@ -508,12 +513,12 @@ class _NasDatastoreState:
508
513
  return pulumi.get(self, "name")
509
514
 
510
515
  @name.setter
511
- def name(self, value: Optional[pulumi.Input[str]]):
516
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
512
517
  pulumi.set(self, "name", value)
513
518
 
514
- @property
519
+ @_builtins.property
515
520
  @pulumi.getter(name="protocolEndpoint")
516
- def protocol_endpoint(self) -> Optional[pulumi.Input[bool]]:
521
+ def protocol_endpoint(self) -> Optional[pulumi.Input[_builtins.bool]]:
517
522
  """
518
523
  Indicates that this NAS volume is a protocol endpoint.
519
524
  This field is only populated if the host supports virtual datastores.
@@ -521,26 +526,26 @@ class _NasDatastoreState:
521
526
  return pulumi.get(self, "protocol_endpoint")
522
527
 
523
528
  @protocol_endpoint.setter
524
- def protocol_endpoint(self, value: Optional[pulumi.Input[bool]]):
529
+ def protocol_endpoint(self, value: Optional[pulumi.Input[_builtins.bool]]):
525
530
  pulumi.set(self, "protocol_endpoint", value)
526
531
 
527
- @property
532
+ @_builtins.property
528
533
  @pulumi.getter(name="remoteHosts")
529
- def remote_hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
534
+ def remote_hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
530
535
  """
531
536
  The hostnames or IP addresses of the remote
532
- server or servers. Only one element should be present for NFS v3 but multiple
537
+ servers. Only one element should be present for NFS v3 but multiple
533
538
  can be present for NFS v4.1. Forces a new resource if changed.
534
539
  """
535
540
  return pulumi.get(self, "remote_hosts")
536
541
 
537
542
  @remote_hosts.setter
538
- def remote_hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
543
+ def remote_hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
539
544
  pulumi.set(self, "remote_hosts", value)
540
545
 
541
- @property
546
+ @_builtins.property
542
547
  @pulumi.getter(name="remotePath")
543
- def remote_path(self) -> Optional[pulumi.Input[str]]:
548
+ def remote_path(self) -> Optional[pulumi.Input[_builtins.str]]:
544
549
  """
545
550
  The remote path of the mount point. Forces a new
546
551
  resource if changed.
@@ -548,12 +553,12 @@ class _NasDatastoreState:
548
553
  return pulumi.get(self, "remote_path")
549
554
 
550
555
  @remote_path.setter
551
- def remote_path(self, value: Optional[pulumi.Input[str]]):
556
+ def remote_path(self, value: Optional[pulumi.Input[_builtins.str]]):
552
557
  pulumi.set(self, "remote_path", value)
553
558
 
554
- @property
559
+ @_builtins.property
555
560
  @pulumi.getter(name="securityType")
556
- def security_type(self) -> Optional[pulumi.Input[str]]:
561
+ def security_type(self) -> Optional[pulumi.Input[_builtins.str]]:
557
562
  """
558
563
  The security type to use when using NFS v4.1.
559
564
  Can be one of `AUTH_SYS`, `SEC_KRB5`, or `SEC_KRB5I`. Forces a new resource
@@ -562,12 +567,12 @@ class _NasDatastoreState:
562
567
  return pulumi.get(self, "security_type")
563
568
 
564
569
  @security_type.setter
565
- def security_type(self, value: Optional[pulumi.Input[str]]):
570
+ def security_type(self, value: Optional[pulumi.Input[_builtins.str]]):
566
571
  pulumi.set(self, "security_type", value)
567
572
 
568
- @property
573
+ @_builtins.property
569
574
  @pulumi.getter
570
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
575
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
571
576
  """
572
577
  The IDs of any tags to attach to this resource.
573
578
 
@@ -577,12 +582,12 @@ class _NasDatastoreState:
577
582
  return pulumi.get(self, "tags")
578
583
 
579
584
  @tags.setter
580
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
585
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
581
586
  pulumi.set(self, "tags", value)
582
587
 
583
- @property
588
+ @_builtins.property
584
589
  @pulumi.getter
585
- def type(self) -> Optional[pulumi.Input[str]]:
590
+ def type(self) -> Optional[pulumi.Input[_builtins.str]]:
586
591
  """
587
592
  The type of NAS volume. Can be one of `NFS` (to denote
588
593
  v3) or `NFS41` (to denote NFS v4.1). Default: `NFS`. Forces a new resource if
@@ -591,12 +596,12 @@ class _NasDatastoreState:
591
596
  return pulumi.get(self, "type")
592
597
 
593
598
  @type.setter
594
- def type(self, value: Optional[pulumi.Input[str]]):
599
+ def type(self, value: Optional[pulumi.Input[_builtins.str]]):
595
600
  pulumi.set(self, "type", value)
596
601
 
597
- @property
602
+ @_builtins.property
598
603
  @pulumi.getter(name="uncommittedSpace")
599
- def uncommitted_space(self) -> Optional[pulumi.Input[int]]:
604
+ def uncommitted_space(self) -> Optional[pulumi.Input[_builtins.int]]:
600
605
  """
601
606
  Total additional storage space, in megabytes,
602
607
  potentially used by all virtual machines on this datastore.
@@ -604,79 +609,141 @@ class _NasDatastoreState:
604
609
  return pulumi.get(self, "uncommitted_space")
605
610
 
606
611
  @uncommitted_space.setter
607
- def uncommitted_space(self, value: Optional[pulumi.Input[int]]):
612
+ def uncommitted_space(self, value: Optional[pulumi.Input[_builtins.int]]):
608
613
  pulumi.set(self, "uncommitted_space", value)
609
614
 
610
- @property
615
+ @_builtins.property
611
616
  @pulumi.getter
612
- def url(self) -> Optional[pulumi.Input[str]]:
617
+ def url(self) -> Optional[pulumi.Input[_builtins.str]]:
613
618
  """
614
619
  The unique locator for the datastore.
615
620
  """
616
621
  return pulumi.get(self, "url")
617
622
 
618
623
  @url.setter
619
- def url(self, value: Optional[pulumi.Input[str]]):
624
+ def url(self, value: Optional[pulumi.Input[_builtins.str]]):
620
625
  pulumi.set(self, "url", value)
621
626
 
622
627
 
628
+ @pulumi.type_token("vsphere:index/nasDatastore:NasDatastore")
623
629
  class NasDatastore(pulumi.CustomResource):
624
630
  @overload
625
631
  def __init__(__self__,
626
632
  resource_name: str,
627
633
  opts: Optional[pulumi.ResourceOptions] = None,
628
- access_mode: Optional[pulumi.Input[str]] = None,
629
- custom_attributes: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
630
- datastore_cluster_id: Optional[pulumi.Input[str]] = None,
631
- folder: Optional[pulumi.Input[str]] = None,
632
- host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
633
- name: Optional[pulumi.Input[str]] = None,
634
- remote_hosts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
635
- remote_path: Optional[pulumi.Input[str]] = None,
636
- security_type: Optional[pulumi.Input[str]] = None,
637
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
638
- type: Optional[pulumi.Input[str]] = None,
634
+ access_mode: Optional[pulumi.Input[_builtins.str]] = None,
635
+ custom_attributes: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
636
+ datastore_cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
637
+ folder: Optional[pulumi.Input[_builtins.str]] = None,
638
+ host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
639
+ name: Optional[pulumi.Input[_builtins.str]] = None,
640
+ remote_hosts: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
641
+ remote_path: Optional[pulumi.Input[_builtins.str]] = None,
642
+ security_type: Optional[pulumi.Input[_builtins.str]] = None,
643
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
644
+ type: Optional[pulumi.Input[_builtins.str]] = None,
639
645
  __props__=None):
640
646
  """
641
- Create a NasDatastore resource with the given unique name, props, and options.
647
+ The `NasDatastore` resource can be used to create and manage NAS
648
+ datastores on an ESXi host or a set of hosts. The resource supports mounting
649
+ NFS v3 and v4.1 shares to be used as datastores.
650
+
651
+ > **NOTE:** Unlike `VmfsDatastore`, a NAS
652
+ datastore is only mounted on the hosts you choose to mount it on. To mount on
653
+ multiple hosts, you must specify each host that you want to add in the
654
+ `host_system_ids` argument.
655
+
656
+ ## Example Usage
657
+
658
+ The following example would set up a NFS v3 share on 3 hosts connected through
659
+ vCenter in the same datacenter - `esxi1`, `esxi2`, and `esxi3`. The remote host
660
+ is named `nfs` and has `/export/test` exported.
661
+
662
+ ```python
663
+ import pulumi
664
+ import pulumi_vsphere as vsphere
665
+
666
+ config = pulumi.Config()
667
+ hosts = config.get_object("hosts")
668
+ if hosts is None:
669
+ hosts = [
670
+ "esxi-01.example.com",
671
+ "esxi-02.example.com",
672
+ "esxi-03.example.com",
673
+ ]
674
+ datacenter = vsphere.get_datacenter(name="dc-01")
675
+ hosts_get_host = [vsphere.get_host(name=hosts[__index],
676
+ datacenter_id=datacenter.id) for __index in range(len(hosts))]
677
+ datastore = vsphere.NasDatastore("datastore",
678
+ name="test",
679
+ host_system_ids=[[__item["id"] for __item in esxi_hosts]],
680
+ type="NFS",
681
+ remote_hosts=["nfs"],
682
+ remote_path="/export/test")
683
+ ```
684
+
685
+ ## Import
686
+
687
+ An existing NAS datastore can be imported into this resource via
688
+
689
+ its managed object ID, via the following command:
690
+
691
+ [docs-import]: https://developer.hashicorp.com/terraform/cli/import
692
+
693
+ ```sh
694
+ $ pulumi import vsphere:index/nasDatastore:NasDatastore datastore datastore-123
695
+ ```
696
+
697
+ You need a tool like [`govc`][ext-govc] that can display managed object IDs.
698
+
699
+ [ext-govc]: https://github.com/vmware/govmomi/tree/master/govc
700
+
701
+ In the case of govc, you can locate a managed object ID from an inventory path
702
+
703
+ by doing the following:
704
+
705
+ $ govc ls -i /dc/datastore/terraform-test
706
+
707
+ Datastore:datastore-123
708
+
642
709
  :param str resource_name: The name of the resource.
643
710
  :param pulumi.ResourceOptions opts: Options for the resource.
644
- :param pulumi.Input[str] access_mode: Access mode for the mount point. Can be one of
711
+ :param pulumi.Input[_builtins.str] access_mode: Access mode for the mount point. Can be one of
645
712
  `readOnly` or `readWrite`. Note that `readWrite` does not necessarily mean
646
713
  that the datastore will be read-write depending on the permissions of the
647
714
  actual share. Default: `readWrite`. Forces a new resource if changed.
648
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] custom_attributes: Map of custom attribute ids to attribute
715
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] custom_attributes: Map of custom attribute ids to attribute
649
716
  value strings to set on datasource resource.
650
717
 
651
718
  > **NOTE:** Custom attributes are unsupported on direct ESXi connections
652
719
  and require vCenter.
653
- :param pulumi.Input[str] datastore_cluster_id: The managed object
720
+ :param pulumi.Input[_builtins.str] datastore_cluster_id: The managed object
654
721
  ID of a datastore cluster to put this datastore in.
655
722
  Conflicts with `folder`.
656
- :param pulumi.Input[str] folder: The relative path to a folder to put this datastore in.
723
+ :param pulumi.Input[_builtins.str] folder: The relative path to a folder to put this datastore in.
657
724
  This is a path relative to the datacenter you are deploying the datastore to.
658
725
  Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`,
659
726
  The provider will place a datastore named `test` in a datastore folder
660
727
  located at `/dc1/datastore/foo/bar`, with the final inventory path being
661
728
  `/dc1/datastore/foo/bar/test`. Conflicts with
662
729
  `datastore_cluster_id`.
663
- :param pulumi.Input[Sequence[pulumi.Input[str]]] host_system_ids: The managed object IDs of
730
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] host_system_ids: The managed object IDs of
664
731
  the hosts to mount the datastore on.
665
- :param pulumi.Input[str] name: The name of the datastore. Forces a new resource if
732
+ :param pulumi.Input[_builtins.str] name: The name of the datastore. Forces a new resource if
666
733
  changed.
667
- :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_hosts: The hostnames or IP addresses of the remote
668
- server or servers. Only one element should be present for NFS v3 but multiple
734
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] remote_hosts: The hostnames or IP addresses of the remote
735
+ servers. Only one element should be present for NFS v3 but multiple
669
736
  can be present for NFS v4.1. Forces a new resource if changed.
670
- :param pulumi.Input[str] remote_path: The remote path of the mount point. Forces a new
737
+ :param pulumi.Input[_builtins.str] remote_path: The remote path of the mount point. Forces a new
671
738
  resource if changed.
672
- :param pulumi.Input[str] security_type: The security type to use when using NFS v4.1.
739
+ :param pulumi.Input[_builtins.str] security_type: The security type to use when using NFS v4.1.
673
740
  Can be one of `AUTH_SYS`, `SEC_KRB5`, or `SEC_KRB5I`. Forces a new resource
674
741
  if changed.
675
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The IDs of any tags to attach to this resource.
742
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The IDs of any tags to attach to this resource.
676
743
 
677
744
  > **NOTE:** Tagging support is unsupported on direct ESXi connections and
678
745
  requires vCenter 6.0 or higher.
679
- :param pulumi.Input[str] type: The type of NAS volume. Can be one of `NFS` (to denote
746
+ :param pulumi.Input[_builtins.str] type: The type of NAS volume. Can be one of `NFS` (to denote
680
747
  v3) or `NFS41` (to denote NFS v4.1). Default: `NFS`. Forces a new resource if
681
748
  changed.
682
749
  """
@@ -687,7 +754,68 @@ class NasDatastore(pulumi.CustomResource):
687
754
  args: NasDatastoreArgs,
688
755
  opts: Optional[pulumi.ResourceOptions] = None):
689
756
  """
690
- Create a NasDatastore resource with the given unique name, props, and options.
757
+ The `NasDatastore` resource can be used to create and manage NAS
758
+ datastores on an ESXi host or a set of hosts. The resource supports mounting
759
+ NFS v3 and v4.1 shares to be used as datastores.
760
+
761
+ > **NOTE:** Unlike `VmfsDatastore`, a NAS
762
+ datastore is only mounted on the hosts you choose to mount it on. To mount on
763
+ multiple hosts, you must specify each host that you want to add in the
764
+ `host_system_ids` argument.
765
+
766
+ ## Example Usage
767
+
768
+ The following example would set up a NFS v3 share on 3 hosts connected through
769
+ vCenter in the same datacenter - `esxi1`, `esxi2`, and `esxi3`. The remote host
770
+ is named `nfs` and has `/export/test` exported.
771
+
772
+ ```python
773
+ import pulumi
774
+ import pulumi_vsphere as vsphere
775
+
776
+ config = pulumi.Config()
777
+ hosts = config.get_object("hosts")
778
+ if hosts is None:
779
+ hosts = [
780
+ "esxi-01.example.com",
781
+ "esxi-02.example.com",
782
+ "esxi-03.example.com",
783
+ ]
784
+ datacenter = vsphere.get_datacenter(name="dc-01")
785
+ hosts_get_host = [vsphere.get_host(name=hosts[__index],
786
+ datacenter_id=datacenter.id) for __index in range(len(hosts))]
787
+ datastore = vsphere.NasDatastore("datastore",
788
+ name="test",
789
+ host_system_ids=[[__item["id"] for __item in esxi_hosts]],
790
+ type="NFS",
791
+ remote_hosts=["nfs"],
792
+ remote_path="/export/test")
793
+ ```
794
+
795
+ ## Import
796
+
797
+ An existing NAS datastore can be imported into this resource via
798
+
799
+ its managed object ID, via the following command:
800
+
801
+ [docs-import]: https://developer.hashicorp.com/terraform/cli/import
802
+
803
+ ```sh
804
+ $ pulumi import vsphere:index/nasDatastore:NasDatastore datastore datastore-123
805
+ ```
806
+
807
+ You need a tool like [`govc`][ext-govc] that can display managed object IDs.
808
+
809
+ [ext-govc]: https://github.com/vmware/govmomi/tree/master/govc
810
+
811
+ In the case of govc, you can locate a managed object ID from an inventory path
812
+
813
+ by doing the following:
814
+
815
+ $ govc ls -i /dc/datastore/terraform-test
816
+
817
+ Datastore:datastore-123
818
+
691
819
  :param str resource_name: The name of the resource.
692
820
  :param NasDatastoreArgs args: The arguments to use to populate this resource's properties.
693
821
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -703,17 +831,17 @@ class NasDatastore(pulumi.CustomResource):
703
831
  def _internal_init(__self__,
704
832
  resource_name: str,
705
833
  opts: Optional[pulumi.ResourceOptions] = None,
706
- access_mode: Optional[pulumi.Input[str]] = None,
707
- custom_attributes: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
708
- datastore_cluster_id: Optional[pulumi.Input[str]] = None,
709
- folder: Optional[pulumi.Input[str]] = None,
710
- host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
711
- name: Optional[pulumi.Input[str]] = None,
712
- remote_hosts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
713
- remote_path: Optional[pulumi.Input[str]] = None,
714
- security_type: Optional[pulumi.Input[str]] = None,
715
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
716
- type: Optional[pulumi.Input[str]] = None,
834
+ access_mode: Optional[pulumi.Input[_builtins.str]] = None,
835
+ custom_attributes: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
836
+ datastore_cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
837
+ folder: Optional[pulumi.Input[_builtins.str]] = None,
838
+ host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
839
+ name: Optional[pulumi.Input[_builtins.str]] = None,
840
+ remote_hosts: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
841
+ remote_path: Optional[pulumi.Input[_builtins.str]] = None,
842
+ security_type: Optional[pulumi.Input[_builtins.str]] = None,
843
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
844
+ type: Optional[pulumi.Input[_builtins.str]] = None,
717
845
  __props__=None):
718
846
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
719
847
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -758,25 +886,25 @@ class NasDatastore(pulumi.CustomResource):
758
886
  def get(resource_name: str,
759
887
  id: pulumi.Input[str],
760
888
  opts: Optional[pulumi.ResourceOptions] = None,
761
- access_mode: Optional[pulumi.Input[str]] = None,
762
- accessible: Optional[pulumi.Input[bool]] = None,
763
- capacity: Optional[pulumi.Input[int]] = None,
764
- custom_attributes: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
765
- datastore_cluster_id: Optional[pulumi.Input[str]] = None,
766
- folder: Optional[pulumi.Input[str]] = None,
767
- free_space: Optional[pulumi.Input[int]] = None,
768
- host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
769
- maintenance_mode: Optional[pulumi.Input[str]] = None,
770
- multiple_host_access: Optional[pulumi.Input[bool]] = None,
771
- name: Optional[pulumi.Input[str]] = None,
772
- protocol_endpoint: Optional[pulumi.Input[bool]] = None,
773
- remote_hosts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
774
- remote_path: Optional[pulumi.Input[str]] = None,
775
- security_type: Optional[pulumi.Input[str]] = None,
776
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
777
- type: Optional[pulumi.Input[str]] = None,
778
- uncommitted_space: Optional[pulumi.Input[int]] = None,
779
- url: Optional[pulumi.Input[str]] = None) -> 'NasDatastore':
889
+ access_mode: Optional[pulumi.Input[_builtins.str]] = None,
890
+ accessible: Optional[pulumi.Input[_builtins.bool]] = None,
891
+ capacity: Optional[pulumi.Input[_builtins.int]] = None,
892
+ custom_attributes: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
893
+ datastore_cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
894
+ folder: Optional[pulumi.Input[_builtins.str]] = None,
895
+ free_space: Optional[pulumi.Input[_builtins.int]] = None,
896
+ host_system_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
897
+ maintenance_mode: Optional[pulumi.Input[_builtins.str]] = None,
898
+ multiple_host_access: Optional[pulumi.Input[_builtins.bool]] = None,
899
+ name: Optional[pulumi.Input[_builtins.str]] = None,
900
+ protocol_endpoint: Optional[pulumi.Input[_builtins.bool]] = None,
901
+ remote_hosts: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
902
+ remote_path: Optional[pulumi.Input[_builtins.str]] = None,
903
+ security_type: Optional[pulumi.Input[_builtins.str]] = None,
904
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
905
+ type: Optional[pulumi.Input[_builtins.str]] = None,
906
+ uncommitted_space: Optional[pulumi.Input[_builtins.int]] = None,
907
+ url: Optional[pulumi.Input[_builtins.str]] = None) -> 'NasDatastore':
780
908
  """
781
909
  Get an existing NasDatastore resource's state with the given name, id, and optional extra
782
910
  properties used to qualify the lookup.
@@ -784,56 +912,56 @@ class NasDatastore(pulumi.CustomResource):
784
912
  :param str resource_name: The unique name of the resulting resource.
785
913
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
786
914
  :param pulumi.ResourceOptions opts: Options for the resource.
787
- :param pulumi.Input[str] access_mode: Access mode for the mount point. Can be one of
915
+ :param pulumi.Input[_builtins.str] access_mode: Access mode for the mount point. Can be one of
788
916
  `readOnly` or `readWrite`. Note that `readWrite` does not necessarily mean
789
917
  that the datastore will be read-write depending on the permissions of the
790
918
  actual share. Default: `readWrite`. Forces a new resource if changed.
791
- :param pulumi.Input[bool] accessible: The connectivity status of the datastore. If this is `false`,
919
+ :param pulumi.Input[_builtins.bool] accessible: The connectivity status of the datastore. If this is `false`,
792
920
  some other computed attributes may be out of date.
793
- :param pulumi.Input[int] capacity: Maximum capacity of the datastore, in megabytes.
794
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] custom_attributes: Map of custom attribute ids to attribute
921
+ :param pulumi.Input[_builtins.int] capacity: Maximum capacity of the datastore, in megabytes.
922
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] custom_attributes: Map of custom attribute ids to attribute
795
923
  value strings to set on datasource resource.
796
924
 
797
925
  > **NOTE:** Custom attributes are unsupported on direct ESXi connections
798
926
  and require vCenter.
799
- :param pulumi.Input[str] datastore_cluster_id: The managed object
927
+ :param pulumi.Input[_builtins.str] datastore_cluster_id: The managed object
800
928
  ID of a datastore cluster to put this datastore in.
801
929
  Conflicts with `folder`.
802
- :param pulumi.Input[str] folder: The relative path to a folder to put this datastore in.
930
+ :param pulumi.Input[_builtins.str] folder: The relative path to a folder to put this datastore in.
803
931
  This is a path relative to the datacenter you are deploying the datastore to.
804
932
  Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`,
805
933
  The provider will place a datastore named `test` in a datastore folder
806
934
  located at `/dc1/datastore/foo/bar`, with the final inventory path being
807
935
  `/dc1/datastore/foo/bar/test`. Conflicts with
808
936
  `datastore_cluster_id`.
809
- :param pulumi.Input[int] free_space: Available space of this datastore, in megabytes.
810
- :param pulumi.Input[Sequence[pulumi.Input[str]]] host_system_ids: The managed object IDs of
937
+ :param pulumi.Input[_builtins.int] free_space: Available space of this datastore, in megabytes.
938
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] host_system_ids: The managed object IDs of
811
939
  the hosts to mount the datastore on.
812
- :param pulumi.Input[str] maintenance_mode: The current maintenance mode state of the datastore.
813
- :param pulumi.Input[bool] multiple_host_access: If `true`, more than one host in the datacenter has
940
+ :param pulumi.Input[_builtins.str] maintenance_mode: The current maintenance mode state of the datastore.
941
+ :param pulumi.Input[_builtins.bool] multiple_host_access: If `true`, more than one host in the datacenter has
814
942
  been configured with access to the datastore.
815
- :param pulumi.Input[str] name: The name of the datastore. Forces a new resource if
943
+ :param pulumi.Input[_builtins.str] name: The name of the datastore. Forces a new resource if
816
944
  changed.
817
- :param pulumi.Input[bool] protocol_endpoint: Indicates that this NAS volume is a protocol endpoint.
945
+ :param pulumi.Input[_builtins.bool] protocol_endpoint: Indicates that this NAS volume is a protocol endpoint.
818
946
  This field is only populated if the host supports virtual datastores.
819
- :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_hosts: The hostnames or IP addresses of the remote
820
- server or servers. Only one element should be present for NFS v3 but multiple
947
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] remote_hosts: The hostnames or IP addresses of the remote
948
+ servers. Only one element should be present for NFS v3 but multiple
821
949
  can be present for NFS v4.1. Forces a new resource if changed.
822
- :param pulumi.Input[str] remote_path: The remote path of the mount point. Forces a new
950
+ :param pulumi.Input[_builtins.str] remote_path: The remote path of the mount point. Forces a new
823
951
  resource if changed.
824
- :param pulumi.Input[str] security_type: The security type to use when using NFS v4.1.
952
+ :param pulumi.Input[_builtins.str] security_type: The security type to use when using NFS v4.1.
825
953
  Can be one of `AUTH_SYS`, `SEC_KRB5`, or `SEC_KRB5I`. Forces a new resource
826
954
  if changed.
827
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The IDs of any tags to attach to this resource.
955
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The IDs of any tags to attach to this resource.
828
956
 
829
957
  > **NOTE:** Tagging support is unsupported on direct ESXi connections and
830
958
  requires vCenter 6.0 or higher.
831
- :param pulumi.Input[str] type: The type of NAS volume. Can be one of `NFS` (to denote
959
+ :param pulumi.Input[_builtins.str] type: The type of NAS volume. Can be one of `NFS` (to denote
832
960
  v3) or `NFS41` (to denote NFS v4.1). Default: `NFS`. Forces a new resource if
833
961
  changed.
834
- :param pulumi.Input[int] uncommitted_space: Total additional storage space, in megabytes,
962
+ :param pulumi.Input[_builtins.int] uncommitted_space: Total additional storage space, in megabytes,
835
963
  potentially used by all virtual machines on this datastore.
836
- :param pulumi.Input[str] url: The unique locator for the datastore.
964
+ :param pulumi.Input[_builtins.str] url: The unique locator for the datastore.
837
965
  """
838
966
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
839
967
 
@@ -860,9 +988,9 @@ class NasDatastore(pulumi.CustomResource):
860
988
  __props__.__dict__["url"] = url
861
989
  return NasDatastore(resource_name, opts=opts, __props__=__props__)
862
990
 
863
- @property
991
+ @_builtins.property
864
992
  @pulumi.getter(name="accessMode")
865
- def access_mode(self) -> pulumi.Output[Optional[str]]:
993
+ def access_mode(self) -> pulumi.Output[Optional[_builtins.str]]:
866
994
  """
867
995
  Access mode for the mount point. Can be one of
868
996
  `readOnly` or `readWrite`. Note that `readWrite` does not necessarily mean
@@ -871,26 +999,26 @@ class NasDatastore(pulumi.CustomResource):
871
999
  """
872
1000
  return pulumi.get(self, "access_mode")
873
1001
 
874
- @property
1002
+ @_builtins.property
875
1003
  @pulumi.getter
876
- def accessible(self) -> pulumi.Output[bool]:
1004
+ def accessible(self) -> pulumi.Output[_builtins.bool]:
877
1005
  """
878
1006
  The connectivity status of the datastore. If this is `false`,
879
1007
  some other computed attributes may be out of date.
880
1008
  """
881
1009
  return pulumi.get(self, "accessible")
882
1010
 
883
- @property
1011
+ @_builtins.property
884
1012
  @pulumi.getter
885
- def capacity(self) -> pulumi.Output[int]:
1013
+ def capacity(self) -> pulumi.Output[_builtins.int]:
886
1014
  """
887
1015
  Maximum capacity of the datastore, in megabytes.
888
1016
  """
889
1017
  return pulumi.get(self, "capacity")
890
1018
 
891
- @property
1019
+ @_builtins.property
892
1020
  @pulumi.getter(name="customAttributes")
893
- def custom_attributes(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
1021
+ def custom_attributes(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
894
1022
  """
895
1023
  Map of custom attribute ids to attribute
896
1024
  value strings to set on datasource resource.
@@ -900,9 +1028,9 @@ class NasDatastore(pulumi.CustomResource):
900
1028
  """
901
1029
  return pulumi.get(self, "custom_attributes")
902
1030
 
903
- @property
1031
+ @_builtins.property
904
1032
  @pulumi.getter(name="datastoreClusterId")
905
- def datastore_cluster_id(self) -> pulumi.Output[Optional[str]]:
1033
+ def datastore_cluster_id(self) -> pulumi.Output[Optional[_builtins.str]]:
906
1034
  """
907
1035
  The managed object
908
1036
  ID of a datastore cluster to put this datastore in.
@@ -910,9 +1038,9 @@ class NasDatastore(pulumi.CustomResource):
910
1038
  """
911
1039
  return pulumi.get(self, "datastore_cluster_id")
912
1040
 
913
- @property
1041
+ @_builtins.property
914
1042
  @pulumi.getter
915
- def folder(self) -> pulumi.Output[Optional[str]]:
1043
+ def folder(self) -> pulumi.Output[Optional[_builtins.str]]:
916
1044
  """
917
1045
  The relative path to a folder to put this datastore in.
918
1046
  This is a path relative to the datacenter you are deploying the datastore to.
@@ -924,80 +1052,80 @@ class NasDatastore(pulumi.CustomResource):
924
1052
  """
925
1053
  return pulumi.get(self, "folder")
926
1054
 
927
- @property
1055
+ @_builtins.property
928
1056
  @pulumi.getter(name="freeSpace")
929
- def free_space(self) -> pulumi.Output[int]:
1057
+ def free_space(self) -> pulumi.Output[_builtins.int]:
930
1058
  """
931
1059
  Available space of this datastore, in megabytes.
932
1060
  """
933
1061
  return pulumi.get(self, "free_space")
934
1062
 
935
- @property
1063
+ @_builtins.property
936
1064
  @pulumi.getter(name="hostSystemIds")
937
- def host_system_ids(self) -> pulumi.Output[Sequence[str]]:
1065
+ def host_system_ids(self) -> pulumi.Output[Sequence[_builtins.str]]:
938
1066
  """
939
1067
  The managed object IDs of
940
1068
  the hosts to mount the datastore on.
941
1069
  """
942
1070
  return pulumi.get(self, "host_system_ids")
943
1071
 
944
- @property
1072
+ @_builtins.property
945
1073
  @pulumi.getter(name="maintenanceMode")
946
- def maintenance_mode(self) -> pulumi.Output[str]:
1074
+ def maintenance_mode(self) -> pulumi.Output[_builtins.str]:
947
1075
  """
948
1076
  The current maintenance mode state of the datastore.
949
1077
  """
950
1078
  return pulumi.get(self, "maintenance_mode")
951
1079
 
952
- @property
1080
+ @_builtins.property
953
1081
  @pulumi.getter(name="multipleHostAccess")
954
- def multiple_host_access(self) -> pulumi.Output[bool]:
1082
+ def multiple_host_access(self) -> pulumi.Output[_builtins.bool]:
955
1083
  """
956
1084
  If `true`, more than one host in the datacenter has
957
1085
  been configured with access to the datastore.
958
1086
  """
959
1087
  return pulumi.get(self, "multiple_host_access")
960
1088
 
961
- @property
1089
+ @_builtins.property
962
1090
  @pulumi.getter
963
- def name(self) -> pulumi.Output[str]:
1091
+ def name(self) -> pulumi.Output[_builtins.str]:
964
1092
  """
965
1093
  The name of the datastore. Forces a new resource if
966
1094
  changed.
967
1095
  """
968
1096
  return pulumi.get(self, "name")
969
1097
 
970
- @property
1098
+ @_builtins.property
971
1099
  @pulumi.getter(name="protocolEndpoint")
972
- def protocol_endpoint(self) -> pulumi.Output[bool]:
1100
+ def protocol_endpoint(self) -> pulumi.Output[_builtins.bool]:
973
1101
  """
974
1102
  Indicates that this NAS volume is a protocol endpoint.
975
1103
  This field is only populated if the host supports virtual datastores.
976
1104
  """
977
1105
  return pulumi.get(self, "protocol_endpoint")
978
1106
 
979
- @property
1107
+ @_builtins.property
980
1108
  @pulumi.getter(name="remoteHosts")
981
- def remote_hosts(self) -> pulumi.Output[Sequence[str]]:
1109
+ def remote_hosts(self) -> pulumi.Output[Sequence[_builtins.str]]:
982
1110
  """
983
1111
  The hostnames or IP addresses of the remote
984
- server or servers. Only one element should be present for NFS v3 but multiple
1112
+ servers. Only one element should be present for NFS v3 but multiple
985
1113
  can be present for NFS v4.1. Forces a new resource if changed.
986
1114
  """
987
1115
  return pulumi.get(self, "remote_hosts")
988
1116
 
989
- @property
1117
+ @_builtins.property
990
1118
  @pulumi.getter(name="remotePath")
991
- def remote_path(self) -> pulumi.Output[str]:
1119
+ def remote_path(self) -> pulumi.Output[_builtins.str]:
992
1120
  """
993
1121
  The remote path of the mount point. Forces a new
994
1122
  resource if changed.
995
1123
  """
996
1124
  return pulumi.get(self, "remote_path")
997
1125
 
998
- @property
1126
+ @_builtins.property
999
1127
  @pulumi.getter(name="securityType")
1000
- def security_type(self) -> pulumi.Output[Optional[str]]:
1128
+ def security_type(self) -> pulumi.Output[Optional[_builtins.str]]:
1001
1129
  """
1002
1130
  The security type to use when using NFS v4.1.
1003
1131
  Can be one of `AUTH_SYS`, `SEC_KRB5`, or `SEC_KRB5I`. Forces a new resource
@@ -1005,9 +1133,9 @@ class NasDatastore(pulumi.CustomResource):
1005
1133
  """
1006
1134
  return pulumi.get(self, "security_type")
1007
1135
 
1008
- @property
1136
+ @_builtins.property
1009
1137
  @pulumi.getter
1010
- def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
1138
+ def tags(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1011
1139
  """
1012
1140
  The IDs of any tags to attach to this resource.
1013
1141
 
@@ -1016,9 +1144,9 @@ class NasDatastore(pulumi.CustomResource):
1016
1144
  """
1017
1145
  return pulumi.get(self, "tags")
1018
1146
 
1019
- @property
1147
+ @_builtins.property
1020
1148
  @pulumi.getter
1021
- def type(self) -> pulumi.Output[Optional[str]]:
1149
+ def type(self) -> pulumi.Output[Optional[_builtins.str]]:
1022
1150
  """
1023
1151
  The type of NAS volume. Can be one of `NFS` (to denote
1024
1152
  v3) or `NFS41` (to denote NFS v4.1). Default: `NFS`. Forces a new resource if
@@ -1026,18 +1154,18 @@ class NasDatastore(pulumi.CustomResource):
1026
1154
  """
1027
1155
  return pulumi.get(self, "type")
1028
1156
 
1029
- @property
1157
+ @_builtins.property
1030
1158
  @pulumi.getter(name="uncommittedSpace")
1031
- def uncommitted_space(self) -> pulumi.Output[int]:
1159
+ def uncommitted_space(self) -> pulumi.Output[_builtins.int]:
1032
1160
  """
1033
1161
  Total additional storage space, in megabytes,
1034
1162
  potentially used by all virtual machines on this datastore.
1035
1163
  """
1036
1164
  return pulumi.get(self, "uncommitted_space")
1037
1165
 
1038
- @property
1166
+ @_builtins.property
1039
1167
  @pulumi.getter
1040
- def url(self) -> pulumi.Output[str]:
1168
+ def url(self) -> pulumi.Output[_builtins.str]:
1041
1169
  """
1042
1170
  The unique locator for the datastore.
1043
1171
  """