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.

Files changed (71) hide show
  1. pulumi_consul/__init__.py +10 -0
  2. pulumi_consul/_inputs.py +1592 -31
  3. pulumi_consul/_utilities.py +41 -5
  4. pulumi_consul/acl_auth_method.py +17 -22
  5. pulumi_consul/acl_binding_rule.py +12 -9
  6. pulumi_consul/acl_policy.py +7 -6
  7. pulumi_consul/acl_role.py +37 -32
  8. pulumi_consul/acl_role_policy_attachment.py +13 -10
  9. pulumi_consul/acl_token.py +34 -29
  10. pulumi_consul/acl_token_policy_attachment.py +5 -0
  11. pulumi_consul/acl_token_role_attachment.py +5 -0
  12. pulumi_consul/admin_partition.py +11 -6
  13. pulumi_consul/agent_service.py +7 -4
  14. pulumi_consul/autopilot_config.py +5 -4
  15. pulumi_consul/catalog_entry.py +16 -66
  16. pulumi_consul/certificate_authority.py +8 -49
  17. pulumi_consul/config/__init__.pyi +5 -0
  18. pulumi_consul/config/outputs.py +5 -0
  19. pulumi_consul/config/vars.py +5 -0
  20. pulumi_consul/config_entry.py +57 -46
  21. pulumi_consul/config_entry_service_defaults.py +54 -49
  22. pulumi_consul/config_entry_service_intentions.py +80 -75
  23. pulumi_consul/config_entry_service_resolver.py +94 -91
  24. pulumi_consul/config_entry_service_router.py +31 -66
  25. pulumi_consul/config_entry_service_splitter.py +102 -95
  26. pulumi_consul/config_entry_v2_exported_services.py +479 -0
  27. pulumi_consul/get_acl_auth_method.py +26 -12
  28. pulumi_consul/get_acl_policy.py +20 -9
  29. pulumi_consul/get_acl_role.py +24 -9
  30. pulumi_consul/get_acl_token.py +25 -9
  31. pulumi_consul/get_acl_token_secret_id.py +29 -15
  32. pulumi_consul/get_agent_config.py +17 -9
  33. pulumi_consul/get_agent_self.py +82 -5
  34. pulumi_consul/get_autopilot_health.py +16 -9
  35. pulumi_consul/get_catalog_nodes.py +21 -9
  36. pulumi_consul/get_catalog_service.py +56 -13
  37. pulumi_consul/get_catalog_services.py +53 -9
  38. pulumi_consul/get_config_entry.py +20 -5
  39. pulumi_consul/get_config_entry_v2_exported_services.py +232 -0
  40. pulumi_consul/get_datacenters.py +12 -5
  41. pulumi_consul/get_key_prefix.py +55 -46
  42. pulumi_consul/get_keys.py +44 -34
  43. pulumi_consul/get_network_area_members.py +26 -20
  44. pulumi_consul/get_network_segments.py +22 -18
  45. pulumi_consul/get_nodes.py +21 -9
  46. pulumi_consul/get_peering.py +22 -9
  47. pulumi_consul/get_peerings.py +14 -9
  48. pulumi_consul/get_service.py +56 -13
  49. pulumi_consul/get_service_health.py +28 -5
  50. pulumi_consul/get_services.py +53 -9
  51. pulumi_consul/intention.py +15 -18
  52. pulumi_consul/key_prefix.py +42 -50
  53. pulumi_consul/keys.py +26 -34
  54. pulumi_consul/license.py +9 -6
  55. pulumi_consul/namespace.py +7 -4
  56. pulumi_consul/namespace_policy_attachment.py +5 -0
  57. pulumi_consul/namespace_role_attachment.py +5 -0
  58. pulumi_consul/network_area.py +11 -19
  59. pulumi_consul/node.py +17 -21
  60. pulumi_consul/outputs.py +30 -27
  61. pulumi_consul/peering.py +13 -22
  62. pulumi_consul/peering_token.py +55 -15
  63. pulumi_consul/prepared_query.py +99 -103
  64. pulumi_consul/provider.py +11 -6
  65. pulumi_consul/pulumi-plugin.json +2 -1
  66. pulumi_consul/service.py +90 -29
  67. {pulumi_consul-3.12.0a1710156214.dist-info → pulumi_consul-3.13.0a1736832526.dist-info}/METADATA +7 -6
  68. pulumi_consul-3.13.0a1736832526.dist-info/RECORD +72 -0
  69. {pulumi_consul-3.12.0a1710156214.dist-info → pulumi_consul-3.13.0a1736832526.dist-info}/WHEEL +1 -1
  70. pulumi_consul-3.12.0a1710156214.dist-info/RECORD +0 -70
  71. {pulumi_consul-3.12.0a1710156214.dist-info → pulumi_consul-3.13.0a1736832526.dist-info}/top_level.txt +0 -0
@@ -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 *
@@ -34,9 +39,9 @@ class ConfigEntryServiceResolverArgs:
34
39
  :param pulumi.Input[Sequence[pulumi.Input['ConfigEntryServiceResolverFailoverArgs']]] failovers: Specifies controls for rerouting traffic to an alternate pool of service instances if the target service fails.
35
40
  :param pulumi.Input[Sequence[pulumi.Input['ConfigEntryServiceResolverLoadBalancerArgs']]] load_balancers: Specifies the load balancing policy and configuration for services issuing requests to this upstream.
36
41
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] meta: Specifies key-value pairs to add to the KV store.
37
- :param pulumi.Input[str] name: Name of subset.
38
- :param pulumi.Input[str] namespace: Specifies the namespace at the failover location where the failover services are deployed.
39
- :param pulumi.Input[str] partition: Specifies the admin partition within the same datacenter to use for the failover target. If empty, the default partition is used.
42
+ :param pulumi.Input[str] name: Specifies a name for the configuration entry.
43
+ :param pulumi.Input[str] namespace: Specifies the namespace that the service resolver applies to.
44
+ :param pulumi.Input[str] partition: Specifies the admin partition that the service resolver applies to.
40
45
  :param pulumi.Input[Sequence[pulumi.Input['ConfigEntryServiceResolverRedirectArgs']]] redirects: Specifies redirect instructions for local service traffic so that services deployed to a different network location resolve the upstream request instead.
41
46
  :param pulumi.Input[str] request_timeout: Specifies the timeout duration for receiving an HTTP response from this service.
42
47
  :param pulumi.Input[Sequence[pulumi.Input['ConfigEntryServiceResolverSubsetArgs']]] subsets: Specifies names for custom service subsets and the conditions under which service instances belong to each subset.
@@ -128,7 +133,7 @@ class ConfigEntryServiceResolverArgs:
128
133
  @pulumi.getter
129
134
  def name(self) -> Optional[pulumi.Input[str]]:
130
135
  """
131
- Name of subset.
136
+ Specifies a name for the configuration entry.
132
137
  """
133
138
  return pulumi.get(self, "name")
134
139
 
@@ -140,7 +145,7 @@ class ConfigEntryServiceResolverArgs:
140
145
  @pulumi.getter
141
146
  def namespace(self) -> Optional[pulumi.Input[str]]:
142
147
  """
143
- Specifies the namespace at the failover location where the failover services are deployed.
148
+ Specifies the namespace that the service resolver applies to.
144
149
  """
145
150
  return pulumi.get(self, "namespace")
146
151
 
@@ -152,7 +157,7 @@ class ConfigEntryServiceResolverArgs:
152
157
  @pulumi.getter
153
158
  def partition(self) -> Optional[pulumi.Input[str]]:
154
159
  """
155
- Specifies the admin partition within the same datacenter to use for the failover target. If empty, the default partition is used.
160
+ Specifies the admin partition that the service resolver applies to.
156
161
  """
157
162
  return pulumi.get(self, "partition")
158
163
 
@@ -218,9 +223,9 @@ class _ConfigEntryServiceResolverState:
218
223
  :param pulumi.Input[Sequence[pulumi.Input['ConfigEntryServiceResolverFailoverArgs']]] failovers: Specifies controls for rerouting traffic to an alternate pool of service instances if the target service fails.
219
224
  :param pulumi.Input[Sequence[pulumi.Input['ConfigEntryServiceResolverLoadBalancerArgs']]] load_balancers: Specifies the load balancing policy and configuration for services issuing requests to this upstream.
220
225
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] meta: Specifies key-value pairs to add to the KV store.
221
- :param pulumi.Input[str] name: Name of subset.
222
- :param pulumi.Input[str] namespace: Specifies the namespace at the failover location where the failover services are deployed.
223
- :param pulumi.Input[str] partition: Specifies the admin partition within the same datacenter to use for the failover target. If empty, the default partition is used.
226
+ :param pulumi.Input[str] name: Specifies a name for the configuration entry.
227
+ :param pulumi.Input[str] namespace: Specifies the namespace that the service resolver applies to.
228
+ :param pulumi.Input[str] partition: Specifies the admin partition that the service resolver applies to.
224
229
  :param pulumi.Input[Sequence[pulumi.Input['ConfigEntryServiceResolverRedirectArgs']]] redirects: Specifies redirect instructions for local service traffic so that services deployed to a different network location resolve the upstream request instead.
225
230
  :param pulumi.Input[str] request_timeout: Specifies the timeout duration for receiving an HTTP response from this service.
226
231
  :param pulumi.Input[Sequence[pulumi.Input['ConfigEntryServiceResolverSubsetArgs']]] subsets: Specifies names for custom service subsets and the conditions under which service instances belong to each subset.
@@ -312,7 +317,7 @@ class _ConfigEntryServiceResolverState:
312
317
  @pulumi.getter
313
318
  def name(self) -> Optional[pulumi.Input[str]]:
314
319
  """
315
- Name of subset.
320
+ Specifies a name for the configuration entry.
316
321
  """
317
322
  return pulumi.get(self, "name")
318
323
 
@@ -324,7 +329,7 @@ class _ConfigEntryServiceResolverState:
324
329
  @pulumi.getter
325
330
  def namespace(self) -> Optional[pulumi.Input[str]]:
326
331
  """
327
- Specifies the namespace at the failover location where the failover services are deployed.
332
+ Specifies the namespace that the service resolver applies to.
328
333
  """
329
334
  return pulumi.get(self, "namespace")
330
335
 
@@ -336,7 +341,7 @@ class _ConfigEntryServiceResolverState:
336
341
  @pulumi.getter
337
342
  def partition(self) -> Optional[pulumi.Input[str]]:
338
343
  """
339
- Specifies the admin partition within the same datacenter to use for the failover target. If empty, the default partition is used.
344
+ Specifies the admin partition that the service resolver applies to.
340
345
  """
341
346
  return pulumi.get(self, "partition")
342
347
 
@@ -388,70 +393,69 @@ class ConfigEntryServiceResolver(pulumi.CustomResource):
388
393
  opts: Optional[pulumi.ResourceOptions] = None,
389
394
  connect_timeout: Optional[pulumi.Input[str]] = None,
390
395
  default_subset: Optional[pulumi.Input[str]] = None,
391
- failovers: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverFailoverArgs']]]]] = None,
392
- load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverLoadBalancerArgs']]]]] = None,
396
+ failovers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverFailoverArgs', 'ConfigEntryServiceResolverFailoverArgsDict']]]]] = None,
397
+ load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverLoadBalancerArgs', 'ConfigEntryServiceResolverLoadBalancerArgsDict']]]]] = None,
393
398
  meta: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
394
399
  name: Optional[pulumi.Input[str]] = None,
395
400
  namespace: Optional[pulumi.Input[str]] = None,
396
401
  partition: Optional[pulumi.Input[str]] = None,
397
- redirects: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverRedirectArgs']]]]] = None,
402
+ redirects: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverRedirectArgs', 'ConfigEntryServiceResolverRedirectArgsDict']]]]] = None,
398
403
  request_timeout: Optional[pulumi.Input[str]] = None,
399
- subsets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverSubsetArgs']]]]] = None,
404
+ subsets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverSubsetArgs', 'ConfigEntryServiceResolverSubsetArgsDict']]]]] = None,
400
405
  __props__=None):
401
406
  """
402
407
  ## Example Usage
403
408
 
404
- <!--Start PulumiCodeChooser -->
405
409
  ```python
406
410
  import pulumi
407
411
  import pulumi_consul as consul
408
412
 
409
413
  web = consul.ConfigEntryServiceResolver("web",
410
- connect_timeout="15s",
414
+ name="web",
411
415
  default_subset="v1",
416
+ connect_timeout="15s",
417
+ subsets=[
418
+ {
419
+ "name": "v1",
420
+ "filter": "Service.Meta.version == v1",
421
+ },
422
+ {
423
+ "name": "v2",
424
+ "filter": "Service.Meta.version == v2",
425
+ },
426
+ ],
427
+ redirects=[{
428
+ "service": "web",
429
+ "datacenter": "dc2",
430
+ }],
412
431
  failovers=[
413
- consul.ConfigEntryServiceResolverFailoverArgs(
414
- datacenters=["dc2"],
415
- subset_name="v2",
416
- ),
417
- consul.ConfigEntryServiceResolverFailoverArgs(
418
- datacenters=[
432
+ {
433
+ "subset_name": "v2",
434
+ "datacenters": ["dc2"],
435
+ },
436
+ {
437
+ "subset_name": "*",
438
+ "datacenters": [
419
439
  "dc3",
420
440
  "dc4",
421
441
  ],
422
- subset_name="*",
423
- ),
424
- ],
425
- redirects=[consul.ConfigEntryServiceResolverRedirectArgs(
426
- datacenter="dc2",
427
- service="web",
428
- )],
429
- subsets=[
430
- consul.ConfigEntryServiceResolverSubsetArgs(
431
- filter="Service.Meta.version == v1",
432
- name="v1",
433
- ),
434
- consul.ConfigEntryServiceResolverSubsetArgs(
435
- filter="Service.Meta.version == v2",
436
- name="v2",
437
- ),
442
+ },
438
443
  ])
439
444
  ```
440
- <!--End PulumiCodeChooser -->
441
445
 
442
446
  :param str resource_name: The name of the resource.
443
447
  :param pulumi.ResourceOptions opts: Options for the resource.
444
448
  :param pulumi.Input[str] connect_timeout: Specifies the timeout duration for establishing new network connections to this service.
445
449
  :param pulumi.Input[str] default_subset: Specifies a defined subset of service instances to use when no explicit subset is requested. If this parameter is not specified, Consul uses the unnamed default subset.
446
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverFailoverArgs']]]] failovers: Specifies controls for rerouting traffic to an alternate pool of service instances if the target service fails.
447
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverLoadBalancerArgs']]]] load_balancers: Specifies the load balancing policy and configuration for services issuing requests to this upstream.
450
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverFailoverArgs', 'ConfigEntryServiceResolverFailoverArgsDict']]]] failovers: Specifies controls for rerouting traffic to an alternate pool of service instances if the target service fails.
451
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverLoadBalancerArgs', 'ConfigEntryServiceResolverLoadBalancerArgsDict']]]] load_balancers: Specifies the load balancing policy and configuration for services issuing requests to this upstream.
448
452
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] meta: Specifies key-value pairs to add to the KV store.
449
- :param pulumi.Input[str] name: Name of subset.
450
- :param pulumi.Input[str] namespace: Specifies the namespace at the failover location where the failover services are deployed.
451
- :param pulumi.Input[str] partition: Specifies the admin partition within the same datacenter to use for the failover target. If empty, the default partition is used.
452
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverRedirectArgs']]]] redirects: Specifies redirect instructions for local service traffic so that services deployed to a different network location resolve the upstream request instead.
453
+ :param pulumi.Input[str] name: Specifies a name for the configuration entry.
454
+ :param pulumi.Input[str] namespace: Specifies the namespace that the service resolver applies to.
455
+ :param pulumi.Input[str] partition: Specifies the admin partition that the service resolver applies to.
456
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverRedirectArgs', 'ConfigEntryServiceResolverRedirectArgsDict']]]] redirects: Specifies redirect instructions for local service traffic so that services deployed to a different network location resolve the upstream request instead.
453
457
  :param pulumi.Input[str] request_timeout: Specifies the timeout duration for receiving an HTTP response from this service.
454
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverSubsetArgs']]]] subsets: Specifies names for custom service subsets and the conditions under which service instances belong to each subset.
458
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverSubsetArgs', 'ConfigEntryServiceResolverSubsetArgsDict']]]] subsets: Specifies names for custom service subsets and the conditions under which service instances belong to each subset.
455
459
  """
456
460
  ...
457
461
  @overload
@@ -462,43 +466,42 @@ class ConfigEntryServiceResolver(pulumi.CustomResource):
462
466
  """
463
467
  ## Example Usage
464
468
 
465
- <!--Start PulumiCodeChooser -->
466
469
  ```python
467
470
  import pulumi
468
471
  import pulumi_consul as consul
469
472
 
470
473
  web = consul.ConfigEntryServiceResolver("web",
471
- connect_timeout="15s",
474
+ name="web",
472
475
  default_subset="v1",
476
+ connect_timeout="15s",
477
+ subsets=[
478
+ {
479
+ "name": "v1",
480
+ "filter": "Service.Meta.version == v1",
481
+ },
482
+ {
483
+ "name": "v2",
484
+ "filter": "Service.Meta.version == v2",
485
+ },
486
+ ],
487
+ redirects=[{
488
+ "service": "web",
489
+ "datacenter": "dc2",
490
+ }],
473
491
  failovers=[
474
- consul.ConfigEntryServiceResolverFailoverArgs(
475
- datacenters=["dc2"],
476
- subset_name="v2",
477
- ),
478
- consul.ConfigEntryServiceResolverFailoverArgs(
479
- datacenters=[
492
+ {
493
+ "subset_name": "v2",
494
+ "datacenters": ["dc2"],
495
+ },
496
+ {
497
+ "subset_name": "*",
498
+ "datacenters": [
480
499
  "dc3",
481
500
  "dc4",
482
501
  ],
483
- subset_name="*",
484
- ),
485
- ],
486
- redirects=[consul.ConfigEntryServiceResolverRedirectArgs(
487
- datacenter="dc2",
488
- service="web",
489
- )],
490
- subsets=[
491
- consul.ConfigEntryServiceResolverSubsetArgs(
492
- filter="Service.Meta.version == v1",
493
- name="v1",
494
- ),
495
- consul.ConfigEntryServiceResolverSubsetArgs(
496
- filter="Service.Meta.version == v2",
497
- name="v2",
498
- ),
502
+ },
499
503
  ])
500
504
  ```
501
- <!--End PulumiCodeChooser -->
502
505
 
503
506
  :param str resource_name: The name of the resource.
504
507
  :param ConfigEntryServiceResolverArgs args: The arguments to use to populate this resource's properties.
@@ -517,15 +520,15 @@ class ConfigEntryServiceResolver(pulumi.CustomResource):
517
520
  opts: Optional[pulumi.ResourceOptions] = None,
518
521
  connect_timeout: Optional[pulumi.Input[str]] = None,
519
522
  default_subset: Optional[pulumi.Input[str]] = None,
520
- failovers: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverFailoverArgs']]]]] = None,
521
- load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverLoadBalancerArgs']]]]] = None,
523
+ failovers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverFailoverArgs', 'ConfigEntryServiceResolverFailoverArgsDict']]]]] = None,
524
+ load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverLoadBalancerArgs', 'ConfigEntryServiceResolverLoadBalancerArgsDict']]]]] = None,
522
525
  meta: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
523
526
  name: Optional[pulumi.Input[str]] = None,
524
527
  namespace: Optional[pulumi.Input[str]] = None,
525
528
  partition: Optional[pulumi.Input[str]] = None,
526
- redirects: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverRedirectArgs']]]]] = None,
529
+ redirects: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverRedirectArgs', 'ConfigEntryServiceResolverRedirectArgsDict']]]]] = None,
527
530
  request_timeout: Optional[pulumi.Input[str]] = None,
528
- subsets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverSubsetArgs']]]]] = None,
531
+ subsets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverSubsetArgs', 'ConfigEntryServiceResolverSubsetArgsDict']]]]] = None,
529
532
  __props__=None):
530
533
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
531
534
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -558,15 +561,15 @@ class ConfigEntryServiceResolver(pulumi.CustomResource):
558
561
  opts: Optional[pulumi.ResourceOptions] = None,
559
562
  connect_timeout: Optional[pulumi.Input[str]] = None,
560
563
  default_subset: Optional[pulumi.Input[str]] = None,
561
- failovers: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverFailoverArgs']]]]] = None,
562
- load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverLoadBalancerArgs']]]]] = None,
564
+ failovers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverFailoverArgs', 'ConfigEntryServiceResolverFailoverArgsDict']]]]] = None,
565
+ load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverLoadBalancerArgs', 'ConfigEntryServiceResolverLoadBalancerArgsDict']]]]] = None,
563
566
  meta: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
564
567
  name: Optional[pulumi.Input[str]] = None,
565
568
  namespace: Optional[pulumi.Input[str]] = None,
566
569
  partition: Optional[pulumi.Input[str]] = None,
567
- redirects: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverRedirectArgs']]]]] = None,
570
+ redirects: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverRedirectArgs', 'ConfigEntryServiceResolverRedirectArgsDict']]]]] = None,
568
571
  request_timeout: Optional[pulumi.Input[str]] = None,
569
- subsets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverSubsetArgs']]]]] = None) -> 'ConfigEntryServiceResolver':
572
+ subsets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverSubsetArgs', 'ConfigEntryServiceResolverSubsetArgsDict']]]]] = None) -> 'ConfigEntryServiceResolver':
570
573
  """
571
574
  Get an existing ConfigEntryServiceResolver resource's state with the given name, id, and optional extra
572
575
  properties used to qualify the lookup.
@@ -576,15 +579,15 @@ class ConfigEntryServiceResolver(pulumi.CustomResource):
576
579
  :param pulumi.ResourceOptions opts: Options for the resource.
577
580
  :param pulumi.Input[str] connect_timeout: Specifies the timeout duration for establishing new network connections to this service.
578
581
  :param pulumi.Input[str] default_subset: Specifies a defined subset of service instances to use when no explicit subset is requested. If this parameter is not specified, Consul uses the unnamed default subset.
579
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverFailoverArgs']]]] failovers: Specifies controls for rerouting traffic to an alternate pool of service instances if the target service fails.
580
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverLoadBalancerArgs']]]] load_balancers: Specifies the load balancing policy and configuration for services issuing requests to this upstream.
582
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverFailoverArgs', 'ConfigEntryServiceResolverFailoverArgsDict']]]] failovers: Specifies controls for rerouting traffic to an alternate pool of service instances if the target service fails.
583
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverLoadBalancerArgs', 'ConfigEntryServiceResolverLoadBalancerArgsDict']]]] load_balancers: Specifies the load balancing policy and configuration for services issuing requests to this upstream.
581
584
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] meta: Specifies key-value pairs to add to the KV store.
582
- :param pulumi.Input[str] name: Name of subset.
583
- :param pulumi.Input[str] namespace: Specifies the namespace at the failover location where the failover services are deployed.
584
- :param pulumi.Input[str] partition: Specifies the admin partition within the same datacenter to use for the failover target. If empty, the default partition is used.
585
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverRedirectArgs']]]] redirects: Specifies redirect instructions for local service traffic so that services deployed to a different network location resolve the upstream request instead.
585
+ :param pulumi.Input[str] name: Specifies a name for the configuration entry.
586
+ :param pulumi.Input[str] namespace: Specifies the namespace that the service resolver applies to.
587
+ :param pulumi.Input[str] partition: Specifies the admin partition that the service resolver applies to.
588
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverRedirectArgs', 'ConfigEntryServiceResolverRedirectArgsDict']]]] redirects: Specifies redirect instructions for local service traffic so that services deployed to a different network location resolve the upstream request instead.
586
589
  :param pulumi.Input[str] request_timeout: Specifies the timeout duration for receiving an HTTP response from this service.
587
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceResolverSubsetArgs']]]] subsets: Specifies names for custom service subsets and the conditions under which service instances belong to each subset.
590
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceResolverSubsetArgs', 'ConfigEntryServiceResolverSubsetArgsDict']]]] subsets: Specifies names for custom service subsets and the conditions under which service instances belong to each subset.
588
591
  """
589
592
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
590
593
 
@@ -647,7 +650,7 @@ class ConfigEntryServiceResolver(pulumi.CustomResource):
647
650
  @pulumi.getter
648
651
  def name(self) -> pulumi.Output[str]:
649
652
  """
650
- Name of subset.
653
+ Specifies a name for the configuration entry.
651
654
  """
652
655
  return pulumi.get(self, "name")
653
656
 
@@ -655,7 +658,7 @@ class ConfigEntryServiceResolver(pulumi.CustomResource):
655
658
  @pulumi.getter
656
659
  def namespace(self) -> pulumi.Output[Optional[str]]:
657
660
  """
658
- Specifies the namespace at the failover location where the failover services are deployed.
661
+ Specifies the namespace that the service resolver applies to.
659
662
  """
660
663
  return pulumi.get(self, "namespace")
661
664
 
@@ -663,7 +666,7 @@ class ConfigEntryServiceResolver(pulumi.CustomResource):
663
666
  @pulumi.getter
664
667
  def partition(self) -> pulumi.Output[Optional[str]]:
665
668
  """
666
- Specifies the admin partition within the same datacenter to use for the failover target. If empty, the default partition is used.
669
+ Specifies the admin partition that the service resolver applies to.
667
670
  """
668
671
  return pulumi.get(self, "partition")
669
672
 
@@ -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 *
@@ -24,9 +29,9 @@ class ConfigEntryServiceRouterArgs:
24
29
  """
25
30
  The set of arguments for constructing a ConfigEntryServiceRouter resource.
26
31
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] meta: Specifies key-value pairs to add to the KV store.
27
- :param pulumi.Input[str] name: Specifies the name of the HTTP header to match.
28
- :param pulumi.Input[str] namespace: Specifies the Consul namespace to resolve the service from instead of the current namespace.
29
- :param pulumi.Input[str] partition: Specifies the Consul admin partition to resolve the service from instead of the current partition.
32
+ :param pulumi.Input[str] name: Specifies a name for the configuration entry.
33
+ :param pulumi.Input[str] namespace: Specifies the namespace to apply the configuration entry.
34
+ :param pulumi.Input[str] partition: Specifies the admin partition to apply the configuration entry.
30
35
  :param pulumi.Input[Sequence[pulumi.Input['ConfigEntryServiceRouterRouteArgs']]] routes: Defines the possible routes for L7 requests.
31
36
  """
32
37
  if meta is not None:
@@ -56,7 +61,7 @@ class ConfigEntryServiceRouterArgs:
56
61
  @pulumi.getter
57
62
  def name(self) -> Optional[pulumi.Input[str]]:
58
63
  """
59
- Specifies the name of the HTTP header to match.
64
+ Specifies a name for the configuration entry.
60
65
  """
61
66
  return pulumi.get(self, "name")
62
67
 
@@ -68,7 +73,7 @@ class ConfigEntryServiceRouterArgs:
68
73
  @pulumi.getter
69
74
  def namespace(self) -> Optional[pulumi.Input[str]]:
70
75
  """
71
- Specifies the Consul namespace to resolve the service from instead of the current namespace.
76
+ Specifies the namespace to apply the configuration entry.
72
77
  """
73
78
  return pulumi.get(self, "namespace")
74
79
 
@@ -80,7 +85,7 @@ class ConfigEntryServiceRouterArgs:
80
85
  @pulumi.getter
81
86
  def partition(self) -> Optional[pulumi.Input[str]]:
82
87
  """
83
- Specifies the Consul admin partition to resolve the service from instead of the current partition.
88
+ Specifies the admin partition to apply the configuration entry.
84
89
  """
85
90
  return pulumi.get(self, "partition")
86
91
 
@@ -112,9 +117,9 @@ class _ConfigEntryServiceRouterState:
112
117
  """
113
118
  Input properties used for looking up and filtering ConfigEntryServiceRouter resources.
114
119
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] meta: Specifies key-value pairs to add to the KV store.
115
- :param pulumi.Input[str] name: Specifies the name of the HTTP header to match.
116
- :param pulumi.Input[str] namespace: Specifies the Consul namespace to resolve the service from instead of the current namespace.
117
- :param pulumi.Input[str] partition: Specifies the Consul admin partition to resolve the service from instead of the current partition.
120
+ :param pulumi.Input[str] name: Specifies a name for the configuration entry.
121
+ :param pulumi.Input[str] namespace: Specifies the namespace to apply the configuration entry.
122
+ :param pulumi.Input[str] partition: Specifies the admin partition to apply the configuration entry.
118
123
  :param pulumi.Input[Sequence[pulumi.Input['ConfigEntryServiceRouterRouteArgs']]] routes: Defines the possible routes for L7 requests.
119
124
  """
120
125
  if meta is not None:
@@ -144,7 +149,7 @@ class _ConfigEntryServiceRouterState:
144
149
  @pulumi.getter
145
150
  def name(self) -> Optional[pulumi.Input[str]]:
146
151
  """
147
- Specifies the name of the HTTP header to match.
152
+ Specifies a name for the configuration entry.
148
153
  """
149
154
  return pulumi.get(self, "name")
150
155
 
@@ -156,7 +161,7 @@ class _ConfigEntryServiceRouterState:
156
161
  @pulumi.getter
157
162
  def namespace(self) -> Optional[pulumi.Input[str]]:
158
163
  """
159
- Specifies the Consul namespace to resolve the service from instead of the current namespace.
164
+ Specifies the namespace to apply the configuration entry.
160
165
  """
161
166
  return pulumi.get(self, "namespace")
162
167
 
@@ -168,7 +173,7 @@ class _ConfigEntryServiceRouterState:
168
173
  @pulumi.getter
169
174
  def partition(self) -> Optional[pulumi.Input[str]]:
170
175
  """
171
- Specifies the Consul admin partition to resolve the service from instead of the current partition.
176
+ Specifies the admin partition to apply the configuration entry.
172
177
  """
173
178
  return pulumi.get(self, "partition")
174
179
 
@@ -198,38 +203,18 @@ class ConfigEntryServiceRouter(pulumi.CustomResource):
198
203
  name: Optional[pulumi.Input[str]] = None,
199
204
  namespace: Optional[pulumi.Input[str]] = None,
200
205
  partition: Optional[pulumi.Input[str]] = None,
201
- routes: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceRouterRouteArgs']]]]] = None,
206
+ routes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceRouterRouteArgs', 'ConfigEntryServiceRouterRouteArgsDict']]]]] = None,
202
207
  __props__=None):
203
208
  """
204
209
  ## Example Usage
205
210
 
206
- <!--Start PulumiCodeChooser -->
207
- ```python
208
- import pulumi
209
- import pulumi_consul as consul
210
-
211
- admin_service_defaults_config_entry_service_defaults = consul.ConfigEntryServiceDefaults("adminServiceDefaultsConfigEntryServiceDefaults", protocol="http")
212
- admin_service_defaults_index_config_entry_service_defaults_config_entry_service_defaults = consul.ConfigEntryServiceDefaults("adminServiceDefaultsIndex/configEntryServiceDefaultsConfigEntryServiceDefaults", protocol="http")
213
- foo = consul.ConfigEntryServiceRouter("foo", routes=[consul.ConfigEntryServiceRouterRouteArgs(
214
- match=consul.ConfigEntryServiceRouterRouteMatchArgs(
215
- http=consul.ConfigEntryServiceRouterRouteMatchHttpArgs(
216
- path_prefix="/admin",
217
- ),
218
- ),
219
- destination=consul.ConfigEntryServiceRouterRouteDestinationArgs(
220
- service=consul_config_entry["admin_service"]["name"],
221
- ),
222
- )])
223
- ```
224
- <!--End PulumiCodeChooser -->
225
-
226
211
  :param str resource_name: The name of the resource.
227
212
  :param pulumi.ResourceOptions opts: Options for the resource.
228
213
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] meta: Specifies key-value pairs to add to the KV store.
229
- :param pulumi.Input[str] name: Specifies the name of the HTTP header to match.
230
- :param pulumi.Input[str] namespace: Specifies the Consul namespace to resolve the service from instead of the current namespace.
231
- :param pulumi.Input[str] partition: Specifies the Consul admin partition to resolve the service from instead of the current partition.
232
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceRouterRouteArgs']]]] routes: Defines the possible routes for L7 requests.
214
+ :param pulumi.Input[str] name: Specifies a name for the configuration entry.
215
+ :param pulumi.Input[str] namespace: Specifies the namespace to apply the configuration entry.
216
+ :param pulumi.Input[str] partition: Specifies the admin partition to apply the configuration entry.
217
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceRouterRouteArgs', 'ConfigEntryServiceRouterRouteArgsDict']]]] routes: Defines the possible routes for L7 requests.
233
218
  """
234
219
  ...
235
220
  @overload
@@ -240,26 +225,6 @@ class ConfigEntryServiceRouter(pulumi.CustomResource):
240
225
  """
241
226
  ## Example Usage
242
227
 
243
- <!--Start PulumiCodeChooser -->
244
- ```python
245
- import pulumi
246
- import pulumi_consul as consul
247
-
248
- admin_service_defaults_config_entry_service_defaults = consul.ConfigEntryServiceDefaults("adminServiceDefaultsConfigEntryServiceDefaults", protocol="http")
249
- admin_service_defaults_index_config_entry_service_defaults_config_entry_service_defaults = consul.ConfigEntryServiceDefaults("adminServiceDefaultsIndex/configEntryServiceDefaultsConfigEntryServiceDefaults", protocol="http")
250
- foo = consul.ConfigEntryServiceRouter("foo", routes=[consul.ConfigEntryServiceRouterRouteArgs(
251
- match=consul.ConfigEntryServiceRouterRouteMatchArgs(
252
- http=consul.ConfigEntryServiceRouterRouteMatchHttpArgs(
253
- path_prefix="/admin",
254
- ),
255
- ),
256
- destination=consul.ConfigEntryServiceRouterRouteDestinationArgs(
257
- service=consul_config_entry["admin_service"]["name"],
258
- ),
259
- )])
260
- ```
261
- <!--End PulumiCodeChooser -->
262
-
263
228
  :param str resource_name: The name of the resource.
264
229
  :param ConfigEntryServiceRouterArgs args: The arguments to use to populate this resource's properties.
265
230
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -279,7 +244,7 @@ class ConfigEntryServiceRouter(pulumi.CustomResource):
279
244
  name: Optional[pulumi.Input[str]] = None,
280
245
  namespace: Optional[pulumi.Input[str]] = None,
281
246
  partition: Optional[pulumi.Input[str]] = None,
282
- routes: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceRouterRouteArgs']]]]] = None,
247
+ routes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceRouterRouteArgs', 'ConfigEntryServiceRouterRouteArgsDict']]]]] = None,
283
248
  __props__=None):
284
249
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
285
250
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -308,7 +273,7 @@ class ConfigEntryServiceRouter(pulumi.CustomResource):
308
273
  name: Optional[pulumi.Input[str]] = None,
309
274
  namespace: Optional[pulumi.Input[str]] = None,
310
275
  partition: Optional[pulumi.Input[str]] = None,
311
- routes: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceRouterRouteArgs']]]]] = None) -> 'ConfigEntryServiceRouter':
276
+ routes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceRouterRouteArgs', 'ConfigEntryServiceRouterRouteArgsDict']]]]] = None) -> 'ConfigEntryServiceRouter':
312
277
  """
313
278
  Get an existing ConfigEntryServiceRouter resource's state with the given name, id, and optional extra
314
279
  properties used to qualify the lookup.
@@ -317,10 +282,10 @@ class ConfigEntryServiceRouter(pulumi.CustomResource):
317
282
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
318
283
  :param pulumi.ResourceOptions opts: Options for the resource.
319
284
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] meta: Specifies key-value pairs to add to the KV store.
320
- :param pulumi.Input[str] name: Specifies the name of the HTTP header to match.
321
- :param pulumi.Input[str] namespace: Specifies the Consul namespace to resolve the service from instead of the current namespace.
322
- :param pulumi.Input[str] partition: Specifies the Consul admin partition to resolve the service from instead of the current partition.
323
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConfigEntryServiceRouterRouteArgs']]]] routes: Defines the possible routes for L7 requests.
285
+ :param pulumi.Input[str] name: Specifies a name for the configuration entry.
286
+ :param pulumi.Input[str] namespace: Specifies the namespace to apply the configuration entry.
287
+ :param pulumi.Input[str] partition: Specifies the admin partition to apply the configuration entry.
288
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ConfigEntryServiceRouterRouteArgs', 'ConfigEntryServiceRouterRouteArgsDict']]]] routes: Defines the possible routes for L7 requests.
324
289
  """
325
290
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
326
291
 
@@ -345,7 +310,7 @@ class ConfigEntryServiceRouter(pulumi.CustomResource):
345
310
  @pulumi.getter
346
311
  def name(self) -> pulumi.Output[str]:
347
312
  """
348
- Specifies the name of the HTTP header to match.
313
+ Specifies a name for the configuration entry.
349
314
  """
350
315
  return pulumi.get(self, "name")
351
316
 
@@ -353,7 +318,7 @@ class ConfigEntryServiceRouter(pulumi.CustomResource):
353
318
  @pulumi.getter
354
319
  def namespace(self) -> pulumi.Output[Optional[str]]:
355
320
  """
356
- Specifies the Consul namespace to resolve the service from instead of the current namespace.
321
+ Specifies the namespace to apply the configuration entry.
357
322
  """
358
323
  return pulumi.get(self, "namespace")
359
324
 
@@ -361,7 +326,7 @@ class ConfigEntryServiceRouter(pulumi.CustomResource):
361
326
  @pulumi.getter
362
327
  def partition(self) -> pulumi.Output[Optional[str]]:
363
328
  """
364
- Specifies the Consul admin partition to resolve the service from instead of the current partition.
329
+ Specifies the admin partition to apply the configuration entry.
365
330
  """
366
331
  return pulumi.get(self, "partition")
367
332