pulumi-nomad 2.3.0a1710649436__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 +896 -175
  3. pulumi_nomad/_utilities.py +41 -5
  4. pulumi_nomad/acl_auth_method.py +44 -41
  5. pulumi_nomad/acl_binding_rule.py +5 -0
  6. pulumi_nomad/acl_policy.py +10 -69
  7. pulumi_nomad/acl_role.py +10 -5
  8. pulumi_nomad/acl_token.py +28 -31
  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 -88
  13. pulumi_nomad/csi_volume_registration.py +21 -88
  14. pulumi_nomad/external_volume.py +65 -132
  15. pulumi_nomad/get_acl_policies.py +14 -9
  16. pulumi_nomad/get_acl_policy.py +15 -9
  17. pulumi_nomad/get_acl_role.py +15 -9
  18. pulumi_nomad/get_acl_roles.py +14 -9
  19. pulumi_nomad/get_acl_token.py +22 -9
  20. pulumi_nomad/get_acl_tokens.py +14 -9
  21. pulumi_nomad/get_allocations.py +18 -9
  22. pulumi_nomad/get_datacenters.py +20 -13
  23. pulumi_nomad/get_deployments.py +18 -10
  24. pulumi_nomad/get_job.py +34 -9
  25. pulumi_nomad/get_job_parser.py +16 -29
  26. pulumi_nomad/get_jwks.py +124 -0
  27. pulumi_nomad/get_namespace.py +18 -9
  28. pulumi_nomad/get_namespaces.py +14 -9
  29. pulumi_nomad/get_node_pool.py +16 -9
  30. pulumi_nomad/get_node_pools.py +16 -9
  31. pulumi_nomad/get_plugin.py +25 -9
  32. pulumi_nomad/get_plugins.py +15 -10
  33. pulumi_nomad/get_regions.py +46 -5
  34. pulumi_nomad/get_scaling_policies.py +16 -9
  35. pulumi_nomad/get_scaling_policy.py +19 -10
  36. pulumi_nomad/get_scheduler_policy.py +14 -9
  37. pulumi_nomad/get_variable.py +17 -10
  38. pulumi_nomad/get_volumes.py +21 -10
  39. pulumi_nomad/job.py +22 -88
  40. pulumi_nomad/namespace.py +43 -40
  41. pulumi_nomad/node_pool.py +12 -9
  42. pulumi_nomad/outputs.py +293 -165
  43. pulumi_nomad/provider.py +8 -3
  44. pulumi_nomad/pulumi-plugin.json +2 -1
  45. pulumi_nomad/quote_specification.py +28 -25
  46. pulumi_nomad/scheduler_config.py +11 -10
  47. pulumi_nomad/sentinel_policy.py +11 -10
  48. pulumi_nomad/variable.py +33 -32
  49. pulumi_nomad/volume.py +73 -152
  50. {pulumi_nomad-2.3.0a1710649436.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.0a1710649436.dist-info → pulumi_nomad-2.5.0a1736834448.dist-info}/WHEEL +1 -1
  53. pulumi_nomad-2.3.0a1710649436.dist-info/RECORD +0 -54
  54. {pulumi_nomad-2.3.0a1710649436.dist-info → pulumi_nomad-2.5.0a1736834448.dist-info}/top_level.txt +0 -0
@@ -4,6 +4,7 @@
4
4
 
5
5
 
6
6
  import asyncio
7
+ import functools
7
8
  import importlib.metadata
8
9
  import importlib.util
9
10
  import inspect
@@ -11,14 +12,19 @@ import json
11
12
  import os
12
13
  import sys
13
14
  import typing
15
+ import warnings
16
+ import base64
14
17
 
15
18
  import pulumi
16
19
  import pulumi.runtime
17
20
  from pulumi.runtime.sync_await import _sync_await
21
+ from pulumi.runtime.proto import resource_pb2
18
22
 
19
23
  from semver import VersionInfo as SemverVersion
20
24
  from parver import Version as PEP440Version
21
25
 
26
+ C = typing.TypeVar("C", bound=typing.Callable)
27
+
22
28
 
23
29
  def get_env(*args):
24
30
  for v in args:
@@ -96,10 +102,6 @@ def _get_semver_version():
96
102
  _version = _get_semver_version()
97
103
  _version_str = str(_version)
98
104
 
99
-
100
- def get_version():
101
- return _version_str
102
-
103
105
  def get_resource_opts_defaults() -> pulumi.ResourceOptions:
104
106
  return pulumi.ResourceOptions(
105
107
  version=get_version(),
@@ -262,7 +264,7 @@ def call_plain(
262
264
  output = pulumi.runtime.call(tok, props, res, typ)
263
265
 
264
266
  # Ingoring deps silently. They are typically non-empty, r.f() calls include r as a dependency.
265
- result, known, secret, _ = _sync_await(asyncio.ensure_future(_await_output(output)))
267
+ result, known, secret, _ = _sync_await(asyncio.create_task(_await_output(output)))
266
268
 
267
269
  problem = None
268
270
  if not known:
@@ -287,5 +289,39 @@ async def _await_output(o: pulumi.Output[typing.Any]) -> typing.Tuple[object, bo
287
289
  await o._resources,
288
290
  )
289
291
 
292
+
293
+ # This is included to provide an upgrade path for users who are using a version
294
+ # of the Pulumi SDK (<3.121.0) that does not include the `deprecated` decorator.
295
+ def deprecated(message: str) -> typing.Callable[[C], C]:
296
+ """
297
+ Decorator to indicate a function is deprecated.
298
+
299
+ As well as inserting appropriate statements to indicate that the function is
300
+ deprecated, this decorator also tags the function with a special attribute
301
+ so that Pulumi code can detect that it is deprecated and react appropriately
302
+ in certain situations.
303
+
304
+ message is the deprecation message that should be printed if the function is called.
305
+ """
306
+
307
+ def decorator(fn: C) -> C:
308
+ if not callable(fn):
309
+ raise TypeError("Expected fn to be callable")
310
+
311
+ @functools.wraps(fn)
312
+ def deprecated_fn(*args, **kwargs):
313
+ warnings.warn(message)
314
+ pulumi.warn(f"{fn.__name__} is deprecated: {message}")
315
+
316
+ return fn(*args, **kwargs)
317
+
318
+ deprecated_fn.__dict__["_pulumi_deprecated_callable"] = fn
319
+ return typing.cast(C, deprecated_fn)
320
+
321
+ return decorator
322
+
290
323
  def get_plugin_download_url():
291
324
  return None
325
+
326
+ def get_version():
327
+ return _version_str
@@ -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 *
@@ -32,8 +37,8 @@ class AclAuthMethodArgs:
32
37
  :param pulumi.Input[str] token_locality: `(string: <required>)` - Defines whether the ACL Auth Method
33
38
  creates a local or global token when performing SSO login. This field must be
34
39
  set to either `local` or `global`.
35
- :param pulumi.Input[str] type: `(string: <required>)` - ACL Auth Method SSO workflow type. Currently,
36
- the only supported type is `OIDC`.
40
+ :param pulumi.Input[str] type: `(string: <required>)` - ACL Auth Method SSO workflow type. Valid values,
41
+ are `OIDC` and `JWT`.
37
42
  :param pulumi.Input[bool] default: `(bool: false)` - Defines whether this ACL Auth Method is to be set
38
43
  as default.
39
44
  :param pulumi.Input[str] name: `(string: <required>)` - The identifier of the ACL Auth Method.
@@ -96,8 +101,8 @@ class AclAuthMethodArgs:
96
101
  @pulumi.getter
97
102
  def type(self) -> pulumi.Input[str]:
98
103
  """
99
- `(string: <required>)` - ACL Auth Method SSO workflow type. Currently,
100
- the only supported type is `OIDC`.
104
+ `(string: <required>)` - ACL Auth Method SSO workflow type. Valid values,
105
+ are `OIDC` and `JWT`.
101
106
  """
102
107
  return pulumi.get(self, "type")
103
108
 
@@ -170,8 +175,8 @@ class _AclAuthMethodState:
170
175
  :param pulumi.Input[str] token_name_format: `(string: "${auth_method_type}-${auth_method_name}")` -
171
176
  Defines the token name format for the generated tokens This can be lightly
172
177
  templated using HIL '${foo}' syntax.
173
- :param pulumi.Input[str] type: `(string: <required>)` - ACL Auth Method SSO workflow type. Currently,
174
- the only supported type is `OIDC`.
178
+ :param pulumi.Input[str] type: `(string: <required>)` - ACL Auth Method SSO workflow type. Valid values,
179
+ are `OIDC` and `JWT`.
175
180
  """
176
181
  if config is not None:
177
182
  pulumi.set(__self__, "config", config)
@@ -271,8 +276,8 @@ class _AclAuthMethodState:
271
276
  @pulumi.getter
272
277
  def type(self) -> Optional[pulumi.Input[str]]:
273
278
  """
274
- `(string: <required>)` - ACL Auth Method SSO workflow type. Currently,
275
- the only supported type is `OIDC`.
279
+ `(string: <required>)` - ACL Auth Method SSO workflow type. Valid values,
280
+ are `OIDC` and `JWT`.
276
281
  """
277
282
  return pulumi.get(self, "type")
278
283
 
@@ -286,7 +291,7 @@ class AclAuthMethod(pulumi.CustomResource):
286
291
  def __init__(__self__,
287
292
  resource_name: str,
288
293
  opts: Optional[pulumi.ResourceOptions] = None,
289
- config: Optional[pulumi.Input[pulumi.InputType['AclAuthMethodConfigArgs']]] = None,
294
+ config: Optional[pulumi.Input[Union['AclAuthMethodConfigArgs', 'AclAuthMethodConfigArgsDict']]] = None,
290
295
  default: Optional[pulumi.Input[bool]] = None,
291
296
  max_token_ttl: Optional[pulumi.Input[str]] = None,
292
297
  name: Optional[pulumi.Input[str]] = None,
@@ -301,36 +306,35 @@ class AclAuthMethod(pulumi.CustomResource):
301
306
 
302
307
  Creating an ALC Auth Method:
303
308
 
304
- <!--Start PulumiCodeChooser -->
305
309
  ```python
306
310
  import pulumi
307
311
  import pulumi_nomad as nomad
308
312
 
309
- my_nomad_acl_auth_method = nomad.AclAuthMethod("myNomadAclAuthMethod",
313
+ my_nomad_acl_auth_method = nomad.AclAuthMethod("my_nomad_acl_auth_method",
314
+ name="my-nomad-acl-auth-method",
310
315
  type="OIDC",
311
316
  token_locality="global",
312
317
  max_token_ttl="10m0s",
313
318
  token_name_format="${auth_method_type}-${value.user}",
314
319
  default=True,
315
- config=nomad.AclAuthMethodConfigArgs(
316
- oidc_discovery_url="https://uk.auth0.com/",
317
- oidc_client_id="someclientid",
318
- oidc_client_secret="someclientsecret-t",
319
- bound_audiences=["someclientid"],
320
- allowed_redirect_uris=[
320
+ config={
321
+ "oidc_discovery_url": "https://uk.auth0.com/",
322
+ "oidc_client_id": "someclientid",
323
+ "oidc_client_secret": "someclientsecret-t",
324
+ "bound_audiences": ["someclientid"],
325
+ "allowed_redirect_uris": [
321
326
  "http://localhost:4649/oidc/callback",
322
327
  "http://localhost:4646/ui/settings/tokens",
323
328
  ],
324
- list_claim_mappings={
329
+ "list_claim_mappings": {
325
330
  "http://nomad.internal/roles": "roles",
326
331
  },
327
- ))
332
+ })
328
333
  ```
329
- <!--End PulumiCodeChooser -->
330
334
 
331
335
  :param str resource_name: The name of the resource.
332
336
  :param pulumi.ResourceOptions opts: Options for the resource.
333
- :param pulumi.Input[pulumi.InputType['AclAuthMethodConfigArgs']] config: `(block: <required>)` - Configuration specific to the auth method
337
+ :param pulumi.Input[Union['AclAuthMethodConfigArgs', 'AclAuthMethodConfigArgsDict']] config: `(block: <required>)` - Configuration specific to the auth method
334
338
  provider.
335
339
  :param pulumi.Input[bool] default: `(bool: false)` - Defines whether this ACL Auth Method is to be set
336
340
  as default.
@@ -343,8 +347,8 @@ class AclAuthMethod(pulumi.CustomResource):
343
347
  :param pulumi.Input[str] token_name_format: `(string: "${auth_method_type}-${auth_method_name}")` -
344
348
  Defines the token name format for the generated tokens This can be lightly
345
349
  templated using HIL '${foo}' syntax.
346
- :param pulumi.Input[str] type: `(string: <required>)` - ACL Auth Method SSO workflow type. Currently,
347
- the only supported type is `OIDC`.
350
+ :param pulumi.Input[str] type: `(string: <required>)` - ACL Auth Method SSO workflow type. Valid values,
351
+ are `OIDC` and `JWT`.
348
352
  """
349
353
  ...
350
354
  @overload
@@ -359,32 +363,31 @@ class AclAuthMethod(pulumi.CustomResource):
359
363
 
360
364
  Creating an ALC Auth Method:
361
365
 
362
- <!--Start PulumiCodeChooser -->
363
366
  ```python
364
367
  import pulumi
365
368
  import pulumi_nomad as nomad
366
369
 
367
- my_nomad_acl_auth_method = nomad.AclAuthMethod("myNomadAclAuthMethod",
370
+ my_nomad_acl_auth_method = nomad.AclAuthMethod("my_nomad_acl_auth_method",
371
+ name="my-nomad-acl-auth-method",
368
372
  type="OIDC",
369
373
  token_locality="global",
370
374
  max_token_ttl="10m0s",
371
375
  token_name_format="${auth_method_type}-${value.user}",
372
376
  default=True,
373
- config=nomad.AclAuthMethodConfigArgs(
374
- oidc_discovery_url="https://uk.auth0.com/",
375
- oidc_client_id="someclientid",
376
- oidc_client_secret="someclientsecret-t",
377
- bound_audiences=["someclientid"],
378
- allowed_redirect_uris=[
377
+ config={
378
+ "oidc_discovery_url": "https://uk.auth0.com/",
379
+ "oidc_client_id": "someclientid",
380
+ "oidc_client_secret": "someclientsecret-t",
381
+ "bound_audiences": ["someclientid"],
382
+ "allowed_redirect_uris": [
379
383
  "http://localhost:4649/oidc/callback",
380
384
  "http://localhost:4646/ui/settings/tokens",
381
385
  ],
382
- list_claim_mappings={
386
+ "list_claim_mappings": {
383
387
  "http://nomad.internal/roles": "roles",
384
388
  },
385
- ))
389
+ })
386
390
  ```
387
- <!--End PulumiCodeChooser -->
388
391
 
389
392
  :param str resource_name: The name of the resource.
390
393
  :param AclAuthMethodArgs args: The arguments to use to populate this resource's properties.
@@ -401,7 +404,7 @@ class AclAuthMethod(pulumi.CustomResource):
401
404
  def _internal_init(__self__,
402
405
  resource_name: str,
403
406
  opts: Optional[pulumi.ResourceOptions] = None,
404
- config: Optional[pulumi.Input[pulumi.InputType['AclAuthMethodConfigArgs']]] = None,
407
+ config: Optional[pulumi.Input[Union['AclAuthMethodConfigArgs', 'AclAuthMethodConfigArgsDict']]] = None,
405
408
  default: Optional[pulumi.Input[bool]] = None,
406
409
  max_token_ttl: Optional[pulumi.Input[str]] = None,
407
410
  name: Optional[pulumi.Input[str]] = None,
@@ -442,7 +445,7 @@ class AclAuthMethod(pulumi.CustomResource):
442
445
  def get(resource_name: str,
443
446
  id: pulumi.Input[str],
444
447
  opts: Optional[pulumi.ResourceOptions] = None,
445
- config: Optional[pulumi.Input[pulumi.InputType['AclAuthMethodConfigArgs']]] = None,
448
+ config: Optional[pulumi.Input[Union['AclAuthMethodConfigArgs', 'AclAuthMethodConfigArgsDict']]] = None,
446
449
  default: Optional[pulumi.Input[bool]] = None,
447
450
  max_token_ttl: Optional[pulumi.Input[str]] = None,
448
451
  name: Optional[pulumi.Input[str]] = None,
@@ -456,7 +459,7 @@ class AclAuthMethod(pulumi.CustomResource):
456
459
  :param str resource_name: The unique name of the resulting resource.
457
460
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
458
461
  :param pulumi.ResourceOptions opts: Options for the resource.
459
- :param pulumi.Input[pulumi.InputType['AclAuthMethodConfigArgs']] config: `(block: <required>)` - Configuration specific to the auth method
462
+ :param pulumi.Input[Union['AclAuthMethodConfigArgs', 'AclAuthMethodConfigArgsDict']] config: `(block: <required>)` - Configuration specific to the auth method
460
463
  provider.
461
464
  :param pulumi.Input[bool] default: `(bool: false)` - Defines whether this ACL Auth Method is to be set
462
465
  as default.
@@ -469,8 +472,8 @@ class AclAuthMethod(pulumi.CustomResource):
469
472
  :param pulumi.Input[str] token_name_format: `(string: "${auth_method_type}-${auth_method_name}")` -
470
473
  Defines the token name format for the generated tokens This can be lightly
471
474
  templated using HIL '${foo}' syntax.
472
- :param pulumi.Input[str] type: `(string: <required>)` - ACL Auth Method SSO workflow type. Currently,
473
- the only supported type is `OIDC`.
475
+ :param pulumi.Input[str] type: `(string: <required>)` - ACL Auth Method SSO workflow type. Valid values,
476
+ are `OIDC` and `JWT`.
474
477
  """
475
478
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
476
479
 
@@ -544,8 +547,8 @@ class AclAuthMethod(pulumi.CustomResource):
544
547
  @pulumi.getter
545
548
  def type(self) -> pulumi.Output[str]:
546
549
  """
547
- `(string: <required>)` - ACL Auth Method SSO workflow type. Currently,
548
- the only supported type is `OIDC`.
550
+ `(string: <required>)` - ACL Auth Method SSO workflow type. Valid values,
551
+ are `OIDC` and `JWT`.
549
552
  """
550
553
  return pulumi.get(self, "type")
551
554
 
@@ -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__ = ['AclBindingRuleArgs', 'AclBindingRule']
@@ -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 *
@@ -166,49 +171,17 @@ class AclPolicy(pulumi.CustomResource):
166
171
  resource_name: str,
167
172
  opts: Optional[pulumi.ResourceOptions] = None,
168
173
  description: Optional[pulumi.Input[str]] = None,
169
- job_acl: Optional[pulumi.Input[pulumi.InputType['AclPolicyJobAclArgs']]] = None,
174
+ job_acl: Optional[pulumi.Input[Union['AclPolicyJobAclArgs', 'AclPolicyJobAclArgsDict']]] = None,
170
175
  name: Optional[pulumi.Input[str]] = None,
171
176
  rules_hcl: Optional[pulumi.Input[str]] = None,
172
177
  __props__=None):
173
178
  """
174
179
  Manages an ACL policy registered in Nomad.
175
180
 
176
- ## Example Usage
177
-
178
- Registering a policy from a HCL file:
179
-
180
- <!--Start PulumiCodeChooser -->
181
- ```python
182
- import pulumi
183
- import pulumi_nomad as nomad
184
-
185
- dev = nomad.AclPolicy("dev",
186
- description="Submit jobs to the dev environment.",
187
- rules_hcl=(lambda path: open(path).read())(f"{path['module']}/dev.hcl"))
188
- ```
189
- <!--End PulumiCodeChooser -->
190
-
191
- Registering a policy from inline HCL:
192
-
193
- <!--Start PulumiCodeChooser -->
194
- ```python
195
- import pulumi
196
- import pulumi_nomad as nomad
197
-
198
- dev = nomad.AclPolicy("dev",
199
- description="Submit jobs to the dev environment.",
200
- rules_hcl=\"\"\"namespace "dev" {
201
- policy = "write"
202
- }
203
-
204
- \"\"\")
205
- ```
206
- <!--End PulumiCodeChooser -->
207
-
208
181
  :param str resource_name: The name of the resource.
209
182
  :param pulumi.ResourceOptions opts: Options for the resource.
210
183
  :param pulumi.Input[str] description: `(string: "")` - A description of the policy.
211
- :param pulumi.Input[pulumi.InputType['AclPolicyJobAclArgs']] job_acl: `(``JobACL``: <optional>)` - Options for assigning the ACL rules to a job, group, or task.
184
+ :param pulumi.Input[Union['AclPolicyJobAclArgs', 'AclPolicyJobAclArgsDict']] job_acl: `(``JobACL``: <optional>)` - Options for assigning the ACL rules to a job, group, or task.
212
185
  :param pulumi.Input[str] name: `(string: <required>)` - A unique name for the policy.
213
186
  :param pulumi.Input[str] rules_hcl: `(string: <required>)` - The contents of the policy to register,
214
187
  as HCL or JSON.
@@ -222,38 +195,6 @@ class AclPolicy(pulumi.CustomResource):
222
195
  """
223
196
  Manages an ACL policy registered in Nomad.
224
197
 
225
- ## Example Usage
226
-
227
- Registering a policy from a HCL file:
228
-
229
- <!--Start PulumiCodeChooser -->
230
- ```python
231
- import pulumi
232
- import pulumi_nomad as nomad
233
-
234
- dev = nomad.AclPolicy("dev",
235
- description="Submit jobs to the dev environment.",
236
- rules_hcl=(lambda path: open(path).read())(f"{path['module']}/dev.hcl"))
237
- ```
238
- <!--End PulumiCodeChooser -->
239
-
240
- Registering a policy from inline HCL:
241
-
242
- <!--Start PulumiCodeChooser -->
243
- ```python
244
- import pulumi
245
- import pulumi_nomad as nomad
246
-
247
- dev = nomad.AclPolicy("dev",
248
- description="Submit jobs to the dev environment.",
249
- rules_hcl=\"\"\"namespace "dev" {
250
- policy = "write"
251
- }
252
-
253
- \"\"\")
254
- ```
255
- <!--End PulumiCodeChooser -->
256
-
257
198
  :param str resource_name: The name of the resource.
258
199
  :param AclPolicyArgs args: The arguments to use to populate this resource's properties.
259
200
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -270,7 +211,7 @@ class AclPolicy(pulumi.CustomResource):
270
211
  resource_name: str,
271
212
  opts: Optional[pulumi.ResourceOptions] = None,
272
213
  description: Optional[pulumi.Input[str]] = None,
273
- job_acl: Optional[pulumi.Input[pulumi.InputType['AclPolicyJobAclArgs']]] = None,
214
+ job_acl: Optional[pulumi.Input[Union['AclPolicyJobAclArgs', 'AclPolicyJobAclArgsDict']]] = None,
274
215
  name: Optional[pulumi.Input[str]] = None,
275
216
  rules_hcl: Optional[pulumi.Input[str]] = None,
276
217
  __props__=None):
@@ -299,7 +240,7 @@ class AclPolicy(pulumi.CustomResource):
299
240
  id: pulumi.Input[str],
300
241
  opts: Optional[pulumi.ResourceOptions] = None,
301
242
  description: Optional[pulumi.Input[str]] = None,
302
- job_acl: Optional[pulumi.Input[pulumi.InputType['AclPolicyJobAclArgs']]] = None,
243
+ job_acl: Optional[pulumi.Input[Union['AclPolicyJobAclArgs', 'AclPolicyJobAclArgsDict']]] = None,
303
244
  name: Optional[pulumi.Input[str]] = None,
304
245
  rules_hcl: Optional[pulumi.Input[str]] = None) -> 'AclPolicy':
305
246
  """
@@ -310,7 +251,7 @@ class AclPolicy(pulumi.CustomResource):
310
251
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
311
252
  :param pulumi.ResourceOptions opts: Options for the resource.
312
253
  :param pulumi.Input[str] description: `(string: "")` - A description of the policy.
313
- :param pulumi.Input[pulumi.InputType['AclPolicyJobAclArgs']] job_acl: `(``JobACL``: <optional>)` - Options for assigning the ACL rules to a job, group, or task.
254
+ :param pulumi.Input[Union['AclPolicyJobAclArgs', 'AclPolicyJobAclArgsDict']] job_acl: `(``JobACL``: <optional>)` - Options for assigning the ACL rules to a job, group, or task.
314
255
  :param pulumi.Input[str] name: `(string: <required>)` - A unique name for the policy.
315
256
  :param pulumi.Input[str] rules_hcl: `(string: <required>)` - The contents of the policy to register,
316
257
  as HCL or JSON.
pulumi_nomad/acl_role.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 *
@@ -135,7 +140,7 @@ class AclRole(pulumi.CustomResource):
135
140
  opts: Optional[pulumi.ResourceOptions] = None,
136
141
  description: Optional[pulumi.Input[str]] = None,
137
142
  name: Optional[pulumi.Input[str]] = None,
138
- policies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AclRolePolicyArgs']]]]] = None,
143
+ policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRolePolicyArgs', 'AclRolePolicyArgsDict']]]]] = None,
139
144
  __props__=None):
140
145
  """
141
146
  Create a AclRole resource with the given unique name, props, and options.
@@ -143,7 +148,7 @@ class AclRole(pulumi.CustomResource):
143
148
  :param pulumi.ResourceOptions opts: Options for the resource.
144
149
  :param pulumi.Input[str] description: `(string: "")` - A description of the ACL Role.
145
150
  :param pulumi.Input[str] name: `(string: <required>)` - A human-friendly name for this ACL Role.
146
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AclRolePolicyArgs']]]] policies: `(set: <required>)` - A set of policy names to associate with this
151
+ :param pulumi.Input[Sequence[pulumi.Input[Union['AclRolePolicyArgs', 'AclRolePolicyArgsDict']]]] policies: `(set: <required>)` - A set of policy names to associate with this
147
152
  ACL Role. It may be used multiple times.
148
153
  """
149
154
  ...
@@ -171,7 +176,7 @@ class AclRole(pulumi.CustomResource):
171
176
  opts: Optional[pulumi.ResourceOptions] = None,
172
177
  description: Optional[pulumi.Input[str]] = None,
173
178
  name: Optional[pulumi.Input[str]] = None,
174
- policies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AclRolePolicyArgs']]]]] = None,
179
+ policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRolePolicyArgs', 'AclRolePolicyArgsDict']]]]] = None,
175
180
  __props__=None):
176
181
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
177
182
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -198,7 +203,7 @@ class AclRole(pulumi.CustomResource):
198
203
  opts: Optional[pulumi.ResourceOptions] = None,
199
204
  description: Optional[pulumi.Input[str]] = None,
200
205
  name: Optional[pulumi.Input[str]] = None,
201
- policies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AclRolePolicyArgs']]]]] = None) -> 'AclRole':
206
+ policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRolePolicyArgs', 'AclRolePolicyArgsDict']]]]] = None) -> 'AclRole':
202
207
  """
203
208
  Get an existing AclRole resource's state with the given name, id, and optional extra
204
209
  properties used to qualify the lookup.
@@ -208,7 +213,7 @@ class AclRole(pulumi.CustomResource):
208
213
  :param pulumi.ResourceOptions opts: Options for the resource.
209
214
  :param pulumi.Input[str] description: `(string: "")` - A description of the ACL Role.
210
215
  :param pulumi.Input[str] name: `(string: <required>)` - A human-friendly name for this ACL Role.
211
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AclRolePolicyArgs']]]] policies: `(set: <required>)` - A set of policy names to associate with this
216
+ :param pulumi.Input[Sequence[pulumi.Input[Union['AclRolePolicyArgs', 'AclRolePolicyArgsDict']]]] policies: `(set: <required>)` - A set of policy names to associate with this
212
217
  ACL Role. It may be used multiple times.
213
218
  """
214
219
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))