pulumi-consul 3.12.0a1710156214__py3-none-any.whl → 3.13.0a1736832526__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-consul might be problematic. Click here for more details.
- pulumi_consul/__init__.py +10 -0
- pulumi_consul/_inputs.py +1592 -31
- pulumi_consul/_utilities.py +41 -5
- pulumi_consul/acl_auth_method.py +17 -22
- pulumi_consul/acl_binding_rule.py +12 -9
- pulumi_consul/acl_policy.py +7 -6
- pulumi_consul/acl_role.py +37 -32
- pulumi_consul/acl_role_policy_attachment.py +13 -10
- pulumi_consul/acl_token.py +34 -29
- pulumi_consul/acl_token_policy_attachment.py +5 -0
- pulumi_consul/acl_token_role_attachment.py +5 -0
- pulumi_consul/admin_partition.py +11 -6
- pulumi_consul/agent_service.py +7 -4
- pulumi_consul/autopilot_config.py +5 -4
- pulumi_consul/catalog_entry.py +16 -66
- pulumi_consul/certificate_authority.py +8 -49
- pulumi_consul/config/__init__.pyi +5 -0
- pulumi_consul/config/outputs.py +5 -0
- pulumi_consul/config/vars.py +5 -0
- pulumi_consul/config_entry.py +57 -46
- pulumi_consul/config_entry_service_defaults.py +54 -49
- pulumi_consul/config_entry_service_intentions.py +80 -75
- pulumi_consul/config_entry_service_resolver.py +94 -91
- pulumi_consul/config_entry_service_router.py +31 -66
- pulumi_consul/config_entry_service_splitter.py +102 -95
- pulumi_consul/config_entry_v2_exported_services.py +479 -0
- pulumi_consul/get_acl_auth_method.py +26 -12
- pulumi_consul/get_acl_policy.py +20 -9
- pulumi_consul/get_acl_role.py +24 -9
- pulumi_consul/get_acl_token.py +25 -9
- pulumi_consul/get_acl_token_secret_id.py +29 -15
- pulumi_consul/get_agent_config.py +17 -9
- pulumi_consul/get_agent_self.py +82 -5
- pulumi_consul/get_autopilot_health.py +16 -9
- pulumi_consul/get_catalog_nodes.py +21 -9
- pulumi_consul/get_catalog_service.py +56 -13
- pulumi_consul/get_catalog_services.py +53 -9
- pulumi_consul/get_config_entry.py +20 -5
- pulumi_consul/get_config_entry_v2_exported_services.py +232 -0
- pulumi_consul/get_datacenters.py +12 -5
- pulumi_consul/get_key_prefix.py +55 -46
- pulumi_consul/get_keys.py +44 -34
- pulumi_consul/get_network_area_members.py +26 -20
- pulumi_consul/get_network_segments.py +22 -18
- pulumi_consul/get_nodes.py +21 -9
- pulumi_consul/get_peering.py +22 -9
- pulumi_consul/get_peerings.py +14 -9
- pulumi_consul/get_service.py +56 -13
- pulumi_consul/get_service_health.py +28 -5
- pulumi_consul/get_services.py +53 -9
- pulumi_consul/intention.py +15 -18
- pulumi_consul/key_prefix.py +42 -50
- pulumi_consul/keys.py +26 -34
- pulumi_consul/license.py +9 -6
- pulumi_consul/namespace.py +7 -4
- pulumi_consul/namespace_policy_attachment.py +5 -0
- pulumi_consul/namespace_role_attachment.py +5 -0
- pulumi_consul/network_area.py +11 -19
- pulumi_consul/node.py +17 -21
- pulumi_consul/outputs.py +30 -27
- pulumi_consul/peering.py +13 -22
- pulumi_consul/peering_token.py +55 -15
- pulumi_consul/prepared_query.py +99 -103
- pulumi_consul/provider.py +11 -6
- pulumi_consul/pulumi-plugin.json +2 -1
- pulumi_consul/service.py +90 -29
- {pulumi_consul-3.12.0a1710156214.dist-info → pulumi_consul-3.13.0a1736832526.dist-info}/METADATA +7 -6
- pulumi_consul-3.13.0a1736832526.dist-info/RECORD +72 -0
- {pulumi_consul-3.12.0a1710156214.dist-info → pulumi_consul-3.13.0a1736832526.dist-info}/WHEEL +1 -1
- pulumi_consul-3.12.0a1710156214.dist-info/RECORD +0 -70
- {pulumi_consul-3.12.0a1710156214.dist-info → pulumi_consul-3.13.0a1736832526.dist-info}/top_level.txt +0 -0
pulumi_consul/_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_consul/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 *
|
|
@@ -80,13 +85,11 @@ class AclAuthMethodArgs:
|
|
|
80
85
|
|
|
81
86
|
@property
|
|
82
87
|
@pulumi.getter
|
|
88
|
+
@_utilities.deprecated("""The config attribute is deprecated, please use `config_json` instead.""")
|
|
83
89
|
def config(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
|
84
90
|
"""
|
|
85
91
|
The raw configuration for this ACL auth method.
|
|
86
92
|
"""
|
|
87
|
-
warnings.warn("""The config attribute is deprecated, please use `config_json` instead.""", DeprecationWarning)
|
|
88
|
-
pulumi.log.warn("""config is deprecated: The config attribute is deprecated, please use `config_json` instead.""")
|
|
89
|
-
|
|
90
93
|
return pulumi.get(self, "config")
|
|
91
94
|
|
|
92
95
|
@config.setter
|
|
@@ -258,13 +261,11 @@ class _AclAuthMethodState:
|
|
|
258
261
|
|
|
259
262
|
@property
|
|
260
263
|
@pulumi.getter
|
|
264
|
+
@_utilities.deprecated("""The config attribute is deprecated, please use `config_json` instead.""")
|
|
261
265
|
def config(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
|
262
266
|
"""
|
|
263
267
|
The raw configuration for this ACL auth method.
|
|
264
268
|
"""
|
|
265
|
-
warnings.warn("""The config attribute is deprecated, please use `config_json` instead.""", DeprecationWarning)
|
|
266
|
-
pulumi.log.warn("""config is deprecated: The config attribute is deprecated, please use `config_json` instead.""")
|
|
267
|
-
|
|
268
269
|
return pulumi.get(self, "config")
|
|
269
270
|
|
|
270
271
|
@config.setter
|
|
@@ -404,7 +405,7 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
404
405
|
max_token_ttl: Optional[pulumi.Input[str]] = None,
|
|
405
406
|
name: Optional[pulumi.Input[str]] = None,
|
|
406
407
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
407
|
-
namespace_rules: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
408
|
+
namespace_rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclAuthMethodNamespaceRuleArgs', 'AclAuthMethodNamespaceRuleArgsDict']]]]] = None,
|
|
408
409
|
partition: Optional[pulumi.Input[str]] = None,
|
|
409
410
|
token_locality: Optional[pulumi.Input[str]] = None,
|
|
410
411
|
type: Optional[pulumi.Input[str]] = None,
|
|
@@ -416,13 +417,13 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
416
417
|
|
|
417
418
|
Define a `kubernetes` auth method:
|
|
418
419
|
|
|
419
|
-
<!--Start PulumiCodeChooser -->
|
|
420
420
|
```python
|
|
421
421
|
import pulumi
|
|
422
422
|
import json
|
|
423
423
|
import pulumi_consul as consul
|
|
424
424
|
|
|
425
425
|
minikube = consul.AclAuthMethod("minikube",
|
|
426
|
+
name="minikube",
|
|
426
427
|
type="kubernetes",
|
|
427
428
|
description="dev minikube cluster",
|
|
428
429
|
config_json=json.dumps({
|
|
@@ -433,17 +434,16 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
433
434
|
"ServiceAccountJWT": "eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9...",
|
|
434
435
|
}))
|
|
435
436
|
```
|
|
436
|
-
<!--End PulumiCodeChooser -->
|
|
437
437
|
|
|
438
438
|
Define a `jwt` auth method:
|
|
439
439
|
|
|
440
|
-
<!--Start PulumiCodeChooser -->
|
|
441
440
|
```python
|
|
442
441
|
import pulumi
|
|
443
442
|
import json
|
|
444
443
|
import pulumi_consul as consul
|
|
445
444
|
|
|
446
445
|
oidc = consul.AclAuthMethod("oidc",
|
|
446
|
+
name="auth0",
|
|
447
447
|
type="oidc",
|
|
448
448
|
max_token_ttl="5m",
|
|
449
449
|
config_json=json.dumps({
|
|
@@ -464,7 +464,6 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
464
464
|
"OIDCDiscoveryURL": "https://my-corp-app-name.auth0.com/",
|
|
465
465
|
}))
|
|
466
466
|
```
|
|
467
|
-
<!--End PulumiCodeChooser -->
|
|
468
467
|
|
|
469
468
|
:param str resource_name: The name of the resource.
|
|
470
469
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
@@ -475,7 +474,7 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
475
474
|
:param pulumi.Input[str] max_token_ttl: The maximum life of any token created by this auth method. **This attribute is required and must be set to a nonzero for the OIDC auth method.**
|
|
476
475
|
:param pulumi.Input[str] name: The name of the ACL auth method.
|
|
477
476
|
:param pulumi.Input[str] namespace: The namespace in which to create the auth method.
|
|
478
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
477
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['AclAuthMethodNamespaceRuleArgs', 'AclAuthMethodNamespaceRuleArgsDict']]]] namespace_rules: A set of rules that control which namespace tokens created via this auth method will be created within.
|
|
479
478
|
:param pulumi.Input[str] partition: The partition the ACL auth method is associated with.
|
|
480
479
|
:param pulumi.Input[str] token_locality: The kind of token that this auth method produces. This can be either 'local' or 'global'.
|
|
481
480
|
:param pulumi.Input[str] type: The type of the ACL auth method.
|
|
@@ -493,13 +492,13 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
493
492
|
|
|
494
493
|
Define a `kubernetes` auth method:
|
|
495
494
|
|
|
496
|
-
<!--Start PulumiCodeChooser -->
|
|
497
495
|
```python
|
|
498
496
|
import pulumi
|
|
499
497
|
import json
|
|
500
498
|
import pulumi_consul as consul
|
|
501
499
|
|
|
502
500
|
minikube = consul.AclAuthMethod("minikube",
|
|
501
|
+
name="minikube",
|
|
503
502
|
type="kubernetes",
|
|
504
503
|
description="dev minikube cluster",
|
|
505
504
|
config_json=json.dumps({
|
|
@@ -510,17 +509,16 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
510
509
|
"ServiceAccountJWT": "eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9...",
|
|
511
510
|
}))
|
|
512
511
|
```
|
|
513
|
-
<!--End PulumiCodeChooser -->
|
|
514
512
|
|
|
515
513
|
Define a `jwt` auth method:
|
|
516
514
|
|
|
517
|
-
<!--Start PulumiCodeChooser -->
|
|
518
515
|
```python
|
|
519
516
|
import pulumi
|
|
520
517
|
import json
|
|
521
518
|
import pulumi_consul as consul
|
|
522
519
|
|
|
523
520
|
oidc = consul.AclAuthMethod("oidc",
|
|
521
|
+
name="auth0",
|
|
524
522
|
type="oidc",
|
|
525
523
|
max_token_ttl="5m",
|
|
526
524
|
config_json=json.dumps({
|
|
@@ -541,7 +539,6 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
541
539
|
"OIDCDiscoveryURL": "https://my-corp-app-name.auth0.com/",
|
|
542
540
|
}))
|
|
543
541
|
```
|
|
544
|
-
<!--End PulumiCodeChooser -->
|
|
545
542
|
|
|
546
543
|
:param str resource_name: The name of the resource.
|
|
547
544
|
:param AclAuthMethodArgs args: The arguments to use to populate this resource's properties.
|
|
@@ -565,7 +562,7 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
565
562
|
max_token_ttl: Optional[pulumi.Input[str]] = None,
|
|
566
563
|
name: Optional[pulumi.Input[str]] = None,
|
|
567
564
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
568
|
-
namespace_rules: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
565
|
+
namespace_rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclAuthMethodNamespaceRuleArgs', 'AclAuthMethodNamespaceRuleArgsDict']]]]] = None,
|
|
569
566
|
partition: Optional[pulumi.Input[str]] = None,
|
|
570
567
|
token_locality: Optional[pulumi.Input[str]] = None,
|
|
571
568
|
type: Optional[pulumi.Input[str]] = None,
|
|
@@ -608,7 +605,7 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
608
605
|
max_token_ttl: Optional[pulumi.Input[str]] = None,
|
|
609
606
|
name: Optional[pulumi.Input[str]] = None,
|
|
610
607
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
611
|
-
namespace_rules: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
608
|
+
namespace_rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclAuthMethodNamespaceRuleArgs', 'AclAuthMethodNamespaceRuleArgsDict']]]]] = None,
|
|
612
609
|
partition: Optional[pulumi.Input[str]] = None,
|
|
613
610
|
token_locality: Optional[pulumi.Input[str]] = None,
|
|
614
611
|
type: Optional[pulumi.Input[str]] = None) -> 'AclAuthMethod':
|
|
@@ -626,7 +623,7 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
626
623
|
:param pulumi.Input[str] max_token_ttl: The maximum life of any token created by this auth method. **This attribute is required and must be set to a nonzero for the OIDC auth method.**
|
|
627
624
|
:param pulumi.Input[str] name: The name of the ACL auth method.
|
|
628
625
|
:param pulumi.Input[str] namespace: The namespace in which to create the auth method.
|
|
629
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
626
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['AclAuthMethodNamespaceRuleArgs', 'AclAuthMethodNamespaceRuleArgsDict']]]] namespace_rules: A set of rules that control which namespace tokens created via this auth method will be created within.
|
|
630
627
|
:param pulumi.Input[str] partition: The partition the ACL auth method is associated with.
|
|
631
628
|
:param pulumi.Input[str] token_locality: The kind of token that this auth method produces. This can be either 'local' or 'global'.
|
|
632
629
|
:param pulumi.Input[str] type: The type of the ACL auth method.
|
|
@@ -650,13 +647,11 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
650
647
|
|
|
651
648
|
@property
|
|
652
649
|
@pulumi.getter
|
|
650
|
+
@_utilities.deprecated("""The config attribute is deprecated, please use `config_json` instead.""")
|
|
653
651
|
def config(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
|
|
654
652
|
"""
|
|
655
653
|
The raw configuration for this ACL auth method.
|
|
656
654
|
"""
|
|
657
|
-
warnings.warn("""The config attribute is deprecated, please use `config_json` instead.""", DeprecationWarning)
|
|
658
|
-
pulumi.log.warn("""config is deprecated: The config attribute is deprecated, please use `config_json` instead.""")
|
|
659
|
-
|
|
660
655
|
return pulumi.get(self, "config")
|
|
661
656
|
|
|
662
657
|
@property
|
|
@@ -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 *
|
|
@@ -290,7 +295,7 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
290
295
|
auth_method: Optional[pulumi.Input[str]] = None,
|
|
291
296
|
bind_name: Optional[pulumi.Input[str]] = None,
|
|
292
297
|
bind_type: Optional[pulumi.Input[str]] = None,
|
|
293
|
-
bind_vars: Optional[pulumi.Input[
|
|
298
|
+
bind_vars: Optional[pulumi.Input[Union['AclBindingRuleBindVarsArgs', 'AclBindingRuleBindVarsArgsDict']]] = None,
|
|
294
299
|
description: Optional[pulumi.Input[str]] = None,
|
|
295
300
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
296
301
|
partition: Optional[pulumi.Input[str]] = None,
|
|
@@ -301,12 +306,12 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
301
306
|
|
|
302
307
|
## Example Usage
|
|
303
308
|
|
|
304
|
-
<!--Start PulumiCodeChooser -->
|
|
305
309
|
```python
|
|
306
310
|
import pulumi
|
|
307
311
|
import pulumi_consul as consul
|
|
308
312
|
|
|
309
313
|
minikube = consul.AclAuthMethod("minikube",
|
|
314
|
+
name="minikube",
|
|
310
315
|
type="kubernetes",
|
|
311
316
|
description="dev minikube cluster",
|
|
312
317
|
config={
|
|
@@ -323,14 +328,13 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
323
328
|
bind_type="service",
|
|
324
329
|
bind_name="minikube")
|
|
325
330
|
```
|
|
326
|
-
<!--End PulumiCodeChooser -->
|
|
327
331
|
|
|
328
332
|
:param str resource_name: The name of the resource.
|
|
329
333
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
330
334
|
:param pulumi.Input[str] auth_method: The name of the ACL auth method this rule apply.
|
|
331
335
|
:param pulumi.Input[str] bind_name: The name to bind to a token at login-time.
|
|
332
336
|
:param pulumi.Input[str] bind_type: Specifies the way the binding rule affects a token created at login.
|
|
333
|
-
:param pulumi.Input[
|
|
337
|
+
:param pulumi.Input[Union['AclBindingRuleBindVarsArgs', 'AclBindingRuleBindVarsArgsDict']] bind_vars: The variables used when binding rule type is `templated-policy`. Can be lightly templated using HIL `${foo}` syntax from available field names.
|
|
334
338
|
:param pulumi.Input[str] description: A free form human readable description of the binding rule.
|
|
335
339
|
:param pulumi.Input[str] namespace: The namespace to create the binding rule within.
|
|
336
340
|
:param pulumi.Input[str] partition: The partition the ACL binding rule is associated with.
|
|
@@ -347,12 +351,12 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
347
351
|
|
|
348
352
|
## Example Usage
|
|
349
353
|
|
|
350
|
-
<!--Start PulumiCodeChooser -->
|
|
351
354
|
```python
|
|
352
355
|
import pulumi
|
|
353
356
|
import pulumi_consul as consul
|
|
354
357
|
|
|
355
358
|
minikube = consul.AclAuthMethod("minikube",
|
|
359
|
+
name="minikube",
|
|
356
360
|
type="kubernetes",
|
|
357
361
|
description="dev minikube cluster",
|
|
358
362
|
config={
|
|
@@ -369,7 +373,6 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
369
373
|
bind_type="service",
|
|
370
374
|
bind_name="minikube")
|
|
371
375
|
```
|
|
372
|
-
<!--End PulumiCodeChooser -->
|
|
373
376
|
|
|
374
377
|
:param str resource_name: The name of the resource.
|
|
375
378
|
:param AclBindingRuleArgs args: The arguments to use to populate this resource's properties.
|
|
@@ -389,7 +392,7 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
389
392
|
auth_method: Optional[pulumi.Input[str]] = None,
|
|
390
393
|
bind_name: Optional[pulumi.Input[str]] = None,
|
|
391
394
|
bind_type: Optional[pulumi.Input[str]] = None,
|
|
392
|
-
bind_vars: Optional[pulumi.Input[
|
|
395
|
+
bind_vars: Optional[pulumi.Input[Union['AclBindingRuleBindVarsArgs', 'AclBindingRuleBindVarsArgsDict']]] = None,
|
|
393
396
|
description: Optional[pulumi.Input[str]] = None,
|
|
394
397
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
395
398
|
partition: Optional[pulumi.Input[str]] = None,
|
|
@@ -430,7 +433,7 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
430
433
|
auth_method: Optional[pulumi.Input[str]] = None,
|
|
431
434
|
bind_name: Optional[pulumi.Input[str]] = None,
|
|
432
435
|
bind_type: Optional[pulumi.Input[str]] = None,
|
|
433
|
-
bind_vars: Optional[pulumi.Input[
|
|
436
|
+
bind_vars: Optional[pulumi.Input[Union['AclBindingRuleBindVarsArgs', 'AclBindingRuleBindVarsArgsDict']]] = None,
|
|
434
437
|
description: Optional[pulumi.Input[str]] = None,
|
|
435
438
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
436
439
|
partition: Optional[pulumi.Input[str]] = None,
|
|
@@ -445,7 +448,7 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
445
448
|
:param pulumi.Input[str] auth_method: The name of the ACL auth method this rule apply.
|
|
446
449
|
:param pulumi.Input[str] bind_name: The name to bind to a token at login-time.
|
|
447
450
|
:param pulumi.Input[str] bind_type: Specifies the way the binding rule affects a token created at login.
|
|
448
|
-
:param pulumi.Input[
|
|
451
|
+
:param pulumi.Input[Union['AclBindingRuleBindVarsArgs', 'AclBindingRuleBindVarsArgsDict']] bind_vars: The variables used when binding rule type is `templated-policy`. Can be lightly templated using HIL `${foo}` syntax from available field names.
|
|
449
452
|
:param pulumi.Input[str] description: A free form human readable description of the binding rule.
|
|
450
453
|
:param pulumi.Input[str] namespace: The namespace to create the binding rule within.
|
|
451
454
|
:param pulumi.Input[str] partition: The partition the ACL binding rule is associated with.
|
pulumi_consul/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
|
|
|
12
17
|
__all__ = ['AclPolicyArgs', 'AclPolicy']
|
|
@@ -235,20 +240,18 @@ class AclPolicy(pulumi.CustomResource):
|
|
|
235
240
|
|
|
236
241
|
## Example Usage
|
|
237
242
|
|
|
238
|
-
<!--Start PulumiCodeChooser -->
|
|
239
243
|
```python
|
|
240
244
|
import pulumi
|
|
241
245
|
import pulumi_consul as consul
|
|
242
246
|
|
|
243
247
|
test = consul.AclPolicy("test",
|
|
248
|
+
name="my_policy",
|
|
244
249
|
datacenters=["dc1"],
|
|
245
250
|
rules=\"\"\"node_prefix "" {
|
|
246
251
|
policy = "read"
|
|
247
252
|
}
|
|
248
|
-
|
|
249
253
|
\"\"\")
|
|
250
254
|
```
|
|
251
|
-
<!--End PulumiCodeChooser -->
|
|
252
255
|
|
|
253
256
|
## Import
|
|
254
257
|
|
|
@@ -278,20 +281,18 @@ class AclPolicy(pulumi.CustomResource):
|
|
|
278
281
|
|
|
279
282
|
## Example Usage
|
|
280
283
|
|
|
281
|
-
<!--Start PulumiCodeChooser -->
|
|
282
284
|
```python
|
|
283
285
|
import pulumi
|
|
284
286
|
import pulumi_consul as consul
|
|
285
287
|
|
|
286
288
|
test = consul.AclPolicy("test",
|
|
289
|
+
name="my_policy",
|
|
287
290
|
datacenters=["dc1"],
|
|
288
291
|
rules=\"\"\"node_prefix "" {
|
|
289
292
|
policy = "read"
|
|
290
293
|
}
|
|
291
|
-
|
|
292
294
|
\"\"\")
|
|
293
295
|
```
|
|
294
|
-
<!--End PulumiCodeChooser -->
|
|
295
296
|
|
|
296
297
|
## Import
|
|
297
298
|
|
pulumi_consul/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 *
|
|
@@ -27,7 +32,7 @@ class AclRoleArgs:
|
|
|
27
32
|
"""
|
|
28
33
|
The set of arguments for constructing a AclRole resource.
|
|
29
34
|
:param pulumi.Input[str] description: A free form human readable description of the role.
|
|
30
|
-
:param pulumi.Input[str] name: The name of
|
|
35
|
+
:param pulumi.Input[str] name: The name of the ACL role.
|
|
31
36
|
:param pulumi.Input[str] namespace: The namespace to create the role within.
|
|
32
37
|
:param pulumi.Input[Sequence[pulumi.Input['AclRoleNodeIdentityArgs']]] node_identities: The list of node identities that should be applied to the role.
|
|
33
38
|
:param pulumi.Input[str] partition: The partition the ACL role is associated with.
|
|
@@ -68,7 +73,7 @@ class AclRoleArgs:
|
|
|
68
73
|
@pulumi.getter
|
|
69
74
|
def name(self) -> Optional[pulumi.Input[str]]:
|
|
70
75
|
"""
|
|
71
|
-
The name of
|
|
76
|
+
The name of the ACL role.
|
|
72
77
|
"""
|
|
73
78
|
return pulumi.get(self, "name")
|
|
74
79
|
|
|
@@ -163,7 +168,7 @@ class _AclRoleState:
|
|
|
163
168
|
"""
|
|
164
169
|
Input properties used for looking up and filtering AclRole resources.
|
|
165
170
|
:param pulumi.Input[str] description: A free form human readable description of the role.
|
|
166
|
-
:param pulumi.Input[str] name: The name of
|
|
171
|
+
:param pulumi.Input[str] name: The name of the ACL role.
|
|
167
172
|
:param pulumi.Input[str] namespace: The namespace to create the role within.
|
|
168
173
|
:param pulumi.Input[Sequence[pulumi.Input['AclRoleNodeIdentityArgs']]] node_identities: The list of node identities that should be applied to the role.
|
|
169
174
|
:param pulumi.Input[str] partition: The partition the ACL role is associated with.
|
|
@@ -204,7 +209,7 @@ class _AclRoleState:
|
|
|
204
209
|
@pulumi.getter
|
|
205
210
|
def name(self) -> Optional[pulumi.Input[str]]:
|
|
206
211
|
"""
|
|
207
|
-
The name of
|
|
212
|
+
The name of the ACL role.
|
|
208
213
|
"""
|
|
209
214
|
return pulumi.get(self, "name")
|
|
210
215
|
|
|
@@ -293,31 +298,31 @@ class AclRole(pulumi.CustomResource):
|
|
|
293
298
|
description: Optional[pulumi.Input[str]] = None,
|
|
294
299
|
name: Optional[pulumi.Input[str]] = None,
|
|
295
300
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
296
|
-
node_identities: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
301
|
+
node_identities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRoleNodeIdentityArgs', 'AclRoleNodeIdentityArgsDict']]]]] = None,
|
|
297
302
|
partition: Optional[pulumi.Input[str]] = None,
|
|
298
303
|
policies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
299
|
-
service_identities: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
300
|
-
templated_policies: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
304
|
+
service_identities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRoleServiceIdentityArgs', 'AclRoleServiceIdentityArgsDict']]]]] = None,
|
|
305
|
+
templated_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRoleTemplatedPolicyArgs', 'AclRoleTemplatedPolicyArgsDict']]]]] = None,
|
|
301
306
|
__props__=None):
|
|
302
307
|
"""
|
|
303
308
|
## Example Usage
|
|
304
309
|
|
|
305
|
-
<!--Start PulumiCodeChooser -->
|
|
306
310
|
```python
|
|
307
311
|
import pulumi
|
|
308
312
|
import pulumi_consul as consul
|
|
309
313
|
|
|
310
314
|
read_policy = consul.AclPolicy("read-policy",
|
|
315
|
+
name="read-policy",
|
|
311
316
|
rules="node \\"\\" { policy = \\"read\\" }",
|
|
312
317
|
datacenters=["dc1"])
|
|
313
318
|
read = consul.AclRole("read",
|
|
319
|
+
name="foo",
|
|
314
320
|
description="bar",
|
|
315
321
|
policies=[read_policy.id],
|
|
316
|
-
service_identities=[
|
|
317
|
-
service_name
|
|
318
|
-
|
|
322
|
+
service_identities=[{
|
|
323
|
+
"service_name": "foo",
|
|
324
|
+
}])
|
|
319
325
|
```
|
|
320
|
-
<!--End PulumiCodeChooser -->
|
|
321
326
|
|
|
322
327
|
## Import
|
|
323
328
|
|
|
@@ -328,13 +333,13 @@ class AclRole(pulumi.CustomResource):
|
|
|
328
333
|
:param str resource_name: The name of the resource.
|
|
329
334
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
330
335
|
:param pulumi.Input[str] description: A free form human readable description of the role.
|
|
331
|
-
:param pulumi.Input[str] name: The name of
|
|
336
|
+
:param pulumi.Input[str] name: The name of the ACL role.
|
|
332
337
|
:param pulumi.Input[str] namespace: The namespace to create the role within.
|
|
333
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
338
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['AclRoleNodeIdentityArgs', 'AclRoleNodeIdentityArgsDict']]]] node_identities: The list of node identities that should be applied to the role.
|
|
334
339
|
:param pulumi.Input[str] partition: The partition the ACL role is associated with.
|
|
335
340
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] policies: The list of policies that should be applied to the role. Both the policy ID or its name can be used.
|
|
336
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
337
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
341
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['AclRoleServiceIdentityArgs', 'AclRoleServiceIdentityArgsDict']]]] service_identities: The list of service identities that should be applied to the role.
|
|
342
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['AclRoleTemplatedPolicyArgs', 'AclRoleTemplatedPolicyArgsDict']]]] templated_policies: The list of templated policies that should be applied to the token.
|
|
338
343
|
"""
|
|
339
344
|
...
|
|
340
345
|
@overload
|
|
@@ -345,22 +350,22 @@ class AclRole(pulumi.CustomResource):
|
|
|
345
350
|
"""
|
|
346
351
|
## Example Usage
|
|
347
352
|
|
|
348
|
-
<!--Start PulumiCodeChooser -->
|
|
349
353
|
```python
|
|
350
354
|
import pulumi
|
|
351
355
|
import pulumi_consul as consul
|
|
352
356
|
|
|
353
357
|
read_policy = consul.AclPolicy("read-policy",
|
|
358
|
+
name="read-policy",
|
|
354
359
|
rules="node \\"\\" { policy = \\"read\\" }",
|
|
355
360
|
datacenters=["dc1"])
|
|
356
361
|
read = consul.AclRole("read",
|
|
362
|
+
name="foo",
|
|
357
363
|
description="bar",
|
|
358
364
|
policies=[read_policy.id],
|
|
359
|
-
service_identities=[
|
|
360
|
-
service_name
|
|
361
|
-
|
|
365
|
+
service_identities=[{
|
|
366
|
+
"service_name": "foo",
|
|
367
|
+
}])
|
|
362
368
|
```
|
|
363
|
-
<!--End PulumiCodeChooser -->
|
|
364
369
|
|
|
365
370
|
## Import
|
|
366
371
|
|
|
@@ -386,11 +391,11 @@ class AclRole(pulumi.CustomResource):
|
|
|
386
391
|
description: Optional[pulumi.Input[str]] = None,
|
|
387
392
|
name: Optional[pulumi.Input[str]] = None,
|
|
388
393
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
389
|
-
node_identities: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
394
|
+
node_identities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRoleNodeIdentityArgs', 'AclRoleNodeIdentityArgsDict']]]]] = None,
|
|
390
395
|
partition: Optional[pulumi.Input[str]] = None,
|
|
391
396
|
policies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
392
|
-
service_identities: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
393
|
-
templated_policies: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
397
|
+
service_identities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRoleServiceIdentityArgs', 'AclRoleServiceIdentityArgsDict']]]]] = None,
|
|
398
|
+
templated_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRoleTemplatedPolicyArgs', 'AclRoleTemplatedPolicyArgsDict']]]]] = None,
|
|
394
399
|
__props__=None):
|
|
395
400
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
396
401
|
if not isinstance(opts, pulumi.ResourceOptions):
|
|
@@ -421,11 +426,11 @@ class AclRole(pulumi.CustomResource):
|
|
|
421
426
|
description: Optional[pulumi.Input[str]] = None,
|
|
422
427
|
name: Optional[pulumi.Input[str]] = None,
|
|
423
428
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
424
|
-
node_identities: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
429
|
+
node_identities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRoleNodeIdentityArgs', 'AclRoleNodeIdentityArgsDict']]]]] = None,
|
|
425
430
|
partition: Optional[pulumi.Input[str]] = None,
|
|
426
431
|
policies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
427
|
-
service_identities: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
428
|
-
templated_policies: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
432
|
+
service_identities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRoleServiceIdentityArgs', 'AclRoleServiceIdentityArgsDict']]]]] = None,
|
|
433
|
+
templated_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRoleTemplatedPolicyArgs', 'AclRoleTemplatedPolicyArgsDict']]]]] = None) -> 'AclRole':
|
|
429
434
|
"""
|
|
430
435
|
Get an existing AclRole resource's state with the given name, id, and optional extra
|
|
431
436
|
properties used to qualify the lookup.
|
|
@@ -434,13 +439,13 @@ class AclRole(pulumi.CustomResource):
|
|
|
434
439
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
435
440
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
436
441
|
:param pulumi.Input[str] description: A free form human readable description of the role.
|
|
437
|
-
:param pulumi.Input[str] name: The name of
|
|
442
|
+
:param pulumi.Input[str] name: The name of the ACL role.
|
|
438
443
|
:param pulumi.Input[str] namespace: The namespace to create the role within.
|
|
439
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
444
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['AclRoleNodeIdentityArgs', 'AclRoleNodeIdentityArgsDict']]]] node_identities: The list of node identities that should be applied to the role.
|
|
440
445
|
:param pulumi.Input[str] partition: The partition the ACL role is associated with.
|
|
441
446
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] policies: The list of policies that should be applied to the role. Both the policy ID or its name can be used.
|
|
442
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
443
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
447
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['AclRoleServiceIdentityArgs', 'AclRoleServiceIdentityArgsDict']]]] service_identities: The list of service identities that should be applied to the role.
|
|
448
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['AclRoleTemplatedPolicyArgs', 'AclRoleTemplatedPolicyArgsDict']]]] templated_policies: The list of templated policies that should be applied to the token.
|
|
444
449
|
"""
|
|
445
450
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
446
451
|
|
|
@@ -468,7 +473,7 @@ class AclRole(pulumi.CustomResource):
|
|
|
468
473
|
@pulumi.getter
|
|
469
474
|
def name(self) -> pulumi.Output[str]:
|
|
470
475
|
"""
|
|
471
|
-
The name of
|
|
476
|
+
The name of the ACL role.
|
|
472
477
|
"""
|
|
473
478
|
return pulumi.get(self, "name")
|
|
474
479
|
|