pulumi-gcp 8.17.0a1738274430__py3-none-any.whl → 8.18.0__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.
Files changed (137) hide show
  1. pulumi_gcp/__init__.py +115 -0
  2. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_resource.py +28 -0
  3. pulumi_gcp/alloydb/cluster.py +75 -7
  4. pulumi_gcp/alloydb/user.py +10 -1
  5. pulumi_gcp/apigee/_inputs.py +91 -0
  6. pulumi_gcp/apigee/endpoint_attachment.py +0 -64
  7. pulumi_gcp/apigee/environment.py +54 -0
  8. pulumi_gcp/apigee/outputs.py +54 -0
  9. pulumi_gcp/apihub/__init__.py +10 -0
  10. pulumi_gcp/apihub/_inputs.py +154 -0
  11. pulumi_gcp/apihub/api_hub_instance.py +784 -0
  12. pulumi_gcp/apihub/outputs.py +124 -0
  13. pulumi_gcp/assuredworkloads/workload.py +7 -7
  14. pulumi_gcp/beyondcorp/__init__.py +4 -0
  15. pulumi_gcp/beyondcorp/_inputs.py +130 -0
  16. pulumi_gcp/beyondcorp/get_security_gateway_iam_policy.py +180 -0
  17. pulumi_gcp/beyondcorp/outputs.py +76 -0
  18. pulumi_gcp/beyondcorp/security_gateway.py +52 -25
  19. pulumi_gcp/beyondcorp/security_gateway_iam_binding.py +1075 -0
  20. pulumi_gcp/beyondcorp/security_gateway_iam_member.py +1075 -0
  21. pulumi_gcp/beyondcorp/security_gateway_iam_policy.py +894 -0
  22. pulumi_gcp/bigquery/_inputs.py +33 -0
  23. pulumi_gcp/bigquery/dataset.py +7 -7
  24. pulumi_gcp/bigquery/outputs.py +36 -0
  25. pulumi_gcp/bigquery/table.py +61 -7
  26. pulumi_gcp/chronicle/__init__.py +1 -0
  27. pulumi_gcp/chronicle/_inputs.py +124 -0
  28. pulumi_gcp/chronicle/outputs.py +112 -0
  29. pulumi_gcp/chronicle/retrohunt.py +629 -0
  30. pulumi_gcp/cloudquota/s_quota_adjuster_settings.py +23 -23
  31. pulumi_gcp/cloudrunv2/_inputs.py +197 -0
  32. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  33. pulumi_gcp/cloudrunv2/outputs.py +256 -0
  34. pulumi_gcp/cloudrunv2/service.py +159 -0
  35. pulumi_gcp/colab/__init__.py +5 -0
  36. pulumi_gcp/colab/_inputs.py +131 -0
  37. pulumi_gcp/colab/get_runtime_template_iam_policy.py +182 -0
  38. pulumi_gcp/colab/outputs.py +92 -0
  39. pulumi_gcp/colab/runtime.py +696 -0
  40. pulumi_gcp/colab/runtime_template_iam_binding.py +828 -0
  41. pulumi_gcp/colab/runtime_template_iam_member.py +828 -0
  42. pulumi_gcp/colab/runtime_template_iam_policy.py +667 -0
  43. pulumi_gcp/compute/__init__.py +4 -0
  44. pulumi_gcp/compute/_inputs.py +535 -9
  45. pulumi_gcp/compute/firewall_policy_rule.py +104 -22
  46. pulumi_gcp/compute/firewall_policy_with_rules.py +114 -42
  47. pulumi_gcp/compute/get_instance_template_iam_policy.py +159 -0
  48. pulumi_gcp/compute/get_network.py +3 -3
  49. pulumi_gcp/compute/instance_template_iam_binding.py +998 -0
  50. pulumi_gcp/compute/instance_template_iam_member.py +998 -0
  51. pulumi_gcp/compute/instance_template_iam_policy.py +817 -0
  52. pulumi_gcp/compute/interconnect_attachment.py +189 -2
  53. pulumi_gcp/compute/network.py +7 -7
  54. pulumi_gcp/compute/network_firewall_policy_rule.py +122 -10
  55. pulumi_gcp/compute/network_firewall_policy_with_rules.py +116 -44
  56. pulumi_gcp/compute/outputs.py +358 -6
  57. pulumi_gcp/compute/project_metadata_item.py +12 -0
  58. pulumi_gcp/compute/public_advertised_prefix.py +87 -0
  59. pulumi_gcp/compute/region_network_firewall_policy_rule.py +130 -10
  60. pulumi_gcp/compute/region_network_firewall_policy_with_rules.py +104 -32
  61. pulumi_gcp/compute/router_peer.py +227 -3
  62. pulumi_gcp/config/__init__.pyi +2 -0
  63. pulumi_gcp/config/vars.py +4 -0
  64. pulumi_gcp/container/_inputs.py +79 -20
  65. pulumi_gcp/container/outputs.py +75 -12
  66. pulumi_gcp/dataproc/_inputs.py +34 -0
  67. pulumi_gcp/dataproc/outputs.py +37 -0
  68. pulumi_gcp/dataproc/workflow_template.py +47 -0
  69. pulumi_gcp/filestore/get_instance.py +12 -1
  70. pulumi_gcp/filestore/instance.py +75 -0
  71. pulumi_gcp/firestore/field.py +60 -0
  72. pulumi_gcp/gemini/code_repository_index.py +29 -33
  73. pulumi_gcp/gemini/get_repository_group_iam_policy.py +28 -2
  74. pulumi_gcp/gemini/repository_group.py +76 -26
  75. pulumi_gcp/gemini/repository_group_iam_binding.py +258 -0
  76. pulumi_gcp/gemini/repository_group_iam_member.py +258 -0
  77. pulumi_gcp/gemini/repository_group_iam_policy.py +258 -0
  78. pulumi_gcp/gkehub/_inputs.py +20 -0
  79. pulumi_gcp/gkehub/membership_binding.py +6 -6
  80. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  81. pulumi_gcp/gkehub/namespace.py +4 -4
  82. pulumi_gcp/gkehub/outputs.py +26 -1
  83. pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
  84. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  85. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  86. pulumi_gcp/kms/__init__.py +1 -0
  87. pulumi_gcp/kms/get_key_handles.py +172 -0
  88. pulumi_gcp/kms/outputs.py +45 -0
  89. pulumi_gcp/netapp/storage_pool.py +1 -1
  90. pulumi_gcp/networkconnectivity/spoke.py +76 -14
  91. pulumi_gcp/networksecurity/_inputs.py +72 -0
  92. pulumi_gcp/networksecurity/outputs.py +76 -0
  93. pulumi_gcp/networksecurity/security_profile.py +233 -7
  94. pulumi_gcp/networksecurity/security_profile_group.py +218 -0
  95. pulumi_gcp/organizations/__init__.py +1 -0
  96. pulumi_gcp/organizations/get_s.py +128 -0
  97. pulumi_gcp/organizations/outputs.py +63 -0
  98. pulumi_gcp/orgpolicy/policy.py +2 -2
  99. pulumi_gcp/parametermanager/__init__.py +6 -0
  100. pulumi_gcp/parametermanager/get_parameter.py +211 -0
  101. pulumi_gcp/parametermanager/get_parameter_version.py +216 -0
  102. pulumi_gcp/parametermanager/get_parameters.py +140 -0
  103. pulumi_gcp/parametermanager/get_regional_parameter_version.py +235 -0
  104. pulumi_gcp/parametermanager/get_regional_parameters.py +157 -0
  105. pulumi_gcp/parametermanager/outputs.py +366 -0
  106. pulumi_gcp/parametermanager/parameter_version.py +496 -0
  107. pulumi_gcp/parametermanager/regional_parameter_version.py +10 -38
  108. pulumi_gcp/provider.py +20 -0
  109. pulumi_gcp/pubsub/_inputs.py +477 -1
  110. pulumi_gcp/pubsub/outputs.py +631 -2
  111. pulumi_gcp/pubsub/subscription.py +6 -6
  112. pulumi_gcp/pubsub/topic.py +112 -0
  113. pulumi_gcp/pulumi-plugin.json +1 -1
  114. pulumi_gcp/redis/__init__.py +1 -0
  115. pulumi_gcp/redis/_inputs.py +342 -6
  116. pulumi_gcp/redis/cluster.py +223 -102
  117. pulumi_gcp/redis/cluster_user_created_connections.py +845 -0
  118. pulumi_gcp/redis/outputs.py +268 -4
  119. pulumi_gcp/resourcemanager/lien.py +12 -0
  120. pulumi_gcp/secretmanager/regional_secret.py +4 -0
  121. pulumi_gcp/secretmanager/regional_secret_version.py +12 -0
  122. pulumi_gcp/secretmanager/secret.py +4 -0
  123. pulumi_gcp/secretmanager/secret_version.py +12 -0
  124. pulumi_gcp/securityposture/posture.py +4 -0
  125. pulumi_gcp/securityposture/posture_deployment.py +4 -0
  126. pulumi_gcp/serviceaccount/get_s.py +98 -8
  127. pulumi_gcp/spanner/_inputs.py +68 -0
  128. pulumi_gcp/spanner/backup_schedule.py +70 -4
  129. pulumi_gcp/spanner/outputs.py +60 -0
  130. pulumi_gcp/storage/get_bucket_object_content.py +4 -4
  131. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  132. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  133. pulumi_gcp/workflows/workflow.py +175 -0
  134. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/METADATA +1 -1
  135. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/RECORD +137 -110
  136. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/WHEEL +0 -0
  137. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/top_level.txt +0 -0
@@ -1113,7 +1113,7 @@ class Subscription(pulumi.CustomResource):
1113
1113
  cloud_storage_config={
1114
1114
  "bucket": example.name,
1115
1115
  "filename_prefix": "pre-",
1116
- "filename_suffix": "-_8270",
1116
+ "filename_suffix": "-_41150",
1117
1117
  "filename_datetime_format": "YYYY-MM-DD/hh_mm_ssZ",
1118
1118
  "max_bytes": 1000,
1119
1119
  "max_duration": "300s",
@@ -1146,7 +1146,7 @@ class Subscription(pulumi.CustomResource):
1146
1146
  cloud_storage_config={
1147
1147
  "bucket": example.name,
1148
1148
  "filename_prefix": "pre-",
1149
- "filename_suffix": "-_41150",
1149
+ "filename_suffix": "-_89313",
1150
1150
  "filename_datetime_format": "YYYY-MM-DD/hh_mm_ssZ",
1151
1151
  "max_bytes": 1000,
1152
1152
  "max_duration": "300s",
@@ -1185,7 +1185,7 @@ class Subscription(pulumi.CustomResource):
1185
1185
  cloud_storage_config={
1186
1186
  "bucket": example.name,
1187
1187
  "filename_prefix": "pre-",
1188
- "filename_suffix": "-_89313",
1188
+ "filename_suffix": "-_60646",
1189
1189
  "filename_datetime_format": "YYYY-MM-DD/hh_mm_ssZ",
1190
1190
  "max_bytes": 1000,
1191
1191
  "max_duration": "300s",
@@ -1553,7 +1553,7 @@ class Subscription(pulumi.CustomResource):
1553
1553
  cloud_storage_config={
1554
1554
  "bucket": example.name,
1555
1555
  "filename_prefix": "pre-",
1556
- "filename_suffix": "-_8270",
1556
+ "filename_suffix": "-_41150",
1557
1557
  "filename_datetime_format": "YYYY-MM-DD/hh_mm_ssZ",
1558
1558
  "max_bytes": 1000,
1559
1559
  "max_duration": "300s",
@@ -1586,7 +1586,7 @@ class Subscription(pulumi.CustomResource):
1586
1586
  cloud_storage_config={
1587
1587
  "bucket": example.name,
1588
1588
  "filename_prefix": "pre-",
1589
- "filename_suffix": "-_41150",
1589
+ "filename_suffix": "-_89313",
1590
1590
  "filename_datetime_format": "YYYY-MM-DD/hh_mm_ssZ",
1591
1591
  "max_bytes": 1000,
1592
1592
  "max_duration": "300s",
@@ -1625,7 +1625,7 @@ class Subscription(pulumi.CustomResource):
1625
1625
  cloud_storage_config={
1626
1626
  "bucket": example.name,
1627
1627
  "filename_prefix": "pre-",
1628
- "filename_suffix": "-_89313",
1628
+ "filename_suffix": "-_60646",
1629
1629
  "filename_datetime_format": "YYYY-MM-DD/hh_mm_ssZ",
1630
1630
  "max_bytes": 1000,
1631
1631
  "max_duration": "300s",
@@ -483,6 +483,7 @@ class Topic(pulumi.CustomResource):
483
483
  name="example-topic",
484
484
  message_storage_policy={
485
485
  "allowed_persistence_regions": ["europe-west3"],
486
+ "enforce_in_transit": True,
486
487
  })
487
488
  ```
488
489
  ### Pubsub Topic Schema Settings
@@ -556,6 +557,61 @@ class Topic(pulumi.CustomResource):
556
557
  },
557
558
  })
558
559
  ```
560
+ ### Pubsub Topic Ingestion Azure Event Hubs
561
+
562
+ ```python
563
+ import pulumi
564
+ import pulumi_gcp as gcp
565
+
566
+ example = gcp.pubsub.Topic("example",
567
+ name="example-topic",
568
+ ingestion_data_source_settings={
569
+ "azure_event_hubs": {
570
+ "resource_group": "azure-ingestion-resource-group",
571
+ "namespace": "azure-ingestion-namespace",
572
+ "event_hub": "azure-ingestion-event-hub",
573
+ "client_id": "aZZZZZZZ-YYYY-HHHH-GGGG-abcdef569123",
574
+ "tenant_id": "0XXXXXXX-YYYY-HHHH-GGGG-123456789123",
575
+ "subscription_id": "bXXXXXXX-YYYY-HHHH-GGGG-123456789123",
576
+ "gcp_service_account": "fake-service-account@fake-gcp-project.iam.gserviceaccount.com",
577
+ },
578
+ })
579
+ ```
580
+ ### Pubsub Topic Ingestion Aws Msk
581
+
582
+ ```python
583
+ import pulumi
584
+ import pulumi_gcp as gcp
585
+
586
+ example = gcp.pubsub.Topic("example",
587
+ name="example-topic",
588
+ ingestion_data_source_settings={
589
+ "aws_msk": {
590
+ "cluster_arn": "arn:aws:kinesis:us-west-2:111111111111:stream/fake-stream-name",
591
+ "topic": "test-topic",
592
+ "aws_role_arn": "arn:aws:iam::111111111111:role/fake-role-name",
593
+ "gcp_service_account": "fake-service-account@fake-gcp-project.iam.gserviceaccount.com",
594
+ },
595
+ })
596
+ ```
597
+ ### Pubsub Topic Ingestion Confluent Cloud
598
+
599
+ ```python
600
+ import pulumi
601
+ import pulumi_gcp as gcp
602
+
603
+ example = gcp.pubsub.Topic("example",
604
+ name="example-topic",
605
+ ingestion_data_source_settings={
606
+ "confluent_cloud": {
607
+ "bootstrap_server": "test.us-west2.gcp.confluent.cloud:1111",
608
+ "cluster_id": "1234",
609
+ "topic": "test-topic",
610
+ "identity_pool_id": "test-identity-pool-id",
611
+ "gcp_service_account": "fake-service-account@fake-gcp-project.iam.gserviceaccount.com",
612
+ },
613
+ })
614
+ ```
559
615
 
560
616
  ## Import
561
617
 
@@ -674,6 +730,7 @@ class Topic(pulumi.CustomResource):
674
730
  name="example-topic",
675
731
  message_storage_policy={
676
732
  "allowed_persistence_regions": ["europe-west3"],
733
+ "enforce_in_transit": True,
677
734
  })
678
735
  ```
679
736
  ### Pubsub Topic Schema Settings
@@ -747,6 +804,61 @@ class Topic(pulumi.CustomResource):
747
804
  },
748
805
  })
749
806
  ```
807
+ ### Pubsub Topic Ingestion Azure Event Hubs
808
+
809
+ ```python
810
+ import pulumi
811
+ import pulumi_gcp as gcp
812
+
813
+ example = gcp.pubsub.Topic("example",
814
+ name="example-topic",
815
+ ingestion_data_source_settings={
816
+ "azure_event_hubs": {
817
+ "resource_group": "azure-ingestion-resource-group",
818
+ "namespace": "azure-ingestion-namespace",
819
+ "event_hub": "azure-ingestion-event-hub",
820
+ "client_id": "aZZZZZZZ-YYYY-HHHH-GGGG-abcdef569123",
821
+ "tenant_id": "0XXXXXXX-YYYY-HHHH-GGGG-123456789123",
822
+ "subscription_id": "bXXXXXXX-YYYY-HHHH-GGGG-123456789123",
823
+ "gcp_service_account": "fake-service-account@fake-gcp-project.iam.gserviceaccount.com",
824
+ },
825
+ })
826
+ ```
827
+ ### Pubsub Topic Ingestion Aws Msk
828
+
829
+ ```python
830
+ import pulumi
831
+ import pulumi_gcp as gcp
832
+
833
+ example = gcp.pubsub.Topic("example",
834
+ name="example-topic",
835
+ ingestion_data_source_settings={
836
+ "aws_msk": {
837
+ "cluster_arn": "arn:aws:kinesis:us-west-2:111111111111:stream/fake-stream-name",
838
+ "topic": "test-topic",
839
+ "aws_role_arn": "arn:aws:iam::111111111111:role/fake-role-name",
840
+ "gcp_service_account": "fake-service-account@fake-gcp-project.iam.gserviceaccount.com",
841
+ },
842
+ })
843
+ ```
844
+ ### Pubsub Topic Ingestion Confluent Cloud
845
+
846
+ ```python
847
+ import pulumi
848
+ import pulumi_gcp as gcp
849
+
850
+ example = gcp.pubsub.Topic("example",
851
+ name="example-topic",
852
+ ingestion_data_source_settings={
853
+ "confluent_cloud": {
854
+ "bootstrap_server": "test.us-west2.gcp.confluent.cloud:1111",
855
+ "cluster_id": "1234",
856
+ "topic": "test-topic",
857
+ "identity_pool_id": "test-identity-pool-id",
858
+ "gcp_service_account": "fake-service-account@fake-gcp-project.iam.gserviceaccount.com",
859
+ },
860
+ })
861
+ ```
750
862
 
751
863
  ## Import
752
864
 
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "resource": true,
3
3
  "name": "gcp",
4
- "version": "8.17.0-alpha.1738274430"
4
+ "version": "8.18.0"
5
5
  }
@@ -6,6 +6,7 @@ from .. import _utilities
6
6
  import typing
7
7
  # Export this package's modules as members:
8
8
  from .cluster import *
9
+ from .cluster_user_created_connections import *
9
10
  from .get_instance import *
10
11
  from .instance import *
11
12
  from ._inputs import *
@@ -49,10 +49,18 @@ __all__ = [
49
49
  'ClusterPscConfigArgsDict',
50
50
  'ClusterPscConnectionArgs',
51
51
  'ClusterPscConnectionArgsDict',
52
+ 'ClusterPscServiceAttachmentArgs',
53
+ 'ClusterPscServiceAttachmentArgsDict',
52
54
  'ClusterStateInfoArgs',
53
55
  'ClusterStateInfoArgsDict',
54
56
  'ClusterStateInfoUpdateInfoArgs',
55
57
  'ClusterStateInfoUpdateInfoArgsDict',
58
+ 'ClusterUserCreatedConnectionsClusterEndpointArgs',
59
+ 'ClusterUserCreatedConnectionsClusterEndpointArgsDict',
60
+ 'ClusterUserCreatedConnectionsClusterEndpointConnectionArgs',
61
+ 'ClusterUserCreatedConnectionsClusterEndpointConnectionArgsDict',
62
+ 'ClusterUserCreatedConnectionsClusterEndpointConnectionPscConnectionArgs',
63
+ 'ClusterUserCreatedConnectionsClusterEndpointConnectionPscConnectionArgsDict',
56
64
  'ClusterZoneDistributionConfigArgs',
57
65
  'ClusterZoneDistributionConfigArgsDict',
58
66
  'InstanceMaintenancePolicyArgs',
@@ -1228,8 +1236,6 @@ if not MYPY:
1228
1236
  Required. The consumer network where the network address of
1229
1237
  the discovery endpoint will be reserved, in the form of
1230
1238
  projects/{network_project_id_or_number}/global/networks/{network_id}.
1231
-
1232
- - - -
1233
1239
  """
1234
1240
  elif False:
1235
1241
  ClusterPscConfigArgsDict: TypeAlias = Mapping[str, Any]
@@ -1242,8 +1248,6 @@ class ClusterPscConfigArgs:
1242
1248
  :param pulumi.Input[str] network: Required. The consumer network where the network address of
1243
1249
  the discovery endpoint will be reserved, in the form of
1244
1250
  projects/{network_project_id_or_number}/global/networks/{network_id}.
1245
-
1246
- - - -
1247
1251
  """
1248
1252
  pulumi.set(__self__, "network", network)
1249
1253
 
@@ -1254,8 +1258,6 @@ class ClusterPscConfigArgs:
1254
1258
  Required. The consumer network where the network address of
1255
1259
  the discovery endpoint will be reserved, in the form of
1256
1260
  projects/{network_project_id_or_number}/global/networks/{network_id}.
1257
-
1258
- - - -
1259
1261
  """
1260
1262
  return pulumi.get(self, "network")
1261
1263
 
@@ -1376,6 +1378,64 @@ class ClusterPscConnectionArgs:
1376
1378
  pulumi.set(self, "psc_connection_id", value)
1377
1379
 
1378
1380
 
1381
+ if not MYPY:
1382
+ class ClusterPscServiceAttachmentArgsDict(TypedDict):
1383
+ connection_type: NotRequired[pulumi.Input[str]]
1384
+ """
1385
+ (Output)
1386
+ Type of a PSC connection targeting this service attachment.
1387
+ """
1388
+ service_attachment: NotRequired[pulumi.Input[str]]
1389
+ """
1390
+ (Output)
1391
+ Service attachment URI which your self-created PscConnection should use as
1392
+ """
1393
+ elif False:
1394
+ ClusterPscServiceAttachmentArgsDict: TypeAlias = Mapping[str, Any]
1395
+
1396
+ @pulumi.input_type
1397
+ class ClusterPscServiceAttachmentArgs:
1398
+ def __init__(__self__, *,
1399
+ connection_type: Optional[pulumi.Input[str]] = None,
1400
+ service_attachment: Optional[pulumi.Input[str]] = None):
1401
+ """
1402
+ :param pulumi.Input[str] connection_type: (Output)
1403
+ Type of a PSC connection targeting this service attachment.
1404
+ :param pulumi.Input[str] service_attachment: (Output)
1405
+ Service attachment URI which your self-created PscConnection should use as
1406
+ """
1407
+ if connection_type is not None:
1408
+ pulumi.set(__self__, "connection_type", connection_type)
1409
+ if service_attachment is not None:
1410
+ pulumi.set(__self__, "service_attachment", service_attachment)
1411
+
1412
+ @property
1413
+ @pulumi.getter(name="connectionType")
1414
+ def connection_type(self) -> Optional[pulumi.Input[str]]:
1415
+ """
1416
+ (Output)
1417
+ Type of a PSC connection targeting this service attachment.
1418
+ """
1419
+ return pulumi.get(self, "connection_type")
1420
+
1421
+ @connection_type.setter
1422
+ def connection_type(self, value: Optional[pulumi.Input[str]]):
1423
+ pulumi.set(self, "connection_type", value)
1424
+
1425
+ @property
1426
+ @pulumi.getter(name="serviceAttachment")
1427
+ def service_attachment(self) -> Optional[pulumi.Input[str]]:
1428
+ """
1429
+ (Output)
1430
+ Service attachment URI which your self-created PscConnection should use as
1431
+ """
1432
+ return pulumi.get(self, "service_attachment")
1433
+
1434
+ @service_attachment.setter
1435
+ def service_attachment(self, value: Optional[pulumi.Input[str]]):
1436
+ pulumi.set(self, "service_attachment", value)
1437
+
1438
+
1379
1439
  if not MYPY:
1380
1440
  class ClusterStateInfoArgsDict(TypedDict):
1381
1441
  update_info: NotRequired[pulumi.Input['ClusterStateInfoUpdateInfoArgsDict']]
@@ -1463,6 +1523,282 @@ class ClusterStateInfoUpdateInfoArgs:
1463
1523
  pulumi.set(self, "target_shard_count", value)
1464
1524
 
1465
1525
 
1526
+ if not MYPY:
1527
+ class ClusterUserCreatedConnectionsClusterEndpointArgsDict(TypedDict):
1528
+ connections: NotRequired[pulumi.Input[Sequence[pulumi.Input['ClusterUserCreatedConnectionsClusterEndpointConnectionArgsDict']]]]
1529
+ """
1530
+ Structure is documented below.
1531
+ """
1532
+ elif False:
1533
+ ClusterUserCreatedConnectionsClusterEndpointArgsDict: TypeAlias = Mapping[str, Any]
1534
+
1535
+ @pulumi.input_type
1536
+ class ClusterUserCreatedConnectionsClusterEndpointArgs:
1537
+ def __init__(__self__, *,
1538
+ connections: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterUserCreatedConnectionsClusterEndpointConnectionArgs']]]] = None):
1539
+ """
1540
+ :param pulumi.Input[Sequence[pulumi.Input['ClusterUserCreatedConnectionsClusterEndpointConnectionArgs']]] connections: Structure is documented below.
1541
+ """
1542
+ if connections is not None:
1543
+ pulumi.set(__self__, "connections", connections)
1544
+
1545
+ @property
1546
+ @pulumi.getter
1547
+ def connections(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClusterUserCreatedConnectionsClusterEndpointConnectionArgs']]]]:
1548
+ """
1549
+ Structure is documented below.
1550
+ """
1551
+ return pulumi.get(self, "connections")
1552
+
1553
+ @connections.setter
1554
+ def connections(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterUserCreatedConnectionsClusterEndpointConnectionArgs']]]]):
1555
+ pulumi.set(self, "connections", value)
1556
+
1557
+
1558
+ if not MYPY:
1559
+ class ClusterUserCreatedConnectionsClusterEndpointConnectionArgsDict(TypedDict):
1560
+ psc_connection: NotRequired[pulumi.Input['ClusterUserCreatedConnectionsClusterEndpointConnectionPscConnectionArgsDict']]
1561
+ """
1562
+ Detailed information of a PSC connection that is created by the customer
1563
+ who owns the cluster.
1564
+ Structure is documented below.
1565
+ """
1566
+ elif False:
1567
+ ClusterUserCreatedConnectionsClusterEndpointConnectionArgsDict: TypeAlias = Mapping[str, Any]
1568
+
1569
+ @pulumi.input_type
1570
+ class ClusterUserCreatedConnectionsClusterEndpointConnectionArgs:
1571
+ def __init__(__self__, *,
1572
+ psc_connection: Optional[pulumi.Input['ClusterUserCreatedConnectionsClusterEndpointConnectionPscConnectionArgs']] = None):
1573
+ """
1574
+ :param pulumi.Input['ClusterUserCreatedConnectionsClusterEndpointConnectionPscConnectionArgs'] psc_connection: Detailed information of a PSC connection that is created by the customer
1575
+ who owns the cluster.
1576
+ Structure is documented below.
1577
+ """
1578
+ if psc_connection is not None:
1579
+ pulumi.set(__self__, "psc_connection", psc_connection)
1580
+
1581
+ @property
1582
+ @pulumi.getter(name="pscConnection")
1583
+ def psc_connection(self) -> Optional[pulumi.Input['ClusterUserCreatedConnectionsClusterEndpointConnectionPscConnectionArgs']]:
1584
+ """
1585
+ Detailed information of a PSC connection that is created by the customer
1586
+ who owns the cluster.
1587
+ Structure is documented below.
1588
+ """
1589
+ return pulumi.get(self, "psc_connection")
1590
+
1591
+ @psc_connection.setter
1592
+ def psc_connection(self, value: Optional[pulumi.Input['ClusterUserCreatedConnectionsClusterEndpointConnectionPscConnectionArgs']]):
1593
+ pulumi.set(self, "psc_connection", value)
1594
+
1595
+
1596
+ if not MYPY:
1597
+ class ClusterUserCreatedConnectionsClusterEndpointConnectionPscConnectionArgsDict(TypedDict):
1598
+ address: pulumi.Input[str]
1599
+ """
1600
+ The IP allocated on the consumer network for the PSC forwarding rule.
1601
+ """
1602
+ forwarding_rule: pulumi.Input[str]
1603
+ """
1604
+ The URI of the consumer side forwarding rule.
1605
+ Format:
1606
+ projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}
1607
+ """
1608
+ network: pulumi.Input[str]
1609
+ """
1610
+ The consumer network where the IP address resides, in the form of
1611
+ projects/{project_id}/global/networks/{network_id}.
1612
+ """
1613
+ psc_connection_id: pulumi.Input[str]
1614
+ """
1615
+ The PSC connection id of the forwarding rule connected to the
1616
+ service attachment.
1617
+ """
1618
+ service_attachment: pulumi.Input[str]
1619
+ """
1620
+ The service attachment which is the target of the PSC connection, in the form of projects/{project-id}/regions/{region}/serviceAttachments/{service-attachment-id}.
1621
+ """
1622
+ connection_type: NotRequired[pulumi.Input[str]]
1623
+ """
1624
+ (Output)
1625
+ Output Only. Type of a PSC Connection.
1626
+ Possible values:
1627
+ CONNECTION_TYPE_DISCOVERY
1628
+ CONNECTION_TYPE_PRIMARY
1629
+ CONNECTION_TYPE_READER
1630
+ """
1631
+ project_id: NotRequired[pulumi.Input[str]]
1632
+ """
1633
+ The consumer project_id where the forwarding rule is created from.
1634
+ """
1635
+ psc_connection_status: NotRequired[pulumi.Input[str]]
1636
+ """
1637
+ (Output)
1638
+ Output Only. The status of the PSC connection: whether a connection exists and ACTIVE or it no longer exists.
1639
+ Possible values:
1640
+ ACTIVE
1641
+ NOT_FOUND
1642
+ """
1643
+ elif False:
1644
+ ClusterUserCreatedConnectionsClusterEndpointConnectionPscConnectionArgsDict: TypeAlias = Mapping[str, Any]
1645
+
1646
+ @pulumi.input_type
1647
+ class ClusterUserCreatedConnectionsClusterEndpointConnectionPscConnectionArgs:
1648
+ def __init__(__self__, *,
1649
+ address: pulumi.Input[str],
1650
+ forwarding_rule: pulumi.Input[str],
1651
+ network: pulumi.Input[str],
1652
+ psc_connection_id: pulumi.Input[str],
1653
+ service_attachment: pulumi.Input[str],
1654
+ connection_type: Optional[pulumi.Input[str]] = None,
1655
+ project_id: Optional[pulumi.Input[str]] = None,
1656
+ psc_connection_status: Optional[pulumi.Input[str]] = None):
1657
+ """
1658
+ :param pulumi.Input[str] address: The IP allocated on the consumer network for the PSC forwarding rule.
1659
+ :param pulumi.Input[str] forwarding_rule: The URI of the consumer side forwarding rule.
1660
+ Format:
1661
+ projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}
1662
+ :param pulumi.Input[str] network: The consumer network where the IP address resides, in the form of
1663
+ projects/{project_id}/global/networks/{network_id}.
1664
+ :param pulumi.Input[str] psc_connection_id: The PSC connection id of the forwarding rule connected to the
1665
+ service attachment.
1666
+ :param pulumi.Input[str] service_attachment: The service attachment which is the target of the PSC connection, in the form of projects/{project-id}/regions/{region}/serviceAttachments/{service-attachment-id}.
1667
+ :param pulumi.Input[str] connection_type: (Output)
1668
+ Output Only. Type of a PSC Connection.
1669
+ Possible values:
1670
+ CONNECTION_TYPE_DISCOVERY
1671
+ CONNECTION_TYPE_PRIMARY
1672
+ CONNECTION_TYPE_READER
1673
+ :param pulumi.Input[str] project_id: The consumer project_id where the forwarding rule is created from.
1674
+ :param pulumi.Input[str] psc_connection_status: (Output)
1675
+ Output Only. The status of the PSC connection: whether a connection exists and ACTIVE or it no longer exists.
1676
+ Possible values:
1677
+ ACTIVE
1678
+ NOT_FOUND
1679
+ """
1680
+ pulumi.set(__self__, "address", address)
1681
+ pulumi.set(__self__, "forwarding_rule", forwarding_rule)
1682
+ pulumi.set(__self__, "network", network)
1683
+ pulumi.set(__self__, "psc_connection_id", psc_connection_id)
1684
+ pulumi.set(__self__, "service_attachment", service_attachment)
1685
+ if connection_type is not None:
1686
+ pulumi.set(__self__, "connection_type", connection_type)
1687
+ if project_id is not None:
1688
+ pulumi.set(__self__, "project_id", project_id)
1689
+ if psc_connection_status is not None:
1690
+ pulumi.set(__self__, "psc_connection_status", psc_connection_status)
1691
+
1692
+ @property
1693
+ @pulumi.getter
1694
+ def address(self) -> pulumi.Input[str]:
1695
+ """
1696
+ The IP allocated on the consumer network for the PSC forwarding rule.
1697
+ """
1698
+ return pulumi.get(self, "address")
1699
+
1700
+ @address.setter
1701
+ def address(self, value: pulumi.Input[str]):
1702
+ pulumi.set(self, "address", value)
1703
+
1704
+ @property
1705
+ @pulumi.getter(name="forwardingRule")
1706
+ def forwarding_rule(self) -> pulumi.Input[str]:
1707
+ """
1708
+ The URI of the consumer side forwarding rule.
1709
+ Format:
1710
+ projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}
1711
+ """
1712
+ return pulumi.get(self, "forwarding_rule")
1713
+
1714
+ @forwarding_rule.setter
1715
+ def forwarding_rule(self, value: pulumi.Input[str]):
1716
+ pulumi.set(self, "forwarding_rule", value)
1717
+
1718
+ @property
1719
+ @pulumi.getter
1720
+ def network(self) -> pulumi.Input[str]:
1721
+ """
1722
+ The consumer network where the IP address resides, in the form of
1723
+ projects/{project_id}/global/networks/{network_id}.
1724
+ """
1725
+ return pulumi.get(self, "network")
1726
+
1727
+ @network.setter
1728
+ def network(self, value: pulumi.Input[str]):
1729
+ pulumi.set(self, "network", value)
1730
+
1731
+ @property
1732
+ @pulumi.getter(name="pscConnectionId")
1733
+ def psc_connection_id(self) -> pulumi.Input[str]:
1734
+ """
1735
+ The PSC connection id of the forwarding rule connected to the
1736
+ service attachment.
1737
+ """
1738
+ return pulumi.get(self, "psc_connection_id")
1739
+
1740
+ @psc_connection_id.setter
1741
+ def psc_connection_id(self, value: pulumi.Input[str]):
1742
+ pulumi.set(self, "psc_connection_id", value)
1743
+
1744
+ @property
1745
+ @pulumi.getter(name="serviceAttachment")
1746
+ def service_attachment(self) -> pulumi.Input[str]:
1747
+ """
1748
+ The service attachment which is the target of the PSC connection, in the form of projects/{project-id}/regions/{region}/serviceAttachments/{service-attachment-id}.
1749
+ """
1750
+ return pulumi.get(self, "service_attachment")
1751
+
1752
+ @service_attachment.setter
1753
+ def service_attachment(self, value: pulumi.Input[str]):
1754
+ pulumi.set(self, "service_attachment", value)
1755
+
1756
+ @property
1757
+ @pulumi.getter(name="connectionType")
1758
+ def connection_type(self) -> Optional[pulumi.Input[str]]:
1759
+ """
1760
+ (Output)
1761
+ Output Only. Type of a PSC Connection.
1762
+ Possible values:
1763
+ CONNECTION_TYPE_DISCOVERY
1764
+ CONNECTION_TYPE_PRIMARY
1765
+ CONNECTION_TYPE_READER
1766
+ """
1767
+ return pulumi.get(self, "connection_type")
1768
+
1769
+ @connection_type.setter
1770
+ def connection_type(self, value: Optional[pulumi.Input[str]]):
1771
+ pulumi.set(self, "connection_type", value)
1772
+
1773
+ @property
1774
+ @pulumi.getter(name="projectId")
1775
+ def project_id(self) -> Optional[pulumi.Input[str]]:
1776
+ """
1777
+ The consumer project_id where the forwarding rule is created from.
1778
+ """
1779
+ return pulumi.get(self, "project_id")
1780
+
1781
+ @project_id.setter
1782
+ def project_id(self, value: Optional[pulumi.Input[str]]):
1783
+ pulumi.set(self, "project_id", value)
1784
+
1785
+ @property
1786
+ @pulumi.getter(name="pscConnectionStatus")
1787
+ def psc_connection_status(self) -> Optional[pulumi.Input[str]]:
1788
+ """
1789
+ (Output)
1790
+ Output Only. The status of the PSC connection: whether a connection exists and ACTIVE or it no longer exists.
1791
+ Possible values:
1792
+ ACTIVE
1793
+ NOT_FOUND
1794
+ """
1795
+ return pulumi.get(self, "psc_connection_status")
1796
+
1797
+ @psc_connection_status.setter
1798
+ def psc_connection_status(self, value: Optional[pulumi.Input[str]]):
1799
+ pulumi.set(self, "psc_connection_status", value)
1800
+
1801
+
1466
1802
  if not MYPY:
1467
1803
  class ClusterZoneDistributionConfigArgsDict(TypedDict):
1468
1804
  mode: NotRequired[pulumi.Input[str]]