pulumi-consul 3.12.0a1709360320__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 -14
- pulumi_consul/acl_binding_rule.py +12 -5
- pulumi_consul/acl_policy.py +9 -4
- pulumi_consul/acl_role.py +39 -30
- pulumi_consul/acl_role_policy_attachment.py +15 -8
- pulumi_consul/acl_token.py +36 -27
- pulumi_consul/acl_token_policy_attachment.py +7 -2
- pulumi_consul/acl_token_role_attachment.py +11 -4
- pulumi_consul/admin_partition.py +13 -4
- pulumi_consul/agent_service.py +7 -0
- pulumi_consul/autopilot_config.py +5 -0
- pulumi_consul/catalog_entry.py +16 -62
- pulumi_consul/certificate_authority.py +10 -51
- 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 +75 -26
- pulumi_consul/config_entry_service_defaults.py +58 -51
- pulumi_consul/config_entry_service_intentions.py +80 -71
- pulumi_consul/config_entry_service_resolver.py +94 -87
- pulumi_consul/config_entry_service_router.py +31 -62
- pulumi_consul/config_entry_service_splitter.py +104 -93
- pulumi_consul/config_entry_v2_exported_services.py +479 -0
- pulumi_consul/get_acl_auth_method.py +26 -8
- pulumi_consul/get_acl_policy.py +20 -5
- pulumi_consul/get_acl_role.py +24 -5
- pulumi_consul/get_acl_token.py +25 -5
- pulumi_consul/get_acl_token_secret_id.py +29 -11
- pulumi_consul/get_agent_config.py +17 -5
- pulumi_consul/get_agent_self.py +82 -5
- pulumi_consul/get_autopilot_health.py +16 -5
- 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 -38
- pulumi_consul/get_keys.py +44 -30
- pulumi_consul/get_network_area_members.py +26 -16
- pulumi_consul/get_network_segments.py +22 -14
- pulumi_consul/get_nodes.py +21 -9
- pulumi_consul/get_peering.py +22 -5
- pulumi_consul/get_peerings.py +14 -5
- 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 +17 -12
- pulumi_consul/key_prefix.py +48 -50
- pulumi_consul/keys.py +26 -30
- pulumi_consul/license.py +9 -2
- pulumi_consul/namespace.py +13 -4
- pulumi_consul/namespace_policy_attachment.py +11 -4
- pulumi_consul/namespace_role_attachment.py +11 -4
- pulumi_consul/network_area.py +11 -15
- pulumi_consul/node.py +19 -19
- pulumi_consul/outputs.py +30 -27
- pulumi_consul/peering.py +13 -18
- pulumi_consul/peering_token.py +55 -11
- pulumi_consul/prepared_query.py +101 -101
- pulumi_consul/provider.py +11 -6
- pulumi_consul/pulumi-plugin.json +2 -1
- pulumi_consul/service.py +144 -19
- {pulumi_consul-3.12.0a1709360320.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.0a1709360320.dist-info → pulumi_consul-3.13.0a1736832526.dist-info}/WHEEL +1 -1
- pulumi_consul-3.12.0a1709360320.dist-info/RECORD +0 -70
- {pulumi_consul-3.12.0a1709360320.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,
|
|
@@ -422,6 +423,7 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
422
423
|
import pulumi_consul as consul
|
|
423
424
|
|
|
424
425
|
minikube = consul.AclAuthMethod("minikube",
|
|
426
|
+
name="minikube",
|
|
425
427
|
type="kubernetes",
|
|
426
428
|
description="dev minikube cluster",
|
|
427
429
|
config_json=json.dumps({
|
|
@@ -441,6 +443,7 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
441
443
|
import pulumi_consul as consul
|
|
442
444
|
|
|
443
445
|
oidc = consul.AclAuthMethod("oidc",
|
|
446
|
+
name="auth0",
|
|
444
447
|
type="oidc",
|
|
445
448
|
max_token_ttl="5m",
|
|
446
449
|
config_json=json.dumps({
|
|
@@ -471,7 +474,7 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
471
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.**
|
|
472
475
|
:param pulumi.Input[str] name: The name of the ACL auth method.
|
|
473
476
|
:param pulumi.Input[str] namespace: The namespace in which to create the auth method.
|
|
474
|
-
: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.
|
|
475
478
|
:param pulumi.Input[str] partition: The partition the ACL auth method is associated with.
|
|
476
479
|
:param pulumi.Input[str] token_locality: The kind of token that this auth method produces. This can be either 'local' or 'global'.
|
|
477
480
|
:param pulumi.Input[str] type: The type of the ACL auth method.
|
|
@@ -495,6 +498,7 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
495
498
|
import pulumi_consul as consul
|
|
496
499
|
|
|
497
500
|
minikube = consul.AclAuthMethod("minikube",
|
|
501
|
+
name="minikube",
|
|
498
502
|
type="kubernetes",
|
|
499
503
|
description="dev minikube cluster",
|
|
500
504
|
config_json=json.dumps({
|
|
@@ -514,6 +518,7 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
514
518
|
import pulumi_consul as consul
|
|
515
519
|
|
|
516
520
|
oidc = consul.AclAuthMethod("oidc",
|
|
521
|
+
name="auth0",
|
|
517
522
|
type="oidc",
|
|
518
523
|
max_token_ttl="5m",
|
|
519
524
|
config_json=json.dumps({
|
|
@@ -557,7 +562,7 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
557
562
|
max_token_ttl: Optional[pulumi.Input[str]] = None,
|
|
558
563
|
name: Optional[pulumi.Input[str]] = None,
|
|
559
564
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
560
|
-
namespace_rules: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
565
|
+
namespace_rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclAuthMethodNamespaceRuleArgs', 'AclAuthMethodNamespaceRuleArgsDict']]]]] = None,
|
|
561
566
|
partition: Optional[pulumi.Input[str]] = None,
|
|
562
567
|
token_locality: Optional[pulumi.Input[str]] = None,
|
|
563
568
|
type: Optional[pulumi.Input[str]] = None,
|
|
@@ -600,7 +605,7 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
600
605
|
max_token_ttl: Optional[pulumi.Input[str]] = None,
|
|
601
606
|
name: Optional[pulumi.Input[str]] = None,
|
|
602
607
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
603
|
-
namespace_rules: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
608
|
+
namespace_rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclAuthMethodNamespaceRuleArgs', 'AclAuthMethodNamespaceRuleArgsDict']]]]] = None,
|
|
604
609
|
partition: Optional[pulumi.Input[str]] = None,
|
|
605
610
|
token_locality: Optional[pulumi.Input[str]] = None,
|
|
606
611
|
type: Optional[pulumi.Input[str]] = None) -> 'AclAuthMethod':
|
|
@@ -618,7 +623,7 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
618
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.**
|
|
619
624
|
:param pulumi.Input[str] name: The name of the ACL auth method.
|
|
620
625
|
:param pulumi.Input[str] namespace: The namespace in which to create the auth method.
|
|
621
|
-
: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.
|
|
622
627
|
:param pulumi.Input[str] partition: The partition the ACL auth method is associated with.
|
|
623
628
|
:param pulumi.Input[str] token_locality: The kind of token that this auth method produces. This can be either 'local' or 'global'.
|
|
624
629
|
:param pulumi.Input[str] type: The type of the ACL auth method.
|
|
@@ -642,13 +647,11 @@ class AclAuthMethod(pulumi.CustomResource):
|
|
|
642
647
|
|
|
643
648
|
@property
|
|
644
649
|
@pulumi.getter
|
|
650
|
+
@_utilities.deprecated("""The config attribute is deprecated, please use `config_json` instead.""")
|
|
645
651
|
def config(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
|
|
646
652
|
"""
|
|
647
653
|
The raw configuration for this ACL auth method.
|
|
648
654
|
"""
|
|
649
|
-
warnings.warn("""The config attribute is deprecated, please use `config_json` instead.""", DeprecationWarning)
|
|
650
|
-
pulumi.log.warn("""config is deprecated: The config attribute is deprecated, please use `config_json` instead.""")
|
|
651
|
-
|
|
652
655
|
return pulumi.get(self, "config")
|
|
653
656
|
|
|
654
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,
|
|
@@ -306,6 +311,7 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
306
311
|
import pulumi_consul as consul
|
|
307
312
|
|
|
308
313
|
minikube = consul.AclAuthMethod("minikube",
|
|
314
|
+
name="minikube",
|
|
309
315
|
type="kubernetes",
|
|
310
316
|
description="dev minikube cluster",
|
|
311
317
|
config={
|
|
@@ -328,7 +334,7 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
328
334
|
:param pulumi.Input[str] auth_method: The name of the ACL auth method this rule apply.
|
|
329
335
|
:param pulumi.Input[str] bind_name: The name to bind to a token at login-time.
|
|
330
336
|
:param pulumi.Input[str] bind_type: Specifies the way the binding rule affects a token created at login.
|
|
331
|
-
: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.
|
|
332
338
|
:param pulumi.Input[str] description: A free form human readable description of the binding rule.
|
|
333
339
|
:param pulumi.Input[str] namespace: The namespace to create the binding rule within.
|
|
334
340
|
:param pulumi.Input[str] partition: The partition the ACL binding rule is associated with.
|
|
@@ -350,6 +356,7 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
350
356
|
import pulumi_consul as consul
|
|
351
357
|
|
|
352
358
|
minikube = consul.AclAuthMethod("minikube",
|
|
359
|
+
name="minikube",
|
|
353
360
|
type="kubernetes",
|
|
354
361
|
description="dev minikube cluster",
|
|
355
362
|
config={
|
|
@@ -385,7 +392,7 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
385
392
|
auth_method: Optional[pulumi.Input[str]] = None,
|
|
386
393
|
bind_name: Optional[pulumi.Input[str]] = None,
|
|
387
394
|
bind_type: Optional[pulumi.Input[str]] = None,
|
|
388
|
-
bind_vars: Optional[pulumi.Input[
|
|
395
|
+
bind_vars: Optional[pulumi.Input[Union['AclBindingRuleBindVarsArgs', 'AclBindingRuleBindVarsArgsDict']]] = None,
|
|
389
396
|
description: Optional[pulumi.Input[str]] = None,
|
|
390
397
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
391
398
|
partition: Optional[pulumi.Input[str]] = None,
|
|
@@ -426,7 +433,7 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
426
433
|
auth_method: Optional[pulumi.Input[str]] = None,
|
|
427
434
|
bind_name: Optional[pulumi.Input[str]] = None,
|
|
428
435
|
bind_type: Optional[pulumi.Input[str]] = None,
|
|
429
|
-
bind_vars: Optional[pulumi.Input[
|
|
436
|
+
bind_vars: Optional[pulumi.Input[Union['AclBindingRuleBindVarsArgs', 'AclBindingRuleBindVarsArgsDict']]] = None,
|
|
430
437
|
description: Optional[pulumi.Input[str]] = None,
|
|
431
438
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
432
439
|
partition: Optional[pulumi.Input[str]] = None,
|
|
@@ -441,7 +448,7 @@ class AclBindingRule(pulumi.CustomResource):
|
|
|
441
448
|
:param pulumi.Input[str] auth_method: The name of the ACL auth method this rule apply.
|
|
442
449
|
:param pulumi.Input[str] bind_name: The name to bind to a token at login-time.
|
|
443
450
|
:param pulumi.Input[str] bind_type: Specifies the way the binding rule affects a token created at login.
|
|
444
|
-
: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.
|
|
445
452
|
:param pulumi.Input[str] description: A free form human readable description of the binding rule.
|
|
446
453
|
:param pulumi.Input[str] namespace: The namespace to create the binding rule within.
|
|
447
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']
|
|
@@ -240,11 +245,11 @@ class AclPolicy(pulumi.CustomResource):
|
|
|
240
245
|
import pulumi_consul as consul
|
|
241
246
|
|
|
242
247
|
test = consul.AclPolicy("test",
|
|
248
|
+
name="my_policy",
|
|
243
249
|
datacenters=["dc1"],
|
|
244
250
|
rules=\"\"\"node_prefix "" {
|
|
245
251
|
policy = "read"
|
|
246
252
|
}
|
|
247
|
-
|
|
248
253
|
\"\"\")
|
|
249
254
|
```
|
|
250
255
|
|
|
@@ -253,7 +258,7 @@ class AclPolicy(pulumi.CustomResource):
|
|
|
253
258
|
`consul_acl_policy` can be imported:
|
|
254
259
|
|
|
255
260
|
```sh
|
|
256
|
-
|
|
261
|
+
$ pulumi import consul:index/aclPolicy:AclPolicy my-policy 1c90ef03-a6dd-6a8c-ac49-042ad3752896
|
|
257
262
|
```
|
|
258
263
|
|
|
259
264
|
:param str resource_name: The name of the resource.
|
|
@@ -281,11 +286,11 @@ class AclPolicy(pulumi.CustomResource):
|
|
|
281
286
|
import pulumi_consul as consul
|
|
282
287
|
|
|
283
288
|
test = consul.AclPolicy("test",
|
|
289
|
+
name="my_policy",
|
|
284
290
|
datacenters=["dc1"],
|
|
285
291
|
rules=\"\"\"node_prefix "" {
|
|
286
292
|
policy = "read"
|
|
287
293
|
}
|
|
288
|
-
|
|
289
294
|
\"\"\")
|
|
290
295
|
```
|
|
291
296
|
|
|
@@ -294,7 +299,7 @@ class AclPolicy(pulumi.CustomResource):
|
|
|
294
299
|
`consul_acl_policy` can be imported:
|
|
295
300
|
|
|
296
301
|
```sh
|
|
297
|
-
|
|
302
|
+
$ pulumi import consul:index/aclPolicy:AclPolicy my-policy 1c90ef03-a6dd-6a8c-ac49-042ad3752896
|
|
298
303
|
```
|
|
299
304
|
|
|
300
305
|
:param str resource_name: The name of the resource.
|
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,11 +298,11 @@ 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
|
|
@@ -307,32 +312,34 @@ class AclRole(pulumi.CustomResource):
|
|
|
307
312
|
import pulumi_consul as consul
|
|
308
313
|
|
|
309
314
|
read_policy = consul.AclPolicy("read-policy",
|
|
315
|
+
name="read-policy",
|
|
310
316
|
rules="node \\"\\" { policy = \\"read\\" }",
|
|
311
317
|
datacenters=["dc1"])
|
|
312
318
|
read = consul.AclRole("read",
|
|
319
|
+
name="foo",
|
|
313
320
|
description="bar",
|
|
314
321
|
policies=[read_policy.id],
|
|
315
|
-
service_identities=[
|
|
316
|
-
service_name
|
|
317
|
-
|
|
322
|
+
service_identities=[{
|
|
323
|
+
"service_name": "foo",
|
|
324
|
+
}])
|
|
318
325
|
```
|
|
319
326
|
|
|
320
327
|
## Import
|
|
321
328
|
|
|
322
329
|
```sh
|
|
323
|
-
|
|
330
|
+
$ pulumi import consul:index/aclRole:AclRole read 816a195f-6cb1-2e8d-92af-3011ae706318
|
|
324
331
|
```
|
|
325
332
|
|
|
326
333
|
:param str resource_name: The name of the resource.
|
|
327
334
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
328
335
|
:param pulumi.Input[str] description: A free form human readable description of the role.
|
|
329
|
-
:param pulumi.Input[str] name: The name of
|
|
336
|
+
:param pulumi.Input[str] name: The name of the ACL role.
|
|
330
337
|
:param pulumi.Input[str] namespace: The namespace to create the role within.
|
|
331
|
-
: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.
|
|
332
339
|
:param pulumi.Input[str] partition: The partition the ACL role is associated with.
|
|
333
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.
|
|
334
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
335
|
-
: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.
|
|
336
343
|
"""
|
|
337
344
|
...
|
|
338
345
|
@overload
|
|
@@ -348,20 +355,22 @@ class AclRole(pulumi.CustomResource):
|
|
|
348
355
|
import pulumi_consul as consul
|
|
349
356
|
|
|
350
357
|
read_policy = consul.AclPolicy("read-policy",
|
|
358
|
+
name="read-policy",
|
|
351
359
|
rules="node \\"\\" { policy = \\"read\\" }",
|
|
352
360
|
datacenters=["dc1"])
|
|
353
361
|
read = consul.AclRole("read",
|
|
362
|
+
name="foo",
|
|
354
363
|
description="bar",
|
|
355
364
|
policies=[read_policy.id],
|
|
356
|
-
service_identities=[
|
|
357
|
-
service_name
|
|
358
|
-
|
|
365
|
+
service_identities=[{
|
|
366
|
+
"service_name": "foo",
|
|
367
|
+
}])
|
|
359
368
|
```
|
|
360
369
|
|
|
361
370
|
## Import
|
|
362
371
|
|
|
363
372
|
```sh
|
|
364
|
-
|
|
373
|
+
$ pulumi import consul:index/aclRole:AclRole read 816a195f-6cb1-2e8d-92af-3011ae706318
|
|
365
374
|
```
|
|
366
375
|
|
|
367
376
|
:param str resource_name: The name of the resource.
|
|
@@ -382,11 +391,11 @@ class AclRole(pulumi.CustomResource):
|
|
|
382
391
|
description: Optional[pulumi.Input[str]] = None,
|
|
383
392
|
name: Optional[pulumi.Input[str]] = None,
|
|
384
393
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
385
|
-
node_identities: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
394
|
+
node_identities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRoleNodeIdentityArgs', 'AclRoleNodeIdentityArgsDict']]]]] = None,
|
|
386
395
|
partition: Optional[pulumi.Input[str]] = None,
|
|
387
396
|
policies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
388
|
-
service_identities: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
389
|
-
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,
|
|
390
399
|
__props__=None):
|
|
391
400
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
392
401
|
if not isinstance(opts, pulumi.ResourceOptions):
|
|
@@ -417,11 +426,11 @@ class AclRole(pulumi.CustomResource):
|
|
|
417
426
|
description: Optional[pulumi.Input[str]] = None,
|
|
418
427
|
name: Optional[pulumi.Input[str]] = None,
|
|
419
428
|
namespace: Optional[pulumi.Input[str]] = None,
|
|
420
|
-
node_identities: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
429
|
+
node_identities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AclRoleNodeIdentityArgs', 'AclRoleNodeIdentityArgsDict']]]]] = None,
|
|
421
430
|
partition: Optional[pulumi.Input[str]] = None,
|
|
422
431
|
policies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
423
|
-
service_identities: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
424
|
-
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':
|
|
425
434
|
"""
|
|
426
435
|
Get an existing AclRole resource's state with the given name, id, and optional extra
|
|
427
436
|
properties used to qualify the lookup.
|
|
@@ -430,13 +439,13 @@ class AclRole(pulumi.CustomResource):
|
|
|
430
439
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
431
440
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
432
441
|
:param pulumi.Input[str] description: A free form human readable description of the role.
|
|
433
|
-
:param pulumi.Input[str] name: The name of
|
|
442
|
+
:param pulumi.Input[str] name: The name of the ACL role.
|
|
434
443
|
:param pulumi.Input[str] namespace: The namespace to create the role within.
|
|
435
|
-
: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.
|
|
436
445
|
:param pulumi.Input[str] partition: The partition the ACL role is associated with.
|
|
437
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.
|
|
438
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
439
|
-
: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.
|
|
440
449
|
"""
|
|
441
450
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
442
451
|
|
|
@@ -464,7 +473,7 @@ class AclRole(pulumi.CustomResource):
|
|
|
464
473
|
@pulumi.getter
|
|
465
474
|
def name(self) -> pulumi.Output[str]:
|
|
466
475
|
"""
|
|
467
|
-
The name of
|
|
476
|
+
The name of the ACL role.
|
|
468
477
|
"""
|
|
469
478
|
return pulumi.get(self, "name")
|
|
470
479
|
|
|
@@ -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__ = ['AclRolePolicyAttachmentArgs', 'AclRolePolicyAttachment']
|
|
@@ -105,18 +110,19 @@ class AclRolePolicyAttachment(pulumi.CustomResource):
|
|
|
105
110
|
import pulumi_consul as consul
|
|
106
111
|
|
|
107
112
|
my_role = consul.get_acl_role(name="my_role")
|
|
108
|
-
read_policy = consul.AclPolicy("
|
|
113
|
+
read_policy = consul.AclPolicy("read_policy",
|
|
114
|
+
name="read-policy",
|
|
109
115
|
rules="node \\"\\" { policy = \\"read\\" }",
|
|
110
116
|
datacenters=["dc1"])
|
|
111
|
-
my_role_read_policy = consul.AclRolePolicyAttachment("
|
|
112
|
-
role_id=
|
|
117
|
+
my_role_read_policy = consul.AclRolePolicyAttachment("my_role_read_policy",
|
|
118
|
+
role_id=test["id"],
|
|
113
119
|
policy=read_policy.name)
|
|
114
120
|
```
|
|
115
121
|
|
|
116
122
|
## Import
|
|
117
123
|
|
|
118
124
|
```sh
|
|
119
|
-
|
|
125
|
+
$ pulumi import consul:index/aclRolePolicyAttachment:AclRolePolicyAttachment my_role_read_policy 624d94ca-bc5c-f960-4e83-0a609cf588be:policy_name
|
|
120
126
|
```
|
|
121
127
|
|
|
122
128
|
:param str resource_name: The name of the resource.
|
|
@@ -138,18 +144,19 @@ class AclRolePolicyAttachment(pulumi.CustomResource):
|
|
|
138
144
|
import pulumi_consul as consul
|
|
139
145
|
|
|
140
146
|
my_role = consul.get_acl_role(name="my_role")
|
|
141
|
-
read_policy = consul.AclPolicy("
|
|
147
|
+
read_policy = consul.AclPolicy("read_policy",
|
|
148
|
+
name="read-policy",
|
|
142
149
|
rules="node \\"\\" { policy = \\"read\\" }",
|
|
143
150
|
datacenters=["dc1"])
|
|
144
|
-
my_role_read_policy = consul.AclRolePolicyAttachment("
|
|
145
|
-
role_id=
|
|
151
|
+
my_role_read_policy = consul.AclRolePolicyAttachment("my_role_read_policy",
|
|
152
|
+
role_id=test["id"],
|
|
146
153
|
policy=read_policy.name)
|
|
147
154
|
```
|
|
148
155
|
|
|
149
156
|
## Import
|
|
150
157
|
|
|
151
158
|
```sh
|
|
152
|
-
|
|
159
|
+
$ pulumi import consul:index/aclRolePolicyAttachment:AclRolePolicyAttachment my_role_read_policy 624d94ca-bc5c-f960-4e83-0a609cf588be:policy_name
|
|
153
160
|
```
|
|
154
161
|
|
|
155
162
|
:param str resource_name: The name of the resource.
|