pulumi-gcp 8.40.0a1754636117__py3-none-any.whl → 8.40.0a1754951145__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 (157) hide show
  1. pulumi_gcp/__init__.py +128 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +24 -4
  3. pulumi_gcp/accesscontextmanager/outputs.py +15 -3
  4. pulumi_gcp/apigee/__init__.py +2 -0
  5. pulumi_gcp/apigee/_inputs.py +1435 -0
  6. pulumi_gcp/apigee/api_product.py +1698 -0
  7. pulumi_gcp/apigee/outputs.py +1081 -0
  8. pulumi_gcp/apigee/security_action.py +1010 -0
  9. pulumi_gcp/artifactregistry/__init__.py +1 -0
  10. pulumi_gcp/artifactregistry/get_docker_images.py +164 -0
  11. pulumi_gcp/artifactregistry/outputs.py +109 -2
  12. pulumi_gcp/artifactregistry/repository.py +6 -6
  13. pulumi_gcp/backupdisasterrecovery/backup_vault.py +56 -0
  14. pulumi_gcp/backupdisasterrecovery/get_backup_vault.py +12 -1
  15. pulumi_gcp/bigquery/_inputs.py +6 -0
  16. pulumi_gcp/bigquery/get_table.py +23 -1
  17. pulumi_gcp/bigquery/outputs.py +4 -0
  18. pulumi_gcp/bigquery/table.py +62 -0
  19. pulumi_gcp/bigqueryanalyticshub/_inputs.py +180 -0
  20. pulumi_gcp/bigqueryanalyticshub/data_exchange.py +80 -0
  21. pulumi_gcp/bigqueryanalyticshub/listing.py +322 -2
  22. pulumi_gcp/bigqueryanalyticshub/listing_subscription.py +32 -0
  23. pulumi_gcp/bigqueryanalyticshub/outputs.py +159 -0
  24. pulumi_gcp/bigtable/__init__.py +1 -0
  25. pulumi_gcp/bigtable/_inputs.py +33 -0
  26. pulumi_gcp/bigtable/outputs.py +36 -0
  27. pulumi_gcp/bigtable/schema_bundle.py +568 -0
  28. pulumi_gcp/cloudfunctions/_inputs.py +48 -0
  29. pulumi_gcp/cloudfunctions/function.py +94 -0
  30. pulumi_gcp/cloudfunctions/get_function.py +23 -1
  31. pulumi_gcp/cloudfunctions/outputs.py +70 -0
  32. pulumi_gcp/cloudrunv2/_inputs.py +20 -0
  33. pulumi_gcp/cloudrunv2/job.py +2 -0
  34. pulumi_gcp/cloudrunv2/outputs.py +25 -0
  35. pulumi_gcp/cloudrunv2/worker_pool.py +2 -0
  36. pulumi_gcp/compute/__init__.py +1 -0
  37. pulumi_gcp/compute/_inputs.py +713 -22
  38. pulumi_gcp/compute/firewall_policy_with_rules.py +66 -0
  39. pulumi_gcp/compute/forwarding_rule.py +0 -21
  40. pulumi_gcp/compute/get_router.py +12 -1
  41. pulumi_gcp/compute/outputs.py +562 -22
  42. pulumi_gcp/compute/preview_feature.py +396 -0
  43. pulumi_gcp/compute/region_url_map.py +392 -0
  44. pulumi_gcp/compute/reservation.py +4 -4
  45. pulumi_gcp/compute/router.py +54 -0
  46. pulumi_gcp/compute/storage_pool.py +154 -0
  47. pulumi_gcp/compute/subnetwork.py +54 -0
  48. pulumi_gcp/config/__init__.pyi +2 -0
  49. pulumi_gcp/config/vars.py +4 -0
  50. pulumi_gcp/container/_inputs.py +278 -8
  51. pulumi_gcp/container/cluster.py +61 -21
  52. pulumi_gcp/container/get_cluster.py +12 -1
  53. pulumi_gcp/container/outputs.py +352 -8
  54. pulumi_gcp/dataproc/_inputs.py +249 -14
  55. pulumi_gcp/dataproc/batch.py +6 -0
  56. pulumi_gcp/dataproc/cluster.py +2 -0
  57. pulumi_gcp/dataproc/outputs.py +215 -12
  58. pulumi_gcp/dataproc/session_template.py +14 -2
  59. pulumi_gcp/developerconnect/__init__.py +1 -0
  60. pulumi_gcp/developerconnect/_inputs.py +583 -0
  61. pulumi_gcp/developerconnect/insights_config.py +895 -0
  62. pulumi_gcp/developerconnect/outputs.py +442 -0
  63. pulumi_gcp/diagflow/__init__.py +1 -0
  64. pulumi_gcp/diagflow/_inputs.py +1165 -58
  65. pulumi_gcp/diagflow/cx_generator.py +636 -0
  66. pulumi_gcp/diagflow/cx_tool.py +2 -2
  67. pulumi_gcp/diagflow/cx_webhook.py +380 -36
  68. pulumi_gcp/diagflow/outputs.py +848 -25
  69. pulumi_gcp/discoveryengine/__init__.py +2 -0
  70. pulumi_gcp/discoveryengine/_inputs.py +465 -0
  71. pulumi_gcp/discoveryengine/cmek_config.py +707 -0
  72. pulumi_gcp/discoveryengine/outputs.py +412 -0
  73. pulumi_gcp/discoveryengine/recommendation_engine.py +813 -0
  74. pulumi_gcp/firestore/field.py +6 -6
  75. pulumi_gcp/gemini/gemini_gcp_enablement_setting.py +107 -9
  76. pulumi_gcp/gemini/gemini_gcp_enablement_setting_binding.py +2 -2
  77. pulumi_gcp/gkehub/membership_binding.py +6 -6
  78. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  79. pulumi_gcp/gkehub/namespace.py +4 -4
  80. pulumi_gcp/gkehub/scope_rbac_role_binding.py +8 -8
  81. pulumi_gcp/iam/__init__.py +4 -0
  82. pulumi_gcp/iam/_inputs.py +98 -0
  83. pulumi_gcp/iam/get_workforce_pool_iam_policy.py +161 -0
  84. pulumi_gcp/iam/outputs.py +56 -0
  85. pulumi_gcp/iam/workforce_pool_iam_binding.py +761 -0
  86. pulumi_gcp/iam/workforce_pool_iam_member.py +761 -0
  87. pulumi_gcp/iam/workforce_pool_iam_policy.py +600 -0
  88. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  89. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  90. pulumi_gcp/looker/instance.py +28 -7
  91. pulumi_gcp/managedkafka/_inputs.py +127 -0
  92. pulumi_gcp/managedkafka/cluster.py +131 -1
  93. pulumi_gcp/managedkafka/connect_cluster.py +4 -4
  94. pulumi_gcp/managedkafka/connector.py +4 -4
  95. pulumi_gcp/managedkafka/outputs.py +128 -0
  96. pulumi_gcp/memorystore/instance.py +8 -12
  97. pulumi_gcp/modelarmor/__init__.py +1 -0
  98. pulumi_gcp/modelarmor/_inputs.py +683 -0
  99. pulumi_gcp/modelarmor/floorsetting.py +736 -0
  100. pulumi_gcp/modelarmor/outputs.py +618 -0
  101. pulumi_gcp/networkconnectivity/_inputs.py +60 -0
  102. pulumi_gcp/networkconnectivity/internal_range.py +136 -0
  103. pulumi_gcp/networkconnectivity/outputs.py +55 -0
  104. pulumi_gcp/networkconnectivity/spoke.py +14 -14
  105. pulumi_gcp/oracledatabase/__init__.py +2 -0
  106. pulumi_gcp/oracledatabase/autonomous_database.py +262 -38
  107. pulumi_gcp/oracledatabase/cloud_vm_cluster.py +314 -50
  108. pulumi_gcp/oracledatabase/get_autonomous_database.py +23 -1
  109. pulumi_gcp/oracledatabase/get_cloud_vm_cluster.py +34 -1
  110. pulumi_gcp/oracledatabase/odb_network.py +721 -0
  111. pulumi_gcp/oracledatabase/odb_subnet.py +803 -0
  112. pulumi_gcp/oracledatabase/outputs.py +83 -0
  113. pulumi_gcp/orgpolicy/policy.py +2 -2
  114. pulumi_gcp/parametermanager/parameter_version.py +62 -0
  115. pulumi_gcp/parametermanager/regional_parameter_version.py +64 -0
  116. pulumi_gcp/provider.py +20 -0
  117. pulumi_gcp/pubsub/subscription.py +46 -6
  118. pulumi_gcp/pubsub/topic.py +36 -0
  119. pulumi_gcp/pulumi-plugin.json +1 -1
  120. pulumi_gcp/redis/cluster.py +70 -0
  121. pulumi_gcp/redis/get_cluster.py +12 -1
  122. pulumi_gcp/redis/instance.py +8 -12
  123. pulumi_gcp/secretmanager/get_regional_secret.py +12 -1
  124. pulumi_gcp/secretmanager/get_secret.py +12 -1
  125. pulumi_gcp/secretmanager/outputs.py +30 -0
  126. pulumi_gcp/secretmanager/regional_secret.py +61 -0
  127. pulumi_gcp/secretmanager/secret.py +61 -0
  128. pulumi_gcp/securesourcemanager/branch_rule.py +16 -8
  129. pulumi_gcp/securesourcemanager/instance.py +112 -4
  130. pulumi_gcp/securesourcemanager/repository.py +112 -8
  131. pulumi_gcp/serviceaccount/get_account_key.py +1 -0
  132. pulumi_gcp/sql/_inputs.py +6 -6
  133. pulumi_gcp/sql/database.py +0 -12
  134. pulumi_gcp/sql/outputs.py +4 -4
  135. pulumi_gcp/storage/__init__.py +2 -0
  136. pulumi_gcp/storage/_inputs.py +451 -0
  137. pulumi_gcp/storage/bucket.py +7 -7
  138. pulumi_gcp/storage/bucket_object.py +34 -0
  139. pulumi_gcp/storage/get_bucket_object.py +12 -1
  140. pulumi_gcp/storage/get_bucket_object_content.py +12 -1
  141. pulumi_gcp/storage/get_insights_dataset_config.py +363 -0
  142. pulumi_gcp/storage/insights_dataset_config.py +1280 -0
  143. pulumi_gcp/storage/outputs.py +619 -0
  144. pulumi_gcp/vertex/__init__.py +1 -0
  145. pulumi_gcp/vertex/_inputs.py +3646 -3
  146. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  147. pulumi_gcp/vertex/ai_endpoint_with_model_garden_deployment.py +940 -0
  148. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  149. pulumi_gcp/vertex/outputs.py +2609 -2
  150. pulumi_gcp/vmwareengine/network_peering.py +7 -7
  151. pulumi_gcp/workbench/_inputs.py +118 -0
  152. pulumi_gcp/workbench/instance.py +171 -2
  153. pulumi_gcp/workbench/outputs.py +91 -0
  154. {pulumi_gcp-8.40.0a1754636117.dist-info → pulumi_gcp-8.40.0a1754951145.dist-info}/METADATA +1 -1
  155. {pulumi_gcp-8.40.0a1754636117.dist-info → pulumi_gcp-8.40.0a1754951145.dist-info}/RECORD +157 -138
  156. {pulumi_gcp-8.40.0a1754636117.dist-info → pulumi_gcp-8.40.0a1754951145.dist-info}/WHEEL +0 -0
  157. {pulumi_gcp-8.40.0a1754636117.dist-info → pulumi_gcp-8.40.0a1754951145.dist-info}/top_level.txt +0 -0
@@ -87,6 +87,7 @@ class ClusterArgs:
87
87
  private_ipv6_google_access: Optional[pulumi.Input[_builtins.str]] = None,
88
88
  project: Optional[pulumi.Input[_builtins.str]] = None,
89
89
  protect_config: Optional[pulumi.Input['ClusterProtectConfigArgs']] = None,
90
+ rbac_binding_config: Optional[pulumi.Input['ClusterRbacBindingConfigArgs']] = None,
90
91
  release_channel: Optional[pulumi.Input['ClusterReleaseChannelArgs']] = None,
91
92
  remove_default_node_pool: Optional[pulumi.Input[_builtins.bool]] = None,
92
93
  resource_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
@@ -108,9 +109,6 @@ class ClusterArgs:
108
109
  `false`. This field should only be enabled for Autopilot clusters (`enable_autopilot`
109
110
  set to `true`).
110
111
  :param pulumi.Input['ClusterAnonymousAuthenticationConfigArgs'] anonymous_authentication_config: Configuration for [anonymous authentication restrictions](https://cloud.google.com/kubernetes-engine/docs/how-to/hardening-your-cluster#restrict-anon-access). Structure is documented below.
111
-
112
-
113
- <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
114
112
  :param pulumi.Input['ClusterAuthenticatorGroupsConfigArgs'] authenticator_groups_config: Configuration for the
115
113
  [Google Groups for GKE](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control#groups-setup-gsuite) feature.
116
114
  Structure is documented below.
@@ -287,6 +285,9 @@ class ClusterArgs:
287
285
  :param pulumi.Input[_builtins.str] project: The ID of the project in which the resource belongs. If it
288
286
  is not provided, the provider project is used.
289
287
  :param pulumi.Input['ClusterProtectConfigArgs'] protect_config: Enable/Disable Protect API features for the cluster. Structure is documented below.
288
+ :param pulumi.Input['ClusterRbacBindingConfigArgs'] rbac_binding_config: RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings that can be created. Structure is documented below.
289
+
290
+ <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
290
291
  :param pulumi.Input['ClusterReleaseChannelArgs'] release_channel: Configuration options for the [Release channel](https://cloud.google.com/kubernetes-engine/docs/concepts/release-channels)
291
292
  feature, which provide more control over automatic upgrades of your GKE clusters.
292
293
  When updating this field, GKE imposes specific version requirements. See
@@ -455,6 +456,8 @@ class ClusterArgs:
455
456
  pulumi.set(__self__, "project", project)
456
457
  if protect_config is not None:
457
458
  pulumi.set(__self__, "protect_config", protect_config)
459
+ if rbac_binding_config is not None:
460
+ pulumi.set(__self__, "rbac_binding_config", rbac_binding_config)
458
461
  if release_channel is not None:
459
462
  pulumi.set(__self__, "release_channel", release_channel)
460
463
  if remove_default_node_pool is not None:
@@ -514,9 +517,6 @@ class ClusterArgs:
514
517
  def anonymous_authentication_config(self) -> Optional[pulumi.Input['ClusterAnonymousAuthenticationConfigArgs']]:
515
518
  """
516
519
  Configuration for [anonymous authentication restrictions](https://cloud.google.com/kubernetes-engine/docs/how-to/hardening-your-cluster#restrict-anon-access). Structure is documented below.
517
-
518
-
519
- <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
520
520
  """
521
521
  return pulumi.get(self, "anonymous_authentication_config")
522
522
 
@@ -1391,6 +1391,20 @@ class ClusterArgs:
1391
1391
  def protect_config(self, value: Optional[pulumi.Input['ClusterProtectConfigArgs']]):
1392
1392
  pulumi.set(self, "protect_config", value)
1393
1393
 
1394
+ @_builtins.property
1395
+ @pulumi.getter(name="rbacBindingConfig")
1396
+ def rbac_binding_config(self) -> Optional[pulumi.Input['ClusterRbacBindingConfigArgs']]:
1397
+ """
1398
+ RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings that can be created. Structure is documented below.
1399
+
1400
+ <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
1401
+ """
1402
+ return pulumi.get(self, "rbac_binding_config")
1403
+
1404
+ @rbac_binding_config.setter
1405
+ def rbac_binding_config(self, value: Optional[pulumi.Input['ClusterRbacBindingConfigArgs']]):
1406
+ pulumi.set(self, "rbac_binding_config", value)
1407
+
1394
1408
  @_builtins.property
1395
1409
  @pulumi.getter(name="releaseChannel")
1396
1410
  def release_channel(self) -> Optional[pulumi.Input['ClusterReleaseChannelArgs']]:
@@ -1645,6 +1659,7 @@ class _ClusterState:
1645
1659
  project: Optional[pulumi.Input[_builtins.str]] = None,
1646
1660
  protect_config: Optional[pulumi.Input['ClusterProtectConfigArgs']] = None,
1647
1661
  pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1662
+ rbac_binding_config: Optional[pulumi.Input['ClusterRbacBindingConfigArgs']] = None,
1648
1663
  release_channel: Optional[pulumi.Input['ClusterReleaseChannelArgs']] = None,
1649
1664
  remove_default_node_pool: Optional[pulumi.Input[_builtins.bool]] = None,
1650
1665
  resource_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
@@ -1669,9 +1684,6 @@ class _ClusterState:
1669
1684
  `false`. This field should only be enabled for Autopilot clusters (`enable_autopilot`
1670
1685
  set to `true`).
1671
1686
  :param pulumi.Input['ClusterAnonymousAuthenticationConfigArgs'] anonymous_authentication_config: Configuration for [anonymous authentication restrictions](https://cloud.google.com/kubernetes-engine/docs/how-to/hardening-your-cluster#restrict-anon-access). Structure is documented below.
1672
-
1673
-
1674
- <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
1675
1687
  :param pulumi.Input['ClusterAuthenticatorGroupsConfigArgs'] authenticator_groups_config: Configuration for the
1676
1688
  [Google Groups for GKE](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control#groups-setup-gsuite) feature.
1677
1689
  Structure is documented below.
@@ -1855,6 +1867,9 @@ class _ClusterState:
1855
1867
  is not provided, the provider project is used.
1856
1868
  :param pulumi.Input['ClusterProtectConfigArgs'] protect_config: Enable/Disable Protect API features for the cluster. Structure is documented below.
1857
1869
  :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] pulumi_labels: The combination of labels configured directly on the resource and default labels configured on the provider.
1870
+ :param pulumi.Input['ClusterRbacBindingConfigArgs'] rbac_binding_config: RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings that can be created. Structure is documented below.
1871
+
1872
+ <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
1858
1873
  :param pulumi.Input['ClusterReleaseChannelArgs'] release_channel: Configuration options for the [Release channel](https://cloud.google.com/kubernetes-engine/docs/concepts/release-channels)
1859
1874
  feature, which provide more control over automatic upgrades of your GKE clusters.
1860
1875
  When updating this field, GKE imposes specific version requirements. See
@@ -2043,6 +2058,8 @@ class _ClusterState:
2043
2058
  pulumi.set(__self__, "protect_config", protect_config)
2044
2059
  if pulumi_labels is not None:
2045
2060
  pulumi.set(__self__, "pulumi_labels", pulumi_labels)
2061
+ if rbac_binding_config is not None:
2062
+ pulumi.set(__self__, "rbac_binding_config", rbac_binding_config)
2046
2063
  if release_channel is not None:
2047
2064
  pulumi.set(__self__, "release_channel", release_channel)
2048
2065
  if remove_default_node_pool is not None:
@@ -2108,9 +2125,6 @@ class _ClusterState:
2108
2125
  def anonymous_authentication_config(self) -> Optional[pulumi.Input['ClusterAnonymousAuthenticationConfigArgs']]:
2109
2126
  """
2110
2127
  Configuration for [anonymous authentication restrictions](https://cloud.google.com/kubernetes-engine/docs/how-to/hardening-your-cluster#restrict-anon-access). Structure is documented below.
2111
-
2112
-
2113
- <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
2114
2128
  """
2115
2129
  return pulumi.get(self, "anonymous_authentication_config")
2116
2130
 
@@ -3056,6 +3070,20 @@ class _ClusterState:
3056
3070
  def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
3057
3071
  pulumi.set(self, "pulumi_labels", value)
3058
3072
 
3073
+ @_builtins.property
3074
+ @pulumi.getter(name="rbacBindingConfig")
3075
+ def rbac_binding_config(self) -> Optional[pulumi.Input['ClusterRbacBindingConfigArgs']]:
3076
+ """
3077
+ RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings that can be created. Structure is documented below.
3078
+
3079
+ <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
3080
+ """
3081
+ return pulumi.get(self, "rbac_binding_config")
3082
+
3083
+ @rbac_binding_config.setter
3084
+ def rbac_binding_config(self, value: Optional[pulumi.Input['ClusterRbacBindingConfigArgs']]):
3085
+ pulumi.set(self, "rbac_binding_config", value)
3086
+
3059
3087
  @_builtins.property
3060
3088
  @pulumi.getter(name="releaseChannel")
3061
3089
  def release_channel(self) -> Optional[pulumi.Input['ClusterReleaseChannelArgs']]:
@@ -3348,6 +3376,7 @@ class Cluster(pulumi.CustomResource):
3348
3376
  private_ipv6_google_access: Optional[pulumi.Input[_builtins.str]] = None,
3349
3377
  project: Optional[pulumi.Input[_builtins.str]] = None,
3350
3378
  protect_config: Optional[pulumi.Input[Union['ClusterProtectConfigArgs', 'ClusterProtectConfigArgsDict']]] = None,
3379
+ rbac_binding_config: Optional[pulumi.Input[Union['ClusterRbacBindingConfigArgs', 'ClusterRbacBindingConfigArgsDict']]] = None,
3351
3380
  release_channel: Optional[pulumi.Input[Union['ClusterReleaseChannelArgs', 'ClusterReleaseChannelArgsDict']]] = None,
3352
3381
  remove_default_node_pool: Optional[pulumi.Input[_builtins.bool]] = None,
3353
3382
  resource_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
@@ -3491,9 +3520,6 @@ class Cluster(pulumi.CustomResource):
3491
3520
  `false`. This field should only be enabled for Autopilot clusters (`enable_autopilot`
3492
3521
  set to `true`).
3493
3522
  :param pulumi.Input[Union['ClusterAnonymousAuthenticationConfigArgs', 'ClusterAnonymousAuthenticationConfigArgsDict']] anonymous_authentication_config: Configuration for [anonymous authentication restrictions](https://cloud.google.com/kubernetes-engine/docs/how-to/hardening-your-cluster#restrict-anon-access). Structure is documented below.
3494
-
3495
-
3496
- <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
3497
3523
  :param pulumi.Input[Union['ClusterAuthenticatorGroupsConfigArgs', 'ClusterAuthenticatorGroupsConfigArgsDict']] authenticator_groups_config: Configuration for the
3498
3524
  [Google Groups for GKE](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control#groups-setup-gsuite) feature.
3499
3525
  Structure is documented below.
@@ -3670,6 +3696,9 @@ class Cluster(pulumi.CustomResource):
3670
3696
  :param pulumi.Input[_builtins.str] project: The ID of the project in which the resource belongs. If it
3671
3697
  is not provided, the provider project is used.
3672
3698
  :param pulumi.Input[Union['ClusterProtectConfigArgs', 'ClusterProtectConfigArgsDict']] protect_config: Enable/Disable Protect API features for the cluster. Structure is documented below.
3699
+ :param pulumi.Input[Union['ClusterRbacBindingConfigArgs', 'ClusterRbacBindingConfigArgsDict']] rbac_binding_config: RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings that can be created. Structure is documented below.
3700
+
3701
+ <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
3673
3702
  :param pulumi.Input[Union['ClusterReleaseChannelArgs', 'ClusterReleaseChannelArgsDict']] release_channel: Configuration options for the [Release channel](https://cloud.google.com/kubernetes-engine/docs/concepts/release-channels)
3674
3703
  feature, which provide more control over automatic upgrades of your GKE clusters.
3675
3704
  When updating this field, GKE imposes specific version requirements. See
@@ -3914,6 +3943,7 @@ class Cluster(pulumi.CustomResource):
3914
3943
  private_ipv6_google_access: Optional[pulumi.Input[_builtins.str]] = None,
3915
3944
  project: Optional[pulumi.Input[_builtins.str]] = None,
3916
3945
  protect_config: Optional[pulumi.Input[Union['ClusterProtectConfigArgs', 'ClusterProtectConfigArgsDict']]] = None,
3946
+ rbac_binding_config: Optional[pulumi.Input[Union['ClusterRbacBindingConfigArgs', 'ClusterRbacBindingConfigArgsDict']]] = None,
3917
3947
  release_channel: Optional[pulumi.Input[Union['ClusterReleaseChannelArgs', 'ClusterReleaseChannelArgsDict']]] = None,
3918
3948
  remove_default_node_pool: Optional[pulumi.Input[_builtins.bool]] = None,
3919
3949
  resource_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
@@ -4002,6 +4032,7 @@ class Cluster(pulumi.CustomResource):
4002
4032
  __props__.__dict__["private_ipv6_google_access"] = private_ipv6_google_access
4003
4033
  __props__.__dict__["project"] = project
4004
4034
  __props__.__dict__["protect_config"] = protect_config
4035
+ __props__.__dict__["rbac_binding_config"] = rbac_binding_config
4005
4036
  __props__.__dict__["release_channel"] = release_channel
4006
4037
  __props__.__dict__["remove_default_node_pool"] = remove_default_node_pool
4007
4038
  __props__.__dict__["resource_labels"] = resource_labels
@@ -4108,6 +4139,7 @@ class Cluster(pulumi.CustomResource):
4108
4139
  project: Optional[pulumi.Input[_builtins.str]] = None,
4109
4140
  protect_config: Optional[pulumi.Input[Union['ClusterProtectConfigArgs', 'ClusterProtectConfigArgsDict']]] = None,
4110
4141
  pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
4142
+ rbac_binding_config: Optional[pulumi.Input[Union['ClusterRbacBindingConfigArgs', 'ClusterRbacBindingConfigArgsDict']]] = None,
4111
4143
  release_channel: Optional[pulumi.Input[Union['ClusterReleaseChannelArgs', 'ClusterReleaseChannelArgsDict']]] = None,
4112
4144
  remove_default_node_pool: Optional[pulumi.Input[_builtins.bool]] = None,
4113
4145
  resource_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
@@ -4137,9 +4169,6 @@ class Cluster(pulumi.CustomResource):
4137
4169
  `false`. This field should only be enabled for Autopilot clusters (`enable_autopilot`
4138
4170
  set to `true`).
4139
4171
  :param pulumi.Input[Union['ClusterAnonymousAuthenticationConfigArgs', 'ClusterAnonymousAuthenticationConfigArgsDict']] anonymous_authentication_config: Configuration for [anonymous authentication restrictions](https://cloud.google.com/kubernetes-engine/docs/how-to/hardening-your-cluster#restrict-anon-access). Structure is documented below.
4140
-
4141
-
4142
- <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
4143
4172
  :param pulumi.Input[Union['ClusterAuthenticatorGroupsConfigArgs', 'ClusterAuthenticatorGroupsConfigArgsDict']] authenticator_groups_config: Configuration for the
4144
4173
  [Google Groups for GKE](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control#groups-setup-gsuite) feature.
4145
4174
  Structure is documented below.
@@ -4323,6 +4352,9 @@ class Cluster(pulumi.CustomResource):
4323
4352
  is not provided, the provider project is used.
4324
4353
  :param pulumi.Input[Union['ClusterProtectConfigArgs', 'ClusterProtectConfigArgsDict']] protect_config: Enable/Disable Protect API features for the cluster. Structure is documented below.
4325
4354
  :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] pulumi_labels: The combination of labels configured directly on the resource and default labels configured on the provider.
4355
+ :param pulumi.Input[Union['ClusterRbacBindingConfigArgs', 'ClusterRbacBindingConfigArgsDict']] rbac_binding_config: RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings that can be created. Structure is documented below.
4356
+
4357
+ <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
4326
4358
  :param pulumi.Input[Union['ClusterReleaseChannelArgs', 'ClusterReleaseChannelArgsDict']] release_channel: Configuration options for the [Release channel](https://cloud.google.com/kubernetes-engine/docs/concepts/release-channels)
4327
4359
  feature, which provide more control over automatic upgrades of your GKE clusters.
4328
4360
  When updating this field, GKE imposes specific version requirements. See
@@ -4443,6 +4475,7 @@ class Cluster(pulumi.CustomResource):
4443
4475
  __props__.__dict__["project"] = project
4444
4476
  __props__.__dict__["protect_config"] = protect_config
4445
4477
  __props__.__dict__["pulumi_labels"] = pulumi_labels
4478
+ __props__.__dict__["rbac_binding_config"] = rbac_binding_config
4446
4479
  __props__.__dict__["release_channel"] = release_channel
4447
4480
  __props__.__dict__["remove_default_node_pool"] = remove_default_node_pool
4448
4481
  __props__.__dict__["resource_labels"] = resource_labels
@@ -4485,9 +4518,6 @@ class Cluster(pulumi.CustomResource):
4485
4518
  def anonymous_authentication_config(self) -> pulumi.Output['outputs.ClusterAnonymousAuthenticationConfig']:
4486
4519
  """
4487
4520
  Configuration for [anonymous authentication restrictions](https://cloud.google.com/kubernetes-engine/docs/how-to/hardening-your-cluster#restrict-anon-access). Structure is documented below.
4488
-
4489
-
4490
- <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
4491
4521
  """
4492
4522
  return pulumi.get(self, "anonymous_authentication_config")
4493
4523
 
@@ -5153,6 +5183,16 @@ class Cluster(pulumi.CustomResource):
5153
5183
  """
5154
5184
  return pulumi.get(self, "pulumi_labels")
5155
5185
 
5186
+ @_builtins.property
5187
+ @pulumi.getter(name="rbacBindingConfig")
5188
+ def rbac_binding_config(self) -> pulumi.Output['outputs.ClusterRbacBindingConfig']:
5189
+ """
5190
+ RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings that can be created. Structure is documented below.
5191
+
5192
+ <a name="nested_default_snat_status"></a>The `default_snat_status` block supports
5193
+ """
5194
+ return pulumi.get(self, "rbac_binding_config")
5195
+
5156
5196
  @_builtins.property
5157
5197
  @pulumi.getter(name="releaseChannel")
5158
5198
  def release_channel(self) -> pulumi.Output['outputs.ClusterReleaseChannel']:
@@ -27,7 +27,7 @@ class GetClusterResult:
27
27
  """
28
28
  A collection of values returned by getCluster.
29
29
  """
30
- def __init__(__self__, addons_configs=None, allow_net_admin=None, anonymous_authentication_configs=None, authenticator_groups_configs=None, binary_authorizations=None, cluster_autoscalings=None, cluster_ipv4_cidr=None, cluster_telemetries=None, confidential_nodes=None, control_plane_endpoints_configs=None, cost_management_configs=None, database_encryptions=None, datapath_provider=None, default_max_pods_per_node=None, default_snat_statuses=None, deletion_protection=None, description=None, disable_l4_lb_firewall_reconciliation=None, dns_configs=None, effective_labels=None, enable_autopilot=None, enable_cilium_clusterwide_network_policy=None, enable_fqdn_network_policy=None, enable_intranode_visibility=None, enable_k8s_beta_apis=None, enable_kubernetes_alpha=None, enable_l4_ilb_subsetting=None, enable_legacy_abac=None, enable_multi_networking=None, enable_shielded_nodes=None, enable_tpu=None, endpoint=None, enterprise_configs=None, fleets=None, gateway_api_configs=None, gke_auto_upgrade_configs=None, id=None, identity_service_configs=None, in_transit_encryption_config=None, initial_node_count=None, ip_allocation_policies=None, label_fingerprint=None, location=None, logging_configs=None, logging_service=None, maintenance_policies=None, master_authorized_networks_configs=None, master_auths=None, master_version=None, mesh_certificates=None, min_master_version=None, monitoring_configs=None, monitoring_service=None, name=None, network=None, network_performance_configs=None, network_policies=None, networking_mode=None, node_configs=None, node_locations=None, node_pool_auto_configs=None, node_pool_defaults=None, node_pools=None, node_version=None, notification_configs=None, operation=None, pod_autoscalings=None, pod_security_policy_configs=None, private_cluster_configs=None, private_ipv6_google_access=None, project=None, protect_configs=None, pulumi_labels=None, release_channels=None, remove_default_node_pool=None, resource_labels=None, resource_usage_export_configs=None, secret_manager_configs=None, security_posture_configs=None, self_link=None, service_external_ips_configs=None, services_ipv4_cidr=None, subnetwork=None, tpu_configs=None, tpu_ipv4_cidr_block=None, user_managed_keys_configs=None, vertical_pod_autoscalings=None, workload_alts_configs=None, workload_identity_configs=None):
30
+ def __init__(__self__, addons_configs=None, allow_net_admin=None, anonymous_authentication_configs=None, authenticator_groups_configs=None, binary_authorizations=None, cluster_autoscalings=None, cluster_ipv4_cidr=None, cluster_telemetries=None, confidential_nodes=None, control_plane_endpoints_configs=None, cost_management_configs=None, database_encryptions=None, datapath_provider=None, default_max_pods_per_node=None, default_snat_statuses=None, deletion_protection=None, description=None, disable_l4_lb_firewall_reconciliation=None, dns_configs=None, effective_labels=None, enable_autopilot=None, enable_cilium_clusterwide_network_policy=None, enable_fqdn_network_policy=None, enable_intranode_visibility=None, enable_k8s_beta_apis=None, enable_kubernetes_alpha=None, enable_l4_ilb_subsetting=None, enable_legacy_abac=None, enable_multi_networking=None, enable_shielded_nodes=None, enable_tpu=None, endpoint=None, enterprise_configs=None, fleets=None, gateway_api_configs=None, gke_auto_upgrade_configs=None, id=None, identity_service_configs=None, in_transit_encryption_config=None, initial_node_count=None, ip_allocation_policies=None, label_fingerprint=None, location=None, logging_configs=None, logging_service=None, maintenance_policies=None, master_authorized_networks_configs=None, master_auths=None, master_version=None, mesh_certificates=None, min_master_version=None, monitoring_configs=None, monitoring_service=None, name=None, network=None, network_performance_configs=None, network_policies=None, networking_mode=None, node_configs=None, node_locations=None, node_pool_auto_configs=None, node_pool_defaults=None, node_pools=None, node_version=None, notification_configs=None, operation=None, pod_autoscalings=None, pod_security_policy_configs=None, private_cluster_configs=None, private_ipv6_google_access=None, project=None, protect_configs=None, pulumi_labels=None, rbac_binding_configs=None, release_channels=None, remove_default_node_pool=None, resource_labels=None, resource_usage_export_configs=None, secret_manager_configs=None, security_posture_configs=None, self_link=None, service_external_ips_configs=None, services_ipv4_cidr=None, subnetwork=None, tpu_configs=None, tpu_ipv4_cidr_block=None, user_managed_keys_configs=None, vertical_pod_autoscalings=None, workload_alts_configs=None, workload_identity_configs=None):
31
31
  if addons_configs and not isinstance(addons_configs, list):
32
32
  raise TypeError("Expected argument 'addons_configs' to be a list")
33
33
  pulumi.set(__self__, "addons_configs", addons_configs)
@@ -247,6 +247,9 @@ class GetClusterResult:
247
247
  if pulumi_labels and not isinstance(pulumi_labels, dict):
248
248
  raise TypeError("Expected argument 'pulumi_labels' to be a dict")
249
249
  pulumi.set(__self__, "pulumi_labels", pulumi_labels)
250
+ if rbac_binding_configs and not isinstance(rbac_binding_configs, list):
251
+ raise TypeError("Expected argument 'rbac_binding_configs' to be a list")
252
+ pulumi.set(__self__, "rbac_binding_configs", rbac_binding_configs)
250
253
  if release_channels and not isinstance(release_channels, list):
251
254
  raise TypeError("Expected argument 'release_channels' to be a list")
252
255
  pulumi.set(__self__, "release_channels", release_channels)
@@ -664,6 +667,11 @@ class GetClusterResult:
664
667
  def pulumi_labels(self) -> Mapping[str, _builtins.str]:
665
668
  return pulumi.get(self, "pulumi_labels")
666
669
 
670
+ @_builtins.property
671
+ @pulumi.getter(name="rbacBindingConfigs")
672
+ def rbac_binding_configs(self) -> Sequence['outputs.GetClusterRbacBindingConfigResult']:
673
+ return pulumi.get(self, "rbac_binding_configs")
674
+
667
675
  @_builtins.property
668
676
  @pulumi.getter(name="releaseChannels")
669
677
  def release_channels(self) -> Sequence['outputs.GetClusterReleaseChannelResult']:
@@ -824,6 +832,7 @@ class AwaitableGetClusterResult(GetClusterResult):
824
832
  project=self.project,
825
833
  protect_configs=self.protect_configs,
826
834
  pulumi_labels=self.pulumi_labels,
835
+ rbac_binding_configs=self.rbac_binding_configs,
827
836
  release_channels=self.release_channels,
828
837
  remove_default_node_pool=self.remove_default_node_pool,
829
838
  resource_labels=self.resource_labels,
@@ -952,6 +961,7 @@ def get_cluster(location: Optional[_builtins.str] = None,
952
961
  project=pulumi.get(__ret__, 'project'),
953
962
  protect_configs=pulumi.get(__ret__, 'protect_configs'),
954
963
  pulumi_labels=pulumi.get(__ret__, 'pulumi_labels'),
964
+ rbac_binding_configs=pulumi.get(__ret__, 'rbac_binding_configs'),
955
965
  release_channels=pulumi.get(__ret__, 'release_channels'),
956
966
  remove_default_node_pool=pulumi.get(__ret__, 'remove_default_node_pool'),
957
967
  resource_labels=pulumi.get(__ret__, 'resource_labels'),
@@ -1077,6 +1087,7 @@ def get_cluster_output(location: Optional[pulumi.Input[Optional[_builtins.str]]]
1077
1087
  project=pulumi.get(__response__, 'project'),
1078
1088
  protect_configs=pulumi.get(__response__, 'protect_configs'),
1079
1089
  pulumi_labels=pulumi.get(__response__, 'pulumi_labels'),
1090
+ rbac_binding_configs=pulumi.get(__response__, 'rbac_binding_configs'),
1080
1091
  release_channels=pulumi.get(__response__, 'release_channels'),
1081
1092
  remove_default_node_pool=pulumi.get(__response__, 'remove_default_node_pool'),
1082
1093
  resource_labels=pulumi.get(__response__, 'resource_labels'),