pulumi-nomad 2.3.0a1714584524__py3-none-any.whl → 2.5.0a1736834448__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.
Files changed (54) hide show
  1. pulumi_nomad/__init__.py +1 -0
  2. pulumi_nomad/_inputs.py +912 -97
  3. pulumi_nomad/_utilities.py +41 -5
  4. pulumi_nomad/acl_auth_method.py +40 -35
  5. pulumi_nomad/acl_binding_rule.py +5 -0
  6. pulumi_nomad/acl_policy.py +10 -5
  7. pulumi_nomad/acl_role.py +10 -5
  8. pulumi_nomad/acl_token.py +10 -5
  9. pulumi_nomad/config/__init__.pyi +5 -0
  10. pulumi_nomad/config/outputs.py +5 -0
  11. pulumi_nomad/config/vars.py +5 -0
  12. pulumi_nomad/csi_volume.py +21 -16
  13. pulumi_nomad/csi_volume_registration.py +21 -16
  14. pulumi_nomad/external_volume.py +59 -54
  15. pulumi_nomad/get_acl_policies.py +14 -5
  16. pulumi_nomad/get_acl_policy.py +15 -5
  17. pulumi_nomad/get_acl_role.py +15 -5
  18. pulumi_nomad/get_acl_roles.py +14 -5
  19. pulumi_nomad/get_acl_token.py +22 -5
  20. pulumi_nomad/get_acl_tokens.py +14 -5
  21. pulumi_nomad/get_allocations.py +18 -5
  22. pulumi_nomad/get_datacenters.py +16 -5
  23. pulumi_nomad/get_deployments.py +18 -6
  24. pulumi_nomad/get_job.py +34 -5
  25. pulumi_nomad/get_job_parser.py +16 -5
  26. pulumi_nomad/get_jwks.py +124 -0
  27. pulumi_nomad/get_namespace.py +18 -5
  28. pulumi_nomad/get_namespaces.py +12 -5
  29. pulumi_nomad/get_node_pool.py +16 -5
  30. pulumi_nomad/get_node_pools.py +16 -5
  31. pulumi_nomad/get_plugin.py +25 -5
  32. pulumi_nomad/get_plugins.py +15 -6
  33. pulumi_nomad/get_regions.py +12 -5
  34. pulumi_nomad/get_scaling_policies.py +16 -5
  35. pulumi_nomad/get_scaling_policy.py +19 -6
  36. pulumi_nomad/get_scheduler_policy.py +14 -5
  37. pulumi_nomad/get_variable.py +17 -6
  38. pulumi_nomad/get_volumes.py +21 -6
  39. pulumi_nomad/job.py +16 -82
  40. pulumi_nomad/namespace.py +29 -24
  41. pulumi_nomad/node_pool.py +10 -5
  42. pulumi_nomad/outputs.py +309 -87
  43. pulumi_nomad/provider.py +8 -3
  44. pulumi_nomad/pulumi-plugin.json +2 -1
  45. pulumi_nomad/quote_specification.py +24 -19
  46. pulumi_nomad/scheduler_config.py +5 -0
  47. pulumi_nomad/sentinel_policy.py +5 -0
  48. pulumi_nomad/variable.py +19 -14
  49. pulumi_nomad/volume.py +65 -72
  50. {pulumi_nomad-2.3.0a1714584524.dist-info → pulumi_nomad-2.5.0a1736834448.dist-info}/METADATA +7 -6
  51. pulumi_nomad-2.5.0a1736834448.dist-info/RECORD +55 -0
  52. {pulumi_nomad-2.3.0a1714584524.dist-info → pulumi_nomad-2.5.0a1736834448.dist-info}/WHEEL +1 -1
  53. pulumi_nomad-2.3.0a1714584524.dist-info/RECORD +0 -54
  54. {pulumi_nomad-2.3.0a1714584524.dist-info → pulumi_nomad-2.5.0a1736834448.dist-info}/top_level.txt +0 -0
pulumi_nomad/provider.py CHANGED
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
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
  from ._inputs import *
12
17
 
@@ -270,7 +275,7 @@ class Provider(pulumi.ProviderResource):
270
275
  cert_file: Optional[pulumi.Input[str]] = None,
271
276
  cert_pem: Optional[pulumi.Input[str]] = None,
272
277
  consul_token: Optional[pulumi.Input[str]] = None,
273
- headers: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ProviderHeaderArgs']]]]] = None,
278
+ headers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProviderHeaderArgs', 'ProviderHeaderArgsDict']]]]] = None,
274
279
  http_auth: Optional[pulumi.Input[str]] = None,
275
280
  ignore_env_vars: Optional[pulumi.Input[Mapping[str, pulumi.Input[bool]]]] = None,
276
281
  key_file: Optional[pulumi.Input[str]] = None,
@@ -294,7 +299,7 @@ class Provider(pulumi.ProviderResource):
294
299
  :param pulumi.Input[str] cert_file: A path to a PEM-encoded certificate provided to the remote agent; requires use of key_file or key_pem.
295
300
  :param pulumi.Input[str] cert_pem: PEM-encoded certificate provided to the remote agent; requires use of key_file or key_pem.
296
301
  :param pulumi.Input[str] consul_token: Consul token to validate Consul Connect Service Identity policies specified in the job file.
297
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ProviderHeaderArgs']]]] headers: The headers to send with each Nomad request.
302
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ProviderHeaderArgs', 'ProviderHeaderArgsDict']]]] headers: The headers to send with each Nomad request.
298
303
  :param pulumi.Input[str] http_auth: HTTP basic auth configuration.
299
304
  :param pulumi.Input[Mapping[str, pulumi.Input[bool]]] ignore_env_vars: A set of environment variables that are ignored by the provider when configuring the Nomad API client.
300
305
  :param pulumi.Input[str] key_file: A path to a PEM-encoded private key, required if cert_file or cert_pem is specified.
@@ -337,7 +342,7 @@ class Provider(pulumi.ProviderResource):
337
342
  cert_file: Optional[pulumi.Input[str]] = None,
338
343
  cert_pem: Optional[pulumi.Input[str]] = None,
339
344
  consul_token: Optional[pulumi.Input[str]] = None,
340
- headers: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ProviderHeaderArgs']]]]] = None,
345
+ headers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProviderHeaderArgs', 'ProviderHeaderArgsDict']]]]] = None,
341
346
  http_auth: Optional[pulumi.Input[str]] = None,
342
347
  ignore_env_vars: Optional[pulumi.Input[Mapping[str, pulumi.Input[bool]]]] = None,
343
348
  key_file: Optional[pulumi.Input[str]] = None,
@@ -1,4 +1,5 @@
1
1
  {
2
2
  "resource": true,
3
- "name": "nomad"
3
+ "name": "nomad",
4
+ "version": "2.5.0-alpha.1736834448"
4
5
  }
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
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
  from . import outputs
12
17
  from ._inputs import *
@@ -134,7 +139,7 @@ class QuoteSpecification(pulumi.CustomResource):
134
139
  resource_name: str,
135
140
  opts: Optional[pulumi.ResourceOptions] = None,
136
141
  description: Optional[pulumi.Input[str]] = None,
137
- limits: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['QuoteSpecificationLimitArgs']]]]] = None,
142
+ limits: Optional[pulumi.Input[Sequence[pulumi.Input[Union['QuoteSpecificationLimitArgs', 'QuoteSpecificationLimitArgsDict']]]]] = None,
138
143
  name: Optional[pulumi.Input[str]] = None,
139
144
  __props__=None):
140
145
  """
@@ -151,19 +156,19 @@ class QuoteSpecification(pulumi.CustomResource):
151
156
  prod_api = nomad.QuoteSpecification("prod_api",
152
157
  name="prod-api",
153
158
  description="Production instances of backend API servers",
154
- limits=[nomad.QuoteSpecificationLimitArgs(
155
- region="global",
156
- region_limit=nomad.QuoteSpecificationLimitRegionLimitArgs(
157
- cpu=2400,
158
- memory_mb=1200,
159
- ),
160
- )])
159
+ limits=[{
160
+ "region": "global",
161
+ "region_limit": {
162
+ "cpu": 2400,
163
+ "memory_mb": 1200,
164
+ },
165
+ }])
161
166
  ```
162
167
 
163
168
  :param str resource_name: The name of the resource.
164
169
  :param pulumi.ResourceOptions opts: Options for the resource.
165
170
  :param pulumi.Input[str] description: `(string: "")` - A description of the quota specification.
166
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['QuoteSpecificationLimitArgs']]]] limits: `(block: <required>)` - A block of quota limits to enforce. Can
171
+ :param pulumi.Input[Sequence[pulumi.Input[Union['QuoteSpecificationLimitArgs', 'QuoteSpecificationLimitArgsDict']]]] limits: `(block: <required>)` - A block of quota limits to enforce. Can
167
172
  be repeated. See below for the structure of this block.
168
173
  :param pulumi.Input[str] name: `(string: <required>)` - A unique name for the quota specification.
169
174
  """
@@ -187,13 +192,13 @@ class QuoteSpecification(pulumi.CustomResource):
187
192
  prod_api = nomad.QuoteSpecification("prod_api",
188
193
  name="prod-api",
189
194
  description="Production instances of backend API servers",
190
- limits=[nomad.QuoteSpecificationLimitArgs(
191
- region="global",
192
- region_limit=nomad.QuoteSpecificationLimitRegionLimitArgs(
193
- cpu=2400,
194
- memory_mb=1200,
195
- ),
196
- )])
195
+ limits=[{
196
+ "region": "global",
197
+ "region_limit": {
198
+ "cpu": 2400,
199
+ "memory_mb": 1200,
200
+ },
201
+ }])
197
202
  ```
198
203
 
199
204
  :param str resource_name: The name of the resource.
@@ -212,7 +217,7 @@ class QuoteSpecification(pulumi.CustomResource):
212
217
  resource_name: str,
213
218
  opts: Optional[pulumi.ResourceOptions] = None,
214
219
  description: Optional[pulumi.Input[str]] = None,
215
- limits: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['QuoteSpecificationLimitArgs']]]]] = None,
220
+ limits: Optional[pulumi.Input[Sequence[pulumi.Input[Union['QuoteSpecificationLimitArgs', 'QuoteSpecificationLimitArgsDict']]]]] = None,
216
221
  name: Optional[pulumi.Input[str]] = None,
217
222
  __props__=None):
218
223
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -239,7 +244,7 @@ class QuoteSpecification(pulumi.CustomResource):
239
244
  id: pulumi.Input[str],
240
245
  opts: Optional[pulumi.ResourceOptions] = None,
241
246
  description: Optional[pulumi.Input[str]] = None,
242
- limits: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['QuoteSpecificationLimitArgs']]]]] = None,
247
+ limits: Optional[pulumi.Input[Sequence[pulumi.Input[Union['QuoteSpecificationLimitArgs', 'QuoteSpecificationLimitArgsDict']]]]] = None,
243
248
  name: Optional[pulumi.Input[str]] = None) -> 'QuoteSpecification':
244
249
  """
245
250
  Get an existing QuoteSpecification resource's state with the given name, id, and optional extra
@@ -249,7 +254,7 @@ class QuoteSpecification(pulumi.CustomResource):
249
254
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
250
255
  :param pulumi.ResourceOptions opts: Options for the resource.
251
256
  :param pulumi.Input[str] description: `(string: "")` - A description of the quota specification.
252
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['QuoteSpecificationLimitArgs']]]] limits: `(block: <required>)` - A block of quota limits to enforce. Can
257
+ :param pulumi.Input[Sequence[pulumi.Input[Union['QuoteSpecificationLimitArgs', 'QuoteSpecificationLimitArgsDict']]]] limits: `(block: <required>)` - A block of quota limits to enforce. Can
253
258
  be repeated. See below for the structure of this block.
254
259
  :param pulumi.Input[str] name: `(string: <required>)` - A unique name for the quota specification.
255
260
  """
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
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__ = ['SchedulerConfigArgs', 'SchedulerConfig']
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
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__ = ['SentinelPolicyArgs', 'SentinelPolicy']
pulumi_nomad/variable.py CHANGED
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
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__ = ['VariableArgs', 'Variable']
@@ -14,12 +19,12 @@ __all__ = ['VariableArgs', 'Variable']
14
19
  @pulumi.input_type
15
20
  class VariableArgs:
16
21
  def __init__(__self__, *,
17
- items: pulumi.Input[Mapping[str, Any]],
22
+ items: pulumi.Input[Mapping[str, pulumi.Input[str]]],
18
23
  path: pulumi.Input[str],
19
24
  namespace: Optional[pulumi.Input[str]] = None):
20
25
  """
21
26
  The set of arguments for constructing a Variable resource.
22
- :param pulumi.Input[Mapping[str, Any]] items: `(map[string]string: <required>)` - An arbitrary map of items to create in the variable.
27
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] items: `(map[string]string: <required>)` - An arbitrary map of items to create in the variable.
23
28
  :param pulumi.Input[str] path: `(string: <required>)` - A unique path to create the variable at.
24
29
  :param pulumi.Input[str] namespace: `(string: "default")` - The namepsace to create the variable in.
25
30
  """
@@ -30,14 +35,14 @@ class VariableArgs:
30
35
 
31
36
  @property
32
37
  @pulumi.getter
33
- def items(self) -> pulumi.Input[Mapping[str, Any]]:
38
+ def items(self) -> pulumi.Input[Mapping[str, pulumi.Input[str]]]:
34
39
  """
35
40
  `(map[string]string: <required>)` - An arbitrary map of items to create in the variable.
36
41
  """
37
42
  return pulumi.get(self, "items")
38
43
 
39
44
  @items.setter
40
- def items(self, value: pulumi.Input[Mapping[str, Any]]):
45
+ def items(self, value: pulumi.Input[Mapping[str, pulumi.Input[str]]]):
41
46
  pulumi.set(self, "items", value)
42
47
 
43
48
  @property
@@ -68,12 +73,12 @@ class VariableArgs:
68
73
  @pulumi.input_type
69
74
  class _VariableState:
70
75
  def __init__(__self__, *,
71
- items: Optional[pulumi.Input[Mapping[str, Any]]] = None,
76
+ items: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
72
77
  namespace: Optional[pulumi.Input[str]] = None,
73
78
  path: Optional[pulumi.Input[str]] = None):
74
79
  """
75
80
  Input properties used for looking up and filtering Variable resources.
76
- :param pulumi.Input[Mapping[str, Any]] items: `(map[string]string: <required>)` - An arbitrary map of items to create in the variable.
81
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] items: `(map[string]string: <required>)` - An arbitrary map of items to create in the variable.
77
82
  :param pulumi.Input[str] namespace: `(string: "default")` - The namepsace to create the variable in.
78
83
  :param pulumi.Input[str] path: `(string: <required>)` - A unique path to create the variable at.
79
84
  """
@@ -86,14 +91,14 @@ class _VariableState:
86
91
 
87
92
  @property
88
93
  @pulumi.getter
89
- def items(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
94
+ def items(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
90
95
  """
91
96
  `(map[string]string: <required>)` - An arbitrary map of items to create in the variable.
92
97
  """
93
98
  return pulumi.get(self, "items")
94
99
 
95
100
  @items.setter
96
- def items(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
101
+ def items(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
97
102
  pulumi.set(self, "items", value)
98
103
 
99
104
  @property
@@ -126,7 +131,7 @@ class Variable(pulumi.CustomResource):
126
131
  def __init__(__self__,
127
132
  resource_name: str,
128
133
  opts: Optional[pulumi.ResourceOptions] = None,
129
- items: Optional[pulumi.Input[Mapping[str, Any]]] = None,
134
+ items: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
130
135
  namespace: Optional[pulumi.Input[str]] = None,
131
136
  path: Optional[pulumi.Input[str]] = None,
132
137
  __props__=None):
@@ -165,7 +170,7 @@ class Variable(pulumi.CustomResource):
165
170
 
166
171
  :param str resource_name: The name of the resource.
167
172
  :param pulumi.ResourceOptions opts: Options for the resource.
168
- :param pulumi.Input[Mapping[str, Any]] items: `(map[string]string: <required>)` - An arbitrary map of items to create in the variable.
173
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] items: `(map[string]string: <required>)` - An arbitrary map of items to create in the variable.
169
174
  :param pulumi.Input[str] namespace: `(string: "default")` - The namepsace to create the variable in.
170
175
  :param pulumi.Input[str] path: `(string: <required>)` - A unique path to create the variable at.
171
176
  """
@@ -223,7 +228,7 @@ class Variable(pulumi.CustomResource):
223
228
  def _internal_init(__self__,
224
229
  resource_name: str,
225
230
  opts: Optional[pulumi.ResourceOptions] = None,
226
- items: Optional[pulumi.Input[Mapping[str, Any]]] = None,
231
+ items: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
227
232
  namespace: Optional[pulumi.Input[str]] = None,
228
233
  path: Optional[pulumi.Input[str]] = None,
229
234
  __props__=None):
@@ -254,7 +259,7 @@ class Variable(pulumi.CustomResource):
254
259
  def get(resource_name: str,
255
260
  id: pulumi.Input[str],
256
261
  opts: Optional[pulumi.ResourceOptions] = None,
257
- items: Optional[pulumi.Input[Mapping[str, Any]]] = None,
262
+ items: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
258
263
  namespace: Optional[pulumi.Input[str]] = None,
259
264
  path: Optional[pulumi.Input[str]] = None) -> 'Variable':
260
265
  """
@@ -264,7 +269,7 @@ class Variable(pulumi.CustomResource):
264
269
  :param str resource_name: The unique name of the resulting resource.
265
270
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
266
271
  :param pulumi.ResourceOptions opts: Options for the resource.
267
- :param pulumi.Input[Mapping[str, Any]] items: `(map[string]string: <required>)` - An arbitrary map of items to create in the variable.
272
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] items: `(map[string]string: <required>)` - An arbitrary map of items to create in the variable.
268
273
  :param pulumi.Input[str] namespace: `(string: "default")` - The namepsace to create the variable in.
269
274
  :param pulumi.Input[str] path: `(string: <required>)` - A unique path to create the variable at.
270
275
  """
@@ -279,7 +284,7 @@ class Variable(pulumi.CustomResource):
279
284
 
280
285
  @property
281
286
  @pulumi.getter
282
- def items(self) -> pulumi.Output[Mapping[str, Any]]:
287
+ def items(self) -> pulumi.Output[Mapping[str, str]]:
283
288
  """
284
289
  `(map[string]string: <required>)` - An arbitrary map of items to create in the variable.
285
290
  """
pulumi_nomad/volume.py CHANGED
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
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
  from . import outputs
12
17
  from ._inputs import *
@@ -126,6 +131,7 @@ class VolumeArgs:
126
131
 
127
132
  @property
128
133
  @pulumi.getter(name="accessMode")
134
+ @_utilities.deprecated("""use capability instead""")
129
135
  def access_mode(self) -> Optional[pulumi.Input[str]]:
130
136
  """
131
137
  `(string: <optional>)` - **Deprecated**. Use `capability` block instead. Defines whether a volume should be available concurrently. Possible values are:
@@ -135,9 +141,6 @@ class VolumeArgs:
135
141
  - `multi-node-single-writer`
136
142
  - `multi-node-multi-writer`
137
143
  """
138
- warnings.warn("""use capability instead""", DeprecationWarning)
139
- pulumi.log.warn("""access_mode is deprecated: use capability instead""")
140
-
141
144
  return pulumi.get(self, "access_mode")
142
145
 
143
146
  @access_mode.setter
@@ -146,13 +149,11 @@ class VolumeArgs:
146
149
 
147
150
  @property
148
151
  @pulumi.getter(name="attachmentMode")
152
+ @_utilities.deprecated("""use capability instead""")
149
153
  def attachment_mode(self) -> Optional[pulumi.Input[str]]:
150
154
  """
151
155
  `(string: <otional>)` - **Deprecated**. Use `capability` block instead. The storage API that will be used by the volume.
152
156
  """
153
- warnings.warn("""use capability instead""", DeprecationWarning)
154
- pulumi.log.warn("""attachment_mode is deprecated: use capability instead""")
155
-
156
157
  return pulumi.get(self, "attachment_mode")
157
158
 
158
159
  @attachment_mode.setter
@@ -387,6 +388,7 @@ class _VolumeState:
387
388
 
388
389
  @property
389
390
  @pulumi.getter(name="accessMode")
391
+ @_utilities.deprecated("""use capability instead""")
390
392
  def access_mode(self) -> Optional[pulumi.Input[str]]:
391
393
  """
392
394
  `(string: <optional>)` - **Deprecated**. Use `capability` block instead. Defines whether a volume should be available concurrently. Possible values are:
@@ -396,9 +398,6 @@ class _VolumeState:
396
398
  - `multi-node-single-writer`
397
399
  - `multi-node-multi-writer`
398
400
  """
399
- warnings.warn("""use capability instead""", DeprecationWarning)
400
- pulumi.log.warn("""access_mode is deprecated: use capability instead""")
401
-
402
401
  return pulumi.get(self, "access_mode")
403
402
 
404
403
  @access_mode.setter
@@ -407,13 +406,11 @@ class _VolumeState:
407
406
 
408
407
  @property
409
408
  @pulumi.getter(name="attachmentMode")
409
+ @_utilities.deprecated("""use capability instead""")
410
410
  def attachment_mode(self) -> Optional[pulumi.Input[str]]:
411
411
  """
412
412
  `(string: <otional>)` - **Deprecated**. Use `capability` block instead. The storage API that will be used by the volume.
413
413
  """
414
- warnings.warn("""use capability instead""", DeprecationWarning)
415
- pulumi.log.warn("""attachment_mode is deprecated: use capability instead""")
416
-
417
414
  return pulumi.get(self, "attachment_mode")
418
415
 
419
416
  @attachment_mode.setter
@@ -665,17 +662,17 @@ class Volume(pulumi.CustomResource):
665
662
  opts: Optional[pulumi.ResourceOptions] = None,
666
663
  access_mode: Optional[pulumi.Input[str]] = None,
667
664
  attachment_mode: Optional[pulumi.Input[str]] = None,
668
- capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VolumeCapabilityArgs']]]]] = None,
665
+ capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VolumeCapabilityArgs', 'VolumeCapabilityArgsDict']]]]] = None,
669
666
  context: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
670
667
  deregister_on_destroy: Optional[pulumi.Input[bool]] = None,
671
668
  external_id: Optional[pulumi.Input[str]] = None,
672
- mount_options: Optional[pulumi.Input[pulumi.InputType['VolumeMountOptionsArgs']]] = None,
669
+ mount_options: Optional[pulumi.Input[Union['VolumeMountOptionsArgs', 'VolumeMountOptionsArgsDict']]] = None,
673
670
  name: Optional[pulumi.Input[str]] = None,
674
671
  namespace: Optional[pulumi.Input[str]] = None,
675
672
  parameters: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
676
673
  plugin_id: Optional[pulumi.Input[str]] = None,
677
674
  secrets: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
678
- topology_request: Optional[pulumi.Input[pulumi.InputType['VolumeTopologyRequestArgs']]] = None,
675
+ topology_request: Optional[pulumi.Input[Union['VolumeTopologyRequestArgs', 'VolumeTopologyRequestArgsDict']]] = None,
679
676
  type: Optional[pulumi.Input[str]] = None,
680
677
  volume_id: Optional[pulumi.Input[str]] = None,
681
678
  __props__=None):
@@ -697,31 +694,31 @@ class Volume(pulumi.CustomResource):
697
694
  volume_id="mysql_volume",
698
695
  name="mysql_volume",
699
696
  external_id=hashistack["ebsTestVolumeId"],
700
- capabilities=[nomad.VolumeCapabilityArgs(
701
- access_mode="single-node-writer",
702
- attachment_mode="file-system",
703
- )],
704
- mount_options=nomad.VolumeMountOptionsArgs(
705
- fs_type="ext4",
706
- ),
707
- topology_request=nomad.VolumeTopologyRequestArgs(
708
- required=nomad.VolumeTopologyRequestRequiredArgs(
709
- topologies=[
710
- nomad.VolumeTopologyRequestRequiredTopologyArgs(
711
- segments={
697
+ capabilities=[{
698
+ "access_mode": "single-node-writer",
699
+ "attachment_mode": "file-system",
700
+ }],
701
+ mount_options={
702
+ "fs_type": "ext4",
703
+ },
704
+ topology_request={
705
+ "required": {
706
+ "topologies": [
707
+ {
708
+ "segments": {
712
709
  "rack": "R1",
713
710
  "zone": "us-east-1a",
714
711
  },
715
- ),
716
- nomad.VolumeTopologyRequestRequiredTopologyArgs(
717
- segments={
712
+ },
713
+ {
714
+ "segments": {
718
715
  "rack": "R2",
719
716
  },
720
- ),
717
+ },
721
718
  ],
722
- ),
723
- ),
724
- opts=pulumi.ResourceOptions(depends_on=[ebs]))
719
+ },
720
+ },
721
+ opts = pulumi.ResourceOptions(depends_on=[ebs]))
725
722
  ```
726
723
 
727
724
  :param str resource_name: The name of the resource.
@@ -733,17 +730,17 @@ class Volume(pulumi.CustomResource):
733
730
  - `multi-node-single-writer`
734
731
  - `multi-node-multi-writer`
735
732
  :param pulumi.Input[str] attachment_mode: `(string: <otional>)` - **Deprecated**. Use `capability` block instead. The storage API that will be used by the volume.
736
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VolumeCapabilityArgs']]]] capabilities: `(``Capability``: <required>)` - Options for validating the capability of a volume.
733
+ :param pulumi.Input[Sequence[pulumi.Input[Union['VolumeCapabilityArgs', 'VolumeCapabilityArgsDict']]]] capabilities: `(``Capability``: <required>)` - Options for validating the capability of a volume.
737
734
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] context: `(map[string]string: <optional>)` - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
738
735
  :param pulumi.Input[bool] deregister_on_destroy: `(boolean: true)` - If true, the volume will be deregistered on destroy.
739
736
  :param pulumi.Input[str] external_id: `(string: <required>)` - The ID of the physical volume from the storage provider.
740
- :param pulumi.Input[pulumi.InputType['VolumeMountOptionsArgs']] mount_options: `(block: <optional>)` Options for mounting `block-device` volumes without a pre-formatted file system.
737
+ :param pulumi.Input[Union['VolumeMountOptionsArgs', 'VolumeMountOptionsArgsDict']] mount_options: `(block: <optional>)` Options for mounting `block-device` volumes without a pre-formatted file system.
741
738
  :param pulumi.Input[str] name: `(string: <required>)` - The display name for the volume.
742
739
  :param pulumi.Input[str] namespace: `(string: "default")` - The namespace in which to register the volume.
743
740
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] parameters: `(map[string]string: <optional>)` - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
744
741
  :param pulumi.Input[str] plugin_id: `(string: <required>)` - The ID of the Nomad plugin for registering this volume.
745
742
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] secrets: `(map[string]string: <optional>)` - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
746
- :param pulumi.Input[pulumi.InputType['VolumeTopologyRequestArgs']] topology_request: `(``TopologyRequest``: <optional>)` - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
743
+ :param pulumi.Input[Union['VolumeTopologyRequestArgs', 'VolumeTopologyRequestArgsDict']] topology_request: `(``TopologyRequest``: <optional>)` - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
747
744
  :param pulumi.Input[str] type: `(string: <required>)` - The type of the volume. Currently, only `csi` is supported.
748
745
  :param pulumi.Input[str] volume_id: `(string: <required>)` - The unique ID of the volume.
749
746
  """
@@ -771,31 +768,31 @@ class Volume(pulumi.CustomResource):
771
768
  volume_id="mysql_volume",
772
769
  name="mysql_volume",
773
770
  external_id=hashistack["ebsTestVolumeId"],
774
- capabilities=[nomad.VolumeCapabilityArgs(
775
- access_mode="single-node-writer",
776
- attachment_mode="file-system",
777
- )],
778
- mount_options=nomad.VolumeMountOptionsArgs(
779
- fs_type="ext4",
780
- ),
781
- topology_request=nomad.VolumeTopologyRequestArgs(
782
- required=nomad.VolumeTopologyRequestRequiredArgs(
783
- topologies=[
784
- nomad.VolumeTopologyRequestRequiredTopologyArgs(
785
- segments={
771
+ capabilities=[{
772
+ "access_mode": "single-node-writer",
773
+ "attachment_mode": "file-system",
774
+ }],
775
+ mount_options={
776
+ "fs_type": "ext4",
777
+ },
778
+ topology_request={
779
+ "required": {
780
+ "topologies": [
781
+ {
782
+ "segments": {
786
783
  "rack": "R1",
787
784
  "zone": "us-east-1a",
788
785
  },
789
- ),
790
- nomad.VolumeTopologyRequestRequiredTopologyArgs(
791
- segments={
786
+ },
787
+ {
788
+ "segments": {
792
789
  "rack": "R2",
793
790
  },
794
- ),
791
+ },
795
792
  ],
796
- ),
797
- ),
798
- opts=pulumi.ResourceOptions(depends_on=[ebs]))
793
+ },
794
+ },
795
+ opts = pulumi.ResourceOptions(depends_on=[ebs]))
799
796
  ```
800
797
 
801
798
  :param str resource_name: The name of the resource.
@@ -815,17 +812,17 @@ class Volume(pulumi.CustomResource):
815
812
  opts: Optional[pulumi.ResourceOptions] = None,
816
813
  access_mode: Optional[pulumi.Input[str]] = None,
817
814
  attachment_mode: Optional[pulumi.Input[str]] = None,
818
- capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VolumeCapabilityArgs']]]]] = None,
815
+ capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VolumeCapabilityArgs', 'VolumeCapabilityArgsDict']]]]] = None,
819
816
  context: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
820
817
  deregister_on_destroy: Optional[pulumi.Input[bool]] = None,
821
818
  external_id: Optional[pulumi.Input[str]] = None,
822
- mount_options: Optional[pulumi.Input[pulumi.InputType['VolumeMountOptionsArgs']]] = None,
819
+ mount_options: Optional[pulumi.Input[Union['VolumeMountOptionsArgs', 'VolumeMountOptionsArgsDict']]] = None,
823
820
  name: Optional[pulumi.Input[str]] = None,
824
821
  namespace: Optional[pulumi.Input[str]] = None,
825
822
  parameters: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
826
823
  plugin_id: Optional[pulumi.Input[str]] = None,
827
824
  secrets: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
828
- topology_request: Optional[pulumi.Input[pulumi.InputType['VolumeTopologyRequestArgs']]] = None,
825
+ topology_request: Optional[pulumi.Input[Union['VolumeTopologyRequestArgs', 'VolumeTopologyRequestArgsDict']]] = None,
829
826
  type: Optional[pulumi.Input[str]] = None,
830
827
  volume_id: Optional[pulumi.Input[str]] = None,
831
828
  __props__=None):
@@ -881,14 +878,14 @@ class Volume(pulumi.CustomResource):
881
878
  opts: Optional[pulumi.ResourceOptions] = None,
882
879
  access_mode: Optional[pulumi.Input[str]] = None,
883
880
  attachment_mode: Optional[pulumi.Input[str]] = None,
884
- capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VolumeCapabilityArgs']]]]] = None,
881
+ capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VolumeCapabilityArgs', 'VolumeCapabilityArgsDict']]]]] = None,
885
882
  context: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
886
883
  controller_required: Optional[pulumi.Input[bool]] = None,
887
884
  controllers_expected: Optional[pulumi.Input[int]] = None,
888
885
  controllers_healthy: Optional[pulumi.Input[int]] = None,
889
886
  deregister_on_destroy: Optional[pulumi.Input[bool]] = None,
890
887
  external_id: Optional[pulumi.Input[str]] = None,
891
- mount_options: Optional[pulumi.Input[pulumi.InputType['VolumeMountOptionsArgs']]] = None,
888
+ mount_options: Optional[pulumi.Input[Union['VolumeMountOptionsArgs', 'VolumeMountOptionsArgsDict']]] = None,
892
889
  name: Optional[pulumi.Input[str]] = None,
893
890
  namespace: Optional[pulumi.Input[str]] = None,
894
891
  nodes_expected: Optional[pulumi.Input[int]] = None,
@@ -899,8 +896,8 @@ class Volume(pulumi.CustomResource):
899
896
  plugin_provider_version: Optional[pulumi.Input[str]] = None,
900
897
  schedulable: Optional[pulumi.Input[bool]] = None,
901
898
  secrets: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
902
- topologies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VolumeTopologyArgs']]]]] = None,
903
- topology_request: Optional[pulumi.Input[pulumi.InputType['VolumeTopologyRequestArgs']]] = None,
899
+ topologies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VolumeTopologyArgs', 'VolumeTopologyArgsDict']]]]] = None,
900
+ topology_request: Optional[pulumi.Input[Union['VolumeTopologyRequestArgs', 'VolumeTopologyRequestArgsDict']]] = None,
904
901
  type: Optional[pulumi.Input[str]] = None,
905
902
  volume_id: Optional[pulumi.Input[str]] = None) -> 'Volume':
906
903
  """
@@ -917,17 +914,17 @@ class Volume(pulumi.CustomResource):
917
914
  - `multi-node-single-writer`
918
915
  - `multi-node-multi-writer`
919
916
  :param pulumi.Input[str] attachment_mode: `(string: <otional>)` - **Deprecated**. Use `capability` block instead. The storage API that will be used by the volume.
920
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VolumeCapabilityArgs']]]] capabilities: `(``Capability``: <required>)` - Options for validating the capability of a volume.
917
+ :param pulumi.Input[Sequence[pulumi.Input[Union['VolumeCapabilityArgs', 'VolumeCapabilityArgsDict']]]] capabilities: `(``Capability``: <required>)` - Options for validating the capability of a volume.
921
918
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] context: `(map[string]string: <optional>)` - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
922
919
  :param pulumi.Input[bool] deregister_on_destroy: `(boolean: true)` - If true, the volume will be deregistered on destroy.
923
920
  :param pulumi.Input[str] external_id: `(string: <required>)` - The ID of the physical volume from the storage provider.
924
- :param pulumi.Input[pulumi.InputType['VolumeMountOptionsArgs']] mount_options: `(block: <optional>)` Options for mounting `block-device` volumes without a pre-formatted file system.
921
+ :param pulumi.Input[Union['VolumeMountOptionsArgs', 'VolumeMountOptionsArgsDict']] mount_options: `(block: <optional>)` Options for mounting `block-device` volumes without a pre-formatted file system.
925
922
  :param pulumi.Input[str] name: `(string: <required>)` - The display name for the volume.
926
923
  :param pulumi.Input[str] namespace: `(string: "default")` - The namespace in which to register the volume.
927
924
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] parameters: `(map[string]string: <optional>)` - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
928
925
  :param pulumi.Input[str] plugin_id: `(string: <required>)` - The ID of the Nomad plugin for registering this volume.
929
926
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] secrets: `(map[string]string: <optional>)` - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
930
- :param pulumi.Input[pulumi.InputType['VolumeTopologyRequestArgs']] topology_request: `(``TopologyRequest``: <optional>)` - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
927
+ :param pulumi.Input[Union['VolumeTopologyRequestArgs', 'VolumeTopologyRequestArgsDict']] topology_request: `(``TopologyRequest``: <optional>)` - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
931
928
  :param pulumi.Input[str] type: `(string: <required>)` - The type of the volume. Currently, only `csi` is supported.
932
929
  :param pulumi.Input[str] volume_id: `(string: <required>)` - The unique ID of the volume.
933
930
  """
@@ -963,6 +960,7 @@ class Volume(pulumi.CustomResource):
963
960
 
964
961
  @property
965
962
  @pulumi.getter(name="accessMode")
963
+ @_utilities.deprecated("""use capability instead""")
966
964
  def access_mode(self) -> pulumi.Output[Optional[str]]:
967
965
  """
968
966
  `(string: <optional>)` - **Deprecated**. Use `capability` block instead. Defines whether a volume should be available concurrently. Possible values are:
@@ -972,20 +970,15 @@ class Volume(pulumi.CustomResource):
972
970
  - `multi-node-single-writer`
973
971
  - `multi-node-multi-writer`
974
972
  """
975
- warnings.warn("""use capability instead""", DeprecationWarning)
976
- pulumi.log.warn("""access_mode is deprecated: use capability instead""")
977
-
978
973
  return pulumi.get(self, "access_mode")
979
974
 
980
975
  @property
981
976
  @pulumi.getter(name="attachmentMode")
977
+ @_utilities.deprecated("""use capability instead""")
982
978
  def attachment_mode(self) -> pulumi.Output[Optional[str]]:
983
979
  """
984
980
  `(string: <otional>)` - **Deprecated**. Use `capability` block instead. The storage API that will be used by the volume.
985
981
  """
986
- warnings.warn("""use capability instead""", DeprecationWarning)
987
- pulumi.log.warn("""attachment_mode is deprecated: use capability instead""")
988
-
989
982
  return pulumi.get(self, "attachment_mode")
990
983
 
991
984
  @property