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.

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 -14
  5. pulumi_consul/acl_binding_rule.py +12 -5
  6. pulumi_consul/acl_policy.py +9 -4
  7. pulumi_consul/acl_role.py +39 -30
  8. pulumi_consul/acl_role_policy_attachment.py +15 -8
  9. pulumi_consul/acl_token.py +36 -27
  10. pulumi_consul/acl_token_policy_attachment.py +7 -2
  11. pulumi_consul/acl_token_role_attachment.py +11 -4
  12. pulumi_consul/admin_partition.py +13 -4
  13. pulumi_consul/agent_service.py +7 -0
  14. pulumi_consul/autopilot_config.py +5 -0
  15. pulumi_consul/catalog_entry.py +16 -62
  16. pulumi_consul/certificate_authority.py +10 -51
  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 +75 -26
  21. pulumi_consul/config_entry_service_defaults.py +58 -51
  22. pulumi_consul/config_entry_service_intentions.py +80 -71
  23. pulumi_consul/config_entry_service_resolver.py +94 -87
  24. pulumi_consul/config_entry_service_router.py +31 -62
  25. pulumi_consul/config_entry_service_splitter.py +104 -93
  26. pulumi_consul/config_entry_v2_exported_services.py +479 -0
  27. pulumi_consul/get_acl_auth_method.py +26 -8
  28. pulumi_consul/get_acl_policy.py +20 -5
  29. pulumi_consul/get_acl_role.py +24 -5
  30. pulumi_consul/get_acl_token.py +25 -5
  31. pulumi_consul/get_acl_token_secret_id.py +29 -11
  32. pulumi_consul/get_agent_config.py +17 -5
  33. pulumi_consul/get_agent_self.py +82 -5
  34. pulumi_consul/get_autopilot_health.py +16 -5
  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 -38
  42. pulumi_consul/get_keys.py +44 -30
  43. pulumi_consul/get_network_area_members.py +26 -16
  44. pulumi_consul/get_network_segments.py +22 -14
  45. pulumi_consul/get_nodes.py +21 -9
  46. pulumi_consul/get_peering.py +22 -5
  47. pulumi_consul/get_peerings.py +14 -5
  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 +17 -12
  52. pulumi_consul/key_prefix.py +48 -50
  53. pulumi_consul/keys.py +26 -30
  54. pulumi_consul/license.py +9 -2
  55. pulumi_consul/namespace.py +13 -4
  56. pulumi_consul/namespace_policy_attachment.py +11 -4
  57. pulumi_consul/namespace_role_attachment.py +11 -4
  58. pulumi_consul/network_area.py +11 -15
  59. pulumi_consul/node.py +19 -19
  60. pulumi_consul/outputs.py +30 -27
  61. pulumi_consul/peering.py +13 -18
  62. pulumi_consul/peering_token.py +55 -11
  63. pulumi_consul/prepared_query.py +101 -101
  64. pulumi_consul/provider.py +11 -6
  65. pulumi_consul/pulumi-plugin.json +2 -1
  66. pulumi_consul/service.py +144 -19
  67. {pulumi_consul-3.12.0a1709360320.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.0a1709360320.dist-info → pulumi_consul-3.13.0a1736832526.dist-info}/WHEEL +1 -1
  70. pulumi_consul-3.12.0a1709360320.dist-info/RECORD +0 -70
  71. {pulumi_consul-3.12.0a1709360320.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
 
@@ -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__ = [
@@ -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
 
@@ -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__ = ['ConfigEntryArgs', 'ConfigEntry']
@@ -205,8 +210,9 @@ class ConfigEntry(pulumi.CustomResource):
205
210
  import json
206
211
  import pulumi_consul as consul
207
212
 
208
- proxy_defaults = consul.ConfigEntry("proxyDefaults",
213
+ proxy_defaults = consul.ConfigEntry("proxy_defaults",
209
214
  kind="proxy-defaults",
215
+ name="global",
210
216
  config_json=json.dumps({
211
217
  "Config": {
212
218
  "local_connect_timeout_ms": 1000,
@@ -214,17 +220,20 @@ class ConfigEntry(pulumi.CustomResource):
214
220
  },
215
221
  }))
216
222
  web = consul.ConfigEntry("web",
223
+ name="web",
217
224
  kind="service-defaults",
218
225
  config_json=json.dumps({
219
226
  "Protocol": "http",
220
227
  }))
221
228
  admin = consul.ConfigEntry("admin",
229
+ name="admin",
222
230
  kind="service-defaults",
223
231
  config_json=json.dumps({
224
232
  "Protocol": "http",
225
233
  }))
226
- service_resolver = consul.ConfigEntry("serviceResolver",
234
+ service_resolver = consul.ConfigEntry("service_resolver",
227
235
  kind="service-resolver",
236
+ name=web.name,
228
237
  config_json=json.dumps({
229
238
  "DefaultSubset": "v1",
230
239
  "Subsets": {
@@ -236,8 +245,9 @@ class ConfigEntry(pulumi.CustomResource):
236
245
  },
237
246
  },
238
247
  }))
239
- service_splitter = consul.ConfigEntry("serviceSplitter",
248
+ service_splitter = consul.ConfigEntry("service_splitter",
240
249
  kind="service-splitter",
250
+ name=service_resolver.name,
241
251
  config_json=json.dumps({
242
252
  "Splits": [
243
253
  {
@@ -250,8 +260,9 @@ class ConfigEntry(pulumi.CustomResource):
250
260
  },
251
261
  ],
252
262
  }))
253
- service_router = consul.ConfigEntry("serviceRouter",
263
+ service_router = consul.ConfigEntry("service_router",
254
264
  kind="service-router",
265
+ name="web",
255
266
  config_json=json.dumps({
256
267
  "Routes": [{
257
268
  "Match": {
@@ -264,7 +275,8 @@ class ConfigEntry(pulumi.CustomResource):
264
275
  },
265
276
  }],
266
277
  }))
267
- ingress_gateway = consul.ConfigEntry("ingressGateway",
278
+ ingress_gateway = consul.ConfigEntry("ingress_gateway",
279
+ name="us-east-ingress",
268
280
  kind="ingress-gateway",
269
281
  config_json=json.dumps({
270
282
  "TLS": {
@@ -278,7 +290,8 @@ class ConfigEntry(pulumi.CustomResource):
278
290
  }],
279
291
  }],
280
292
  }))
281
- terminating_gateway = consul.ConfigEntry("terminatingGateway",
293
+ terminating_gateway = consul.ConfigEntry("terminating_gateway",
294
+ name="us-west-gateway",
282
295
  kind="terminating-gateway",
283
296
  config_json=json.dumps({
284
297
  "Services": [{
@@ -286,6 +299,7 @@ class ConfigEntry(pulumi.CustomResource):
286
299
  }],
287
300
  }))
288
301
  ```
302
+
289
303
  ### `service-intentions` config entry
290
304
 
291
305
  ```python
@@ -293,7 +307,8 @@ class ConfigEntry(pulumi.CustomResource):
293
307
  import json
294
308
  import pulumi_consul as consul
295
309
 
296
- service_intentions = consul.ConfigEntry("serviceIntentions",
310
+ service_intentions = consul.ConfigEntry("service_intentions",
311
+ name="api-service",
297
312
  kind="service-intentions",
298
313
  config_json=json.dumps({
299
314
  "Sources": [
@@ -319,11 +334,13 @@ class ConfigEntry(pulumi.CustomResource):
319
334
  import pulumi_consul as consul
320
335
 
321
336
  sd = consul.ConfigEntry("sd",
337
+ name="fort-knox",
322
338
  kind="service-defaults",
323
339
  config_json=json.dumps({
324
340
  "Protocol": "http",
325
341
  }))
326
- jwt_provider = consul.ConfigEntry("jwtProvider",
342
+ jwt_provider = consul.ConfigEntry("jwt_provider",
343
+ name="test-provider",
327
344
  kind="jwt-provider",
328
345
  config_json=json.dumps({
329
346
  "Issuer": "test-issuer",
@@ -337,7 +354,8 @@ class ConfigEntry(pulumi.CustomResource):
337
354
  "HeaderName": "test-token",
338
355
  },
339
356
  }))
340
- service_intentions = consul.ConfigEntry("serviceIntentions",
357
+ service_intentions = consul.ConfigEntry("service_intentions",
358
+ name=sd.name,
341
359
  kind="service-intentions",
342
360
  config_json=pulumi.Output.json_dumps({
343
361
  "Sources": [
@@ -383,6 +401,7 @@ class ConfigEntry(pulumi.CustomResource):
383
401
  ],
384
402
  }))
385
403
  ```
404
+
386
405
  ### `exported-services` config entry
387
406
 
388
407
  ```python
@@ -390,7 +409,8 @@ class ConfigEntry(pulumi.CustomResource):
390
409
  import json
391
410
  import pulumi_consul as consul
392
411
 
393
- exported_services = consul.ConfigEntry("exportedServices",
412
+ exported_services = consul.ConfigEntry("exported_services",
413
+ name="test",
394
414
  kind="exported-services",
395
415
  config_json=json.dumps({
396
416
  "Services": [{
@@ -402,6 +422,7 @@ class ConfigEntry(pulumi.CustomResource):
402
422
  }],
403
423
  }))
404
424
  ```
425
+
405
426
  ### `mesh` config entry
406
427
 
407
428
  ```python
@@ -410,6 +431,7 @@ class ConfigEntry(pulumi.CustomResource):
410
431
  import pulumi_consul as consul
411
432
 
412
433
  mesh = consul.ConfigEntry("mesh",
434
+ name="mesh",
413
435
  kind="mesh",
414
436
  partition="default",
415
437
  config_json=json.dumps({
@@ -418,6 +440,7 @@ class ConfigEntry(pulumi.CustomResource):
418
440
  },
419
441
  }))
420
442
  ```
443
+
421
444
  ### `jwt-provider` config entry
422
445
 
423
446
  ```python
@@ -425,7 +448,8 @@ class ConfigEntry(pulumi.CustomResource):
425
448
  import json
426
449
  import pulumi_consul as consul
427
450
 
428
- jwt_provider = consul.ConfigEntry("jwtProvider",
451
+ jwt_provider = consul.ConfigEntry("jwt_provider",
452
+ name="provider-name",
429
453
  kind="jwt-provider",
430
454
  config_json=json.dumps({
431
455
  "Issuer": "https://your.issuer.com",
@@ -444,10 +468,13 @@ class ConfigEntry(pulumi.CustomResource):
444
468
 
445
469
  ## Import
446
470
 
447
- `consul_config_entry` can be imported using the syntax `<kind>/<name>` if the config entry is in the default partition and default namespace, or `<partition>/<namespace>/<kind>/<name>` for config entries in a non-default partition or namespace:
471
+ `consul_config_entry` can be imported using the syntax `<kind>/<name>` if the
472
+ config entry is in the default partition and default namespace, or
473
+ `<partition>/<namespace>/<kind>/<name>` for config entries in a non-default
474
+ partition or namespace:
448
475
 
449
476
  ```sh
450
- $ pulumi import consul:index/configEntry:ConfigEntry service_splitter 816a195f-6cb1-2e8d-92af-3011ae706318
477
+ $ pulumi import consul:index/configEntry:ConfigEntry service_splitter 816a195f-6cb1-2e8d-92af-3011ae706318
451
478
  ```
452
479
 
453
480
  :param str resource_name: The name of the resource.
@@ -472,8 +499,9 @@ class ConfigEntry(pulumi.CustomResource):
472
499
  import json
473
500
  import pulumi_consul as consul
474
501
 
475
- proxy_defaults = consul.ConfigEntry("proxyDefaults",
502
+ proxy_defaults = consul.ConfigEntry("proxy_defaults",
476
503
  kind="proxy-defaults",
504
+ name="global",
477
505
  config_json=json.dumps({
478
506
  "Config": {
479
507
  "local_connect_timeout_ms": 1000,
@@ -481,17 +509,20 @@ class ConfigEntry(pulumi.CustomResource):
481
509
  },
482
510
  }))
483
511
  web = consul.ConfigEntry("web",
512
+ name="web",
484
513
  kind="service-defaults",
485
514
  config_json=json.dumps({
486
515
  "Protocol": "http",
487
516
  }))
488
517
  admin = consul.ConfigEntry("admin",
518
+ name="admin",
489
519
  kind="service-defaults",
490
520
  config_json=json.dumps({
491
521
  "Protocol": "http",
492
522
  }))
493
- service_resolver = consul.ConfigEntry("serviceResolver",
523
+ service_resolver = consul.ConfigEntry("service_resolver",
494
524
  kind="service-resolver",
525
+ name=web.name,
495
526
  config_json=json.dumps({
496
527
  "DefaultSubset": "v1",
497
528
  "Subsets": {
@@ -503,8 +534,9 @@ class ConfigEntry(pulumi.CustomResource):
503
534
  },
504
535
  },
505
536
  }))
506
- service_splitter = consul.ConfigEntry("serviceSplitter",
537
+ service_splitter = consul.ConfigEntry("service_splitter",
507
538
  kind="service-splitter",
539
+ name=service_resolver.name,
508
540
  config_json=json.dumps({
509
541
  "Splits": [
510
542
  {
@@ -517,8 +549,9 @@ class ConfigEntry(pulumi.CustomResource):
517
549
  },
518
550
  ],
519
551
  }))
520
- service_router = consul.ConfigEntry("serviceRouter",
552
+ service_router = consul.ConfigEntry("service_router",
521
553
  kind="service-router",
554
+ name="web",
522
555
  config_json=json.dumps({
523
556
  "Routes": [{
524
557
  "Match": {
@@ -531,7 +564,8 @@ class ConfigEntry(pulumi.CustomResource):
531
564
  },
532
565
  }],
533
566
  }))
534
- ingress_gateway = consul.ConfigEntry("ingressGateway",
567
+ ingress_gateway = consul.ConfigEntry("ingress_gateway",
568
+ name="us-east-ingress",
535
569
  kind="ingress-gateway",
536
570
  config_json=json.dumps({
537
571
  "TLS": {
@@ -545,7 +579,8 @@ class ConfigEntry(pulumi.CustomResource):
545
579
  }],
546
580
  }],
547
581
  }))
548
- terminating_gateway = consul.ConfigEntry("terminatingGateway",
582
+ terminating_gateway = consul.ConfigEntry("terminating_gateway",
583
+ name="us-west-gateway",
549
584
  kind="terminating-gateway",
550
585
  config_json=json.dumps({
551
586
  "Services": [{
@@ -553,6 +588,7 @@ class ConfigEntry(pulumi.CustomResource):
553
588
  }],
554
589
  }))
555
590
  ```
591
+
556
592
  ### `service-intentions` config entry
557
593
 
558
594
  ```python
@@ -560,7 +596,8 @@ class ConfigEntry(pulumi.CustomResource):
560
596
  import json
561
597
  import pulumi_consul as consul
562
598
 
563
- service_intentions = consul.ConfigEntry("serviceIntentions",
599
+ service_intentions = consul.ConfigEntry("service_intentions",
600
+ name="api-service",
564
601
  kind="service-intentions",
565
602
  config_json=json.dumps({
566
603
  "Sources": [
@@ -586,11 +623,13 @@ class ConfigEntry(pulumi.CustomResource):
586
623
  import pulumi_consul as consul
587
624
 
588
625
  sd = consul.ConfigEntry("sd",
626
+ name="fort-knox",
589
627
  kind="service-defaults",
590
628
  config_json=json.dumps({
591
629
  "Protocol": "http",
592
630
  }))
593
- jwt_provider = consul.ConfigEntry("jwtProvider",
631
+ jwt_provider = consul.ConfigEntry("jwt_provider",
632
+ name="test-provider",
594
633
  kind="jwt-provider",
595
634
  config_json=json.dumps({
596
635
  "Issuer": "test-issuer",
@@ -604,7 +643,8 @@ class ConfigEntry(pulumi.CustomResource):
604
643
  "HeaderName": "test-token",
605
644
  },
606
645
  }))
607
- service_intentions = consul.ConfigEntry("serviceIntentions",
646
+ service_intentions = consul.ConfigEntry("service_intentions",
647
+ name=sd.name,
608
648
  kind="service-intentions",
609
649
  config_json=pulumi.Output.json_dumps({
610
650
  "Sources": [
@@ -650,6 +690,7 @@ class ConfigEntry(pulumi.CustomResource):
650
690
  ],
651
691
  }))
652
692
  ```
693
+
653
694
  ### `exported-services` config entry
654
695
 
655
696
  ```python
@@ -657,7 +698,8 @@ class ConfigEntry(pulumi.CustomResource):
657
698
  import json
658
699
  import pulumi_consul as consul
659
700
 
660
- exported_services = consul.ConfigEntry("exportedServices",
701
+ exported_services = consul.ConfigEntry("exported_services",
702
+ name="test",
661
703
  kind="exported-services",
662
704
  config_json=json.dumps({
663
705
  "Services": [{
@@ -669,6 +711,7 @@ class ConfigEntry(pulumi.CustomResource):
669
711
  }],
670
712
  }))
671
713
  ```
714
+
672
715
  ### `mesh` config entry
673
716
 
674
717
  ```python
@@ -677,6 +720,7 @@ class ConfigEntry(pulumi.CustomResource):
677
720
  import pulumi_consul as consul
678
721
 
679
722
  mesh = consul.ConfigEntry("mesh",
723
+ name="mesh",
680
724
  kind="mesh",
681
725
  partition="default",
682
726
  config_json=json.dumps({
@@ -685,6 +729,7 @@ class ConfigEntry(pulumi.CustomResource):
685
729
  },
686
730
  }))
687
731
  ```
732
+
688
733
  ### `jwt-provider` config entry
689
734
 
690
735
  ```python
@@ -692,7 +737,8 @@ class ConfigEntry(pulumi.CustomResource):
692
737
  import json
693
738
  import pulumi_consul as consul
694
739
 
695
- jwt_provider = consul.ConfigEntry("jwtProvider",
740
+ jwt_provider = consul.ConfigEntry("jwt_provider",
741
+ name="provider-name",
696
742
  kind="jwt-provider",
697
743
  config_json=json.dumps({
698
744
  "Issuer": "https://your.issuer.com",
@@ -711,10 +757,13 @@ class ConfigEntry(pulumi.CustomResource):
711
757
 
712
758
  ## Import
713
759
 
714
- `consul_config_entry` can be imported using the syntax `<kind>/<name>` if the config entry is in the default partition and default namespace, or `<partition>/<namespace>/<kind>/<name>` for config entries in a non-default partition or namespace:
760
+ `consul_config_entry` can be imported using the syntax `<kind>/<name>` if the
761
+ config entry is in the default partition and default namespace, or
762
+ `<partition>/<namespace>/<kind>/<name>` for config entries in a non-default
763
+ partition or namespace:
715
764
 
716
765
  ```sh
717
- $ pulumi import consul:index/configEntry:ConfigEntry service_splitter 816a195f-6cb1-2e8d-92af-3011ae706318
766
+ $ pulumi import consul:index/configEntry:ConfigEntry service_splitter 816a195f-6cb1-2e8d-92af-3011ae706318
718
767
  ```
719
768
 
720
769
  :param str resource_name: The name of the resource.