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.
- pulumi_nomad/__init__.py +1 -0
- pulumi_nomad/_inputs.py +896 -175
- pulumi_nomad/_utilities.py +41 -5
- pulumi_nomad/acl_auth_method.py +44 -41
- pulumi_nomad/acl_binding_rule.py +5 -0
- pulumi_nomad/acl_policy.py +10 -69
- pulumi_nomad/acl_role.py +10 -5
- pulumi_nomad/acl_token.py +28 -31
- pulumi_nomad/config/__init__.pyi +5 -0
- pulumi_nomad/config/outputs.py +5 -0
- pulumi_nomad/config/vars.py +5 -0
- pulumi_nomad/csi_volume.py +21 -88
- pulumi_nomad/csi_volume_registration.py +21 -88
- pulumi_nomad/external_volume.py +65 -132
- pulumi_nomad/get_acl_policies.py +14 -9
- pulumi_nomad/get_acl_policy.py +15 -9
- pulumi_nomad/get_acl_role.py +15 -9
- pulumi_nomad/get_acl_roles.py +14 -9
- pulumi_nomad/get_acl_token.py +22 -9
- pulumi_nomad/get_acl_tokens.py +14 -9
- pulumi_nomad/get_allocations.py +18 -9
- pulumi_nomad/get_datacenters.py +20 -13
- pulumi_nomad/get_deployments.py +18 -10
- pulumi_nomad/get_job.py +34 -9
- pulumi_nomad/get_job_parser.py +16 -29
- pulumi_nomad/get_jwks.py +124 -0
- pulumi_nomad/get_namespace.py +18 -9
- pulumi_nomad/get_namespaces.py +14 -9
- pulumi_nomad/get_node_pool.py +16 -9
- pulumi_nomad/get_node_pools.py +16 -9
- pulumi_nomad/get_plugin.py +25 -9
- pulumi_nomad/get_plugins.py +15 -10
- pulumi_nomad/get_regions.py +46 -5
- pulumi_nomad/get_scaling_policies.py +16 -9
- pulumi_nomad/get_scaling_policy.py +19 -10
- pulumi_nomad/get_scheduler_policy.py +14 -9
- pulumi_nomad/get_variable.py +17 -10
- pulumi_nomad/get_volumes.py +21 -10
- pulumi_nomad/job.py +22 -88
- pulumi_nomad/namespace.py +43 -40
- pulumi_nomad/node_pool.py +12 -9
- pulumi_nomad/outputs.py +293 -165
- pulumi_nomad/provider.py +8 -3
- pulumi_nomad/pulumi-plugin.json +2 -1
- pulumi_nomad/quote_specification.py +28 -25
- pulumi_nomad/scheduler_config.py +11 -10
- pulumi_nomad/sentinel_policy.py +11 -10
- pulumi_nomad/variable.py +33 -32
- pulumi_nomad/volume.py +73 -152
- {pulumi_nomad-2.3.0a1710649436.dist-info → pulumi_nomad-2.5.0a1736834448.dist-info}/METADATA +7 -6
- pulumi_nomad-2.5.0a1736834448.dist-info/RECORD +55 -0
- {pulumi_nomad-2.3.0a1710649436.dist-info → pulumi_nomad-2.5.0a1736834448.dist-info}/WHEEL +1 -1
- pulumi_nomad-2.3.0a1710649436.dist-info/RECORD +0 -54
- {pulumi_nomad-2.3.0a1710649436.dist-info → pulumi_nomad-2.5.0a1736834448.dist-info}/top_level.txt +0 -0
pulumi_nomad/_utilities.py
CHANGED
@@ -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.
|
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
|
pulumi_nomad/acl_auth_method.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 *
|
@@ -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.
|
36
|
-
|
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.
|
100
|
-
|
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.
|
174
|
-
|
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.
|
275
|
-
|
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[
|
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("
|
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=
|
316
|
-
oidc_discovery_url
|
317
|
-
oidc_client_id
|
318
|
-
oidc_client_secret
|
319
|
-
bound_audiences
|
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[
|
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.
|
347
|
-
|
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("
|
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=
|
374
|
-
oidc_discovery_url
|
375
|
-
oidc_client_id
|
376
|
-
oidc_client_secret
|
377
|
-
bound_audiences
|
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[
|
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[
|
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[
|
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.
|
473
|
-
|
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.
|
548
|
-
|
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
|
|
pulumi_nomad/acl_binding_rule.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__ = ['AclBindingRuleArgs', 'AclBindingRule']
|
pulumi_nomad/acl_policy.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 *
|
@@ -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[
|
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[
|
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[
|
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[
|
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[
|
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[
|
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[
|
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[
|
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[
|
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[
|
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))
|