pulumi-gcp 8.42.0a1758178363__py3-none-any.whl → 9.0.0a1758219982__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 (271) hide show
  1. pulumi_gcp/__init__.py +83 -48
  2. pulumi_gcp/activedirectory/peering.py +16 -0
  3. pulumi_gcp/alloydb/backup.py +8 -4
  4. pulumi_gcp/alloydb/cluster.py +56 -10
  5. pulumi_gcp/alloydb/get_cluster.py +12 -1
  6. pulumi_gcp/alloydb/instance.py +10 -4
  7. pulumi_gcp/alloydb/user.py +8 -4
  8. pulumi_gcp/apigateway/api_config_iam_binding.py +4 -4
  9. pulumi_gcp/apigateway/api_config_iam_member.py +4 -4
  10. pulumi_gcp/apigateway/api_config_iam_policy.py +4 -4
  11. pulumi_gcp/apigateway/api_iam_binding.py +4 -4
  12. pulumi_gcp/apigateway/api_iam_member.py +4 -4
  13. pulumi_gcp/apigateway/api_iam_policy.py +4 -4
  14. pulumi_gcp/apigateway/gateway_iam_binding.py +4 -4
  15. pulumi_gcp/apigateway/gateway_iam_member.py +4 -4
  16. pulumi_gcp/apigateway/gateway_iam_policy.py +4 -4
  17. pulumi_gcp/apigee/_inputs.py +151 -108
  18. pulumi_gcp/apigee/keystores_aliases_key_cert_file.py +52 -40
  19. pulumi_gcp/apigee/outputs.py +92 -88
  20. pulumi_gcp/artifactregistry/__init__.py +2 -0
  21. pulumi_gcp/artifactregistry/_inputs.py +0 -12
  22. pulumi_gcp/artifactregistry/get_npm_package.py +251 -0
  23. pulumi_gcp/artifactregistry/get_python_package.py +237 -0
  24. pulumi_gcp/artifactregistry/get_repository.py +12 -1
  25. pulumi_gcp/artifactregistry/outputs.py +8 -16
  26. pulumi_gcp/artifactregistry/repository.py +28 -0
  27. pulumi_gcp/backupdisasterrecovery/__init__.py +1 -0
  28. pulumi_gcp/backupdisasterrecovery/backup_plan.py +4 -4
  29. pulumi_gcp/backupdisasterrecovery/get_backup.py +12 -1
  30. pulumi_gcp/backupdisasterrecovery/get_backup_plan_association.py +4 -0
  31. pulumi_gcp/backupdisasterrecovery/get_data_source_references.py +135 -0
  32. pulumi_gcp/backupdisasterrecovery/get_management_server.py +4 -0
  33. pulumi_gcp/backupdisasterrecovery/outputs.py +103 -0
  34. pulumi_gcp/beyondcorp/__init__.py +0 -5
  35. pulumi_gcp/beyondcorp/_inputs.py +0 -312
  36. pulumi_gcp/beyondcorp/outputs.py +0 -200
  37. pulumi_gcp/bigquery/_inputs.py +114 -4
  38. pulumi_gcp/bigquery/app_profile.py +3 -5
  39. pulumi_gcp/bigquery/outputs.py +75 -5
  40. pulumi_gcp/bigqueryanalyticshub/data_exchange_subscription.py +20 -0
  41. pulumi_gcp/bigtable/app_profile.py +1 -1
  42. pulumi_gcp/bigtable/get_table_iam_policy.py +16 -18
  43. pulumi_gcp/bigtable/table_iam_binding.py +43 -43
  44. pulumi_gcp/bigtable/table_iam_member.py +43 -43
  45. pulumi_gcp/bigtable/table_iam_policy.py +43 -43
  46. pulumi_gcp/billing/_inputs.py +0 -6
  47. pulumi_gcp/billing/outputs.py +0 -4
  48. pulumi_gcp/certificatemanager/__init__.py +1 -0
  49. pulumi_gcp/certificatemanager/certificate_map_entry.py +7 -7
  50. pulumi_gcp/certificatemanager/get_dns_authorization.py +229 -0
  51. pulumi_gcp/certificatemanager/outputs.py +41 -0
  52. pulumi_gcp/chronicle/_inputs.py +6 -5
  53. pulumi_gcp/chronicle/outputs.py +4 -3
  54. pulumi_gcp/chronicle/reference_list.py +53 -5
  55. pulumi_gcp/cloudasset/get_resources_search_all.py +8 -0
  56. pulumi_gcp/cloudbuild/_inputs.py +309 -45
  57. pulumi_gcp/cloudbuild/bitbucket_server_config.py +2 -6
  58. pulumi_gcp/cloudbuild/get_trigger.py +12 -1
  59. pulumi_gcp/cloudbuild/outputs.py +380 -30
  60. pulumi_gcp/cloudbuild/trigger.py +160 -2
  61. pulumi_gcp/cloudbuild/worker_pool.py +2 -6
  62. pulumi_gcp/cloudfunctionsv2/_inputs.py +23 -21
  63. pulumi_gcp/cloudfunctionsv2/outputs.py +17 -16
  64. pulumi_gcp/cloudquota/s_quota_adjuster_settings.py +16 -0
  65. pulumi_gcp/cloudrunv2/_inputs.py +80 -26
  66. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  67. pulumi_gcp/cloudrunv2/outputs.py +109 -30
  68. pulumi_gcp/cloudrunv2/service.py +72 -12
  69. pulumi_gcp/cloudrunv2/worker_pool.py +2 -2
  70. pulumi_gcp/cloudtasks/queue.py +98 -2
  71. pulumi_gcp/colab/_inputs.py +1 -114
  72. pulumi_gcp/colab/outputs.py +1 -106
  73. pulumi_gcp/compute/_inputs.py +884 -24
  74. pulumi_gcp/compute/backend_bucket.py +68 -0
  75. pulumi_gcp/compute/backend_bucket_iam_binding.py +236 -0
  76. pulumi_gcp/compute/backend_bucket_iam_member.py +236 -0
  77. pulumi_gcp/compute/backend_bucket_iam_policy.py +236 -0
  78. pulumi_gcp/compute/backend_service.py +54 -0
  79. pulumi_gcp/compute/backend_service_iam_binding.py +464 -0
  80. pulumi_gcp/compute/backend_service_iam_member.py +464 -0
  81. pulumi_gcp/compute/backend_service_iam_policy.py +464 -0
  82. pulumi_gcp/compute/cross_site_network.py +16 -0
  83. pulumi_gcp/compute/future_reservation.py +32 -0
  84. pulumi_gcp/compute/get_backend_bucket.py +12 -1
  85. pulumi_gcp/compute/get_backend_service.py +12 -1
  86. pulumi_gcp/compute/get_region_backend_service.py +12 -1
  87. pulumi_gcp/compute/get_resource_policy.py +2 -20
  88. pulumi_gcp/compute/machine_image_iam_binding.py +8 -4
  89. pulumi_gcp/compute/machine_image_iam_member.py +8 -4
  90. pulumi_gcp/compute/machine_image_iam_policy.py +8 -4
  91. pulumi_gcp/compute/network_edge_security_service.py +16 -0
  92. pulumi_gcp/compute/network_firewall_policy_packet_mirroring_rule.py +12 -0
  93. pulumi_gcp/compute/network_peering_routes_config.py +0 -100
  94. pulumi_gcp/compute/organization_security_policy.py +83 -51
  95. pulumi_gcp/compute/outputs.py +799 -16
  96. pulumi_gcp/compute/packet_mirroring.py +6 -0
  97. pulumi_gcp/compute/preview_feature.py +16 -0
  98. pulumi_gcp/compute/public_delegated_prefix.py +42 -0
  99. pulumi_gcp/compute/region_backend_service.py +54 -0
  100. pulumi_gcp/compute/region_backend_service_iam_binding.py +488 -0
  101. pulumi_gcp/compute/region_backend_service_iam_member.py +488 -0
  102. pulumi_gcp/compute/region_backend_service_iam_policy.py +488 -0
  103. pulumi_gcp/compute/region_network_endpoint_group.py +1 -3
  104. pulumi_gcp/compute/region_resize_request.py +24 -0
  105. pulumi_gcp/compute/region_url_map.py +75 -0
  106. pulumi_gcp/compute/subnetwork.py +0 -98
  107. pulumi_gcp/compute/wire_group.py +16 -0
  108. pulumi_gcp/config/__init__.pyi +2 -2
  109. pulumi_gcp/config/vars.py +4 -4
  110. pulumi_gcp/container/_inputs.py +466 -18
  111. pulumi_gcp/container/cluster.py +16 -7
  112. pulumi_gcp/container/outputs.py +448 -15
  113. pulumi_gcp/databasemigrationservice/connection_profile.py +4 -2
  114. pulumi_gcp/databasemigrationservice/migration_job.py +4 -2
  115. pulumi_gcp/dataflow/flex_template_job.py +10 -0
  116. pulumi_gcp/dataform/repository.py +16 -0
  117. pulumi_gcp/dataform/repository_release_config.py +16 -0
  118. pulumi_gcp/dataform/repository_workflow_config.py +16 -0
  119. pulumi_gcp/diagflow/_inputs.py +152 -0
  120. pulumi_gcp/diagflow/cx_agent.py +425 -0
  121. pulumi_gcp/diagflow/outputs.py +143 -0
  122. pulumi_gcp/discoveryengine/__init__.py +1 -0
  123. pulumi_gcp/discoveryengine/_inputs.py +94 -0
  124. pulumi_gcp/discoveryengine/acl_config.py +393 -0
  125. pulumi_gcp/discoveryengine/outputs.py +92 -0
  126. pulumi_gcp/firebase/android_app.py +16 -0
  127. pulumi_gcp/firebase/app_check_play_integrity_config.py +4 -8
  128. pulumi_gcp/firebase/app_check_recaptcha_enterprise_config.py +2 -4
  129. pulumi_gcp/firebase/app_check_service_config.py +6 -12
  130. pulumi_gcp/firebase/app_hosting_backend.py +4 -8
  131. pulumi_gcp/firebase/app_hosting_build.py +4 -8
  132. pulumi_gcp/firebase/app_hosting_traffic.py +6 -12
  133. pulumi_gcp/firebase/apple_app.py +16 -0
  134. pulumi_gcp/firebase/data_connect_service.py +4 -8
  135. pulumi_gcp/firebase/database_instance.py +20 -8
  136. pulumi_gcp/firebase/extensions_instance.py +12 -0
  137. pulumi_gcp/firebase/get_android_app.py +4 -2
  138. pulumi_gcp/firebase/get_apple_app.py +4 -2
  139. pulumi_gcp/firebase/get_apple_app_config.py +16 -2
  140. pulumi_gcp/firebase/get_hosting_channel.py +4 -2
  141. pulumi_gcp/firebase/hosting_channel.py +20 -0
  142. pulumi_gcp/firebase/hosting_custom_domain.py +20 -0
  143. pulumi_gcp/firebase/hosting_release.py +16 -0
  144. pulumi_gcp/firebase/hosting_site.py +16 -0
  145. pulumi_gcp/firebase/hosting_version.py +16 -0
  146. pulumi_gcp/firebase/storage_bucket.py +18 -0
  147. pulumi_gcp/firestore/index.py +118 -3
  148. pulumi_gcp/folder/service_identity.py +26 -0
  149. pulumi_gcp/gkehub/_inputs.py +0 -60
  150. pulumi_gcp/gkehub/get_membership.py +1 -12
  151. pulumi_gcp/gkehub/membership.py +0 -70
  152. pulumi_gcp/gkehub/membership_rbac_role_binding.py +16 -0
  153. pulumi_gcp/gkehub/outputs.py +0 -36
  154. pulumi_gcp/healthcare/_inputs.py +205 -0
  155. pulumi_gcp/healthcare/fhir_store.py +128 -0
  156. pulumi_gcp/healthcare/outputs.py +163 -0
  157. pulumi_gcp/iam/workload_identity_pool_iam_binding.py +464 -0
  158. pulumi_gcp/iam/workload_identity_pool_iam_member.py +464 -0
  159. pulumi_gcp/iam/workload_identity_pool_iam_policy.py +464 -0
  160. pulumi_gcp/iam/workload_identity_pool_managed_identity.py +18 -0
  161. pulumi_gcp/iam/workload_identity_pool_namespace.py +20 -0
  162. pulumi_gcp/iap/__init__.py +8 -0
  163. pulumi_gcp/iap/_inputs.py +260 -0
  164. pulumi_gcp/iap/get_web_forwarding_rule_service_iam_policy.py +159 -0
  165. pulumi_gcp/iap/get_web_region_forwarding_rule_service_iam_policy.py +182 -0
  166. pulumi_gcp/iap/outputs.py +152 -0
  167. pulumi_gcp/{beyondcorp/application_iam_binding.py → iap/web_forwarding_rule_service_iam_binding.py} +233 -315
  168. pulumi_gcp/{beyondcorp/application_iam_member.py → iap/web_forwarding_rule_service_iam_member.py} +233 -315
  169. pulumi_gcp/{beyondcorp/application_iam_policy.py → iap/web_forwarding_rule_service_iam_policy.py} +212 -294
  170. pulumi_gcp/iap/web_region_forwarding_rule_service_iam_binding.py +1091 -0
  171. pulumi_gcp/iap/web_region_forwarding_rule_service_iam_member.py +1091 -0
  172. pulumi_gcp/iap/web_region_forwarding_rule_service_iam_policy.py +910 -0
  173. pulumi_gcp/kms/autokey_config.py +0 -2
  174. pulumi_gcp/kms/get_kms_secret_asymmetric.py +22 -0
  175. pulumi_gcp/kms/key_handle.py +0 -2
  176. pulumi_gcp/logging/organization_sink.py +7 -7
  177. pulumi_gcp/managedkafka/connect_cluster.py +4 -0
  178. pulumi_gcp/managedkafka/connector.py +4 -0
  179. pulumi_gcp/memorystore/get_instance.py +1 -12
  180. pulumi_gcp/memorystore/instance.py +14 -84
  181. pulumi_gcp/netapp/storage_pool.py +91 -2
  182. pulumi_gcp/netapp/volume.py +47 -0
  183. pulumi_gcp/networkmanagement/__init__.py +1 -0
  184. pulumi_gcp/networkmanagement/organization_vpc_flow_logs_config.py +1028 -0
  185. pulumi_gcp/networksecurity/authorization_policy.py +12 -0
  186. pulumi_gcp/networkservices/gateway.py +7 -7
  187. pulumi_gcp/networkservices/lb_traffic_extension.py +24 -23
  188. pulumi_gcp/networkservices/service_lb_policies.py +12 -0
  189. pulumi_gcp/notebooks/__init__.py +0 -1
  190. pulumi_gcp/oracledatabase/autonomous_database.py +2 -2
  191. pulumi_gcp/oracledatabase/cloud_vm_cluster.py +3 -3
  192. pulumi_gcp/projects/service.py +2 -11
  193. pulumi_gcp/provider.py +20 -20
  194. pulumi_gcp/pulumi-plugin.json +1 -1
  195. pulumi_gcp/redis/cluster.py +0 -70
  196. pulumi_gcp/redis/get_cluster.py +1 -12
  197. pulumi_gcp/resourcemanager/capability.py +16 -0
  198. pulumi_gcp/runtimeconfig/config.py +16 -0
  199. pulumi_gcp/runtimeconfig/config_iam_binding.py +236 -0
  200. pulumi_gcp/runtimeconfig/config_iam_member.py +236 -0
  201. pulumi_gcp/runtimeconfig/config_iam_policy.py +236 -0
  202. pulumi_gcp/runtimeconfig/variable.py +10 -0
  203. pulumi_gcp/saasruntime/__init__.py +12 -0
  204. pulumi_gcp/saasruntime/_inputs.py +513 -0
  205. pulumi_gcp/saasruntime/outputs.py +431 -0
  206. pulumi_gcp/saasruntime/saa_s.py +819 -0
  207. pulumi_gcp/saasruntime/unit_kind.py +1024 -0
  208. pulumi_gcp/securesourcemanager/_inputs.py +20 -19
  209. pulumi_gcp/securesourcemanager/instance.py +7 -7
  210. pulumi_gcp/securesourcemanager/outputs.py +15 -14
  211. pulumi_gcp/securesourcemanager/repository.py +7 -7
  212. pulumi_gcp/serviceaccount/get_account_key.py +1 -21
  213. pulumi_gcp/servicedirectory/namespace_iam_binding.py +4 -4
  214. pulumi_gcp/servicedirectory/namespace_iam_member.py +4 -4
  215. pulumi_gcp/servicedirectory/namespace_iam_policy.py +4 -4
  216. pulumi_gcp/servicedirectory/service_iam_binding.py +4 -4
  217. pulumi_gcp/servicedirectory/service_iam_member.py +4 -4
  218. pulumi_gcp/servicedirectory/service_iam_policy.py +4 -4
  219. pulumi_gcp/sql/_inputs.py +135 -1
  220. pulumi_gcp/sql/database_instance.py +94 -0
  221. pulumi_gcp/sql/get_database_instance.py +23 -1
  222. pulumi_gcp/sql/outputs.py +276 -3
  223. pulumi_gcp/sql/user.py +61 -0
  224. pulumi_gcp/storage/_inputs.py +253 -7
  225. pulumi_gcp/storage/bucket_object.py +0 -9
  226. pulumi_gcp/storage/outputs.py +198 -8
  227. pulumi_gcp/storage/transfer_job.py +47 -0
  228. pulumi_gcp/tpu/__init__.py +0 -2
  229. pulumi_gcp/tpu/_inputs.py +0 -93
  230. pulumi_gcp/tpu/outputs.py +0 -72
  231. pulumi_gcp/tpu/v2_queued_resource.py +16 -0
  232. pulumi_gcp/tpu/v2_vm.py +16 -0
  233. pulumi_gcp/vertex/_inputs.py +8 -9
  234. pulumi_gcp/vertex/ai_endpoint.py +2 -4
  235. pulumi_gcp/vertex/ai_feature_group_iam_binding.py +236 -0
  236. pulumi_gcp/vertex/ai_feature_group_iam_member.py +236 -0
  237. pulumi_gcp/vertex/ai_feature_group_iam_policy.py +236 -0
  238. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +0 -2
  239. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_binding.py +248 -0
  240. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_member.py +248 -0
  241. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_policy.py +248 -0
  242. pulumi_gcp/vertex/ai_feature_online_store_iam_binding.py +236 -0
  243. pulumi_gcp/vertex/ai_feature_online_store_iam_member.py +236 -0
  244. pulumi_gcp/vertex/ai_feature_online_store_iam_policy.py +236 -0
  245. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_binding.py +238 -0
  246. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_member.py +238 -0
  247. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_policy.py +238 -0
  248. pulumi_gcp/vertex/ai_feature_store_iam_binding.py +248 -0
  249. pulumi_gcp/vertex/ai_feature_store_iam_member.py +248 -0
  250. pulumi_gcp/vertex/ai_feature_store_iam_policy.py +248 -0
  251. pulumi_gcp/vertex/ai_index.py +24 -23
  252. pulumi_gcp/vertex/ai_metadata_store.py +16 -0
  253. pulumi_gcp/vertex/outputs.py +7 -8
  254. pulumi_gcp/workstations/workstation.py +16 -0
  255. pulumi_gcp/workstations/workstation_cluster.py +16 -0
  256. pulumi_gcp/workstations/workstation_config.py +16 -0
  257. pulumi_gcp/workstations/workstation_config_iam_binding.py +260 -0
  258. pulumi_gcp/workstations/workstation_config_iam_member.py +260 -0
  259. pulumi_gcp/workstations/workstation_config_iam_policy.py +260 -0
  260. pulumi_gcp/workstations/workstation_iam_binding.py +272 -0
  261. pulumi_gcp/workstations/workstation_iam_member.py +272 -0
  262. pulumi_gcp/workstations/workstation_iam_policy.py +272 -0
  263. {pulumi_gcp-8.42.0a1758178363.dist-info → pulumi_gcp-9.0.0a1758219982.dist-info}/METADATA +1 -1
  264. {pulumi_gcp-8.42.0a1758178363.dist-info → pulumi_gcp-9.0.0a1758219982.dist-info}/RECORD +266 -255
  265. pulumi_gcp/beyondcorp/application.py +0 -746
  266. pulumi_gcp/beyondcorp/get_application_iam_policy.py +0 -182
  267. pulumi_gcp/notebooks/location.py +0 -285
  268. pulumi_gcp/tpu/get_tensorflow_versions.py +0 -184
  269. pulumi_gcp/tpu/node.py +0 -1062
  270. {pulumi_gcp-8.42.0a1758178363.dist-info → pulumi_gcp-9.0.0a1758219982.dist-info}/WHEEL +0 -0
  271. {pulumi_gcp-8.42.0a1758178363.dist-info → pulumi_gcp-9.0.0a1758219982.dist-info}/top_level.txt +0 -0
@@ -22,7 +22,6 @@ __all__ = ['ClusterArgs', 'Cluster']
22
22
  class ClusterArgs:
23
23
  def __init__(__self__, *,
24
24
  shard_count: pulumi.Input[_builtins.int],
25
- allow_fewer_zones_deployment: Optional[pulumi.Input[_builtins.bool]] = None,
26
25
  authorization_mode: Optional[pulumi.Input[_builtins.str]] = None,
27
26
  automated_backup_config: Optional[pulumi.Input['ClusterAutomatedBackupConfigArgs']] = None,
28
27
  cross_cluster_replication_config: Optional[pulumi.Input['ClusterCrossClusterReplicationConfigArgs']] = None,
@@ -44,10 +43,6 @@ class ClusterArgs:
44
43
  """
45
44
  The set of arguments for constructing a Cluster resource.
46
45
  :param pulumi.Input[_builtins.int] shard_count: Required. Number of shards for the Redis cluster.
47
- :param pulumi.Input[_builtins.bool] allow_fewer_zones_deployment: Allows customers to specify if they are okay with deploying a multi-zone
48
- cluster in less than 3 zones. Once set, if there is a zonal outage during
49
- the cluster creation, the cluster will only be deployed in 2 zones, and
50
- stay within the 2 zones for its lifecycle.
51
46
  :param pulumi.Input[_builtins.str] authorization_mode: Optional. The authorization mode of the Redis cluster. If not provided, auth feature is disabled for the cluster.
52
47
  Default value is `AUTH_MODE_DISABLED`.
53
48
  Possible values are: `AUTH_MODE_UNSPECIFIED`, `AUTH_MODE_IAM_AUTH`, `AUTH_MODE_DISABLED`.
@@ -91,8 +86,6 @@ class ClusterArgs:
91
86
  Structure is documented below.
92
87
  """
93
88
  pulumi.set(__self__, "shard_count", shard_count)
94
- if allow_fewer_zones_deployment is not None:
95
- pulumi.set(__self__, "allow_fewer_zones_deployment", allow_fewer_zones_deployment)
96
89
  if authorization_mode is not None:
97
90
  pulumi.set(__self__, "authorization_mode", authorization_mode)
98
91
  if automated_backup_config is not None:
@@ -142,21 +135,6 @@ class ClusterArgs:
142
135
  def shard_count(self, value: pulumi.Input[_builtins.int]):
143
136
  pulumi.set(self, "shard_count", value)
144
137
 
145
- @_builtins.property
146
- @pulumi.getter(name="allowFewerZonesDeployment")
147
- def allow_fewer_zones_deployment(self) -> Optional[pulumi.Input[_builtins.bool]]:
148
- """
149
- Allows customers to specify if they are okay with deploying a multi-zone
150
- cluster in less than 3 zones. Once set, if there is a zonal outage during
151
- the cluster creation, the cluster will only be deployed in 2 zones, and
152
- stay within the 2 zones for its lifecycle.
153
- """
154
- return pulumi.get(self, "allow_fewer_zones_deployment")
155
-
156
- @allow_fewer_zones_deployment.setter
157
- def allow_fewer_zones_deployment(self, value: Optional[pulumi.Input[_builtins.bool]]):
158
- pulumi.set(self, "allow_fewer_zones_deployment", value)
159
-
160
138
  @_builtins.property
161
139
  @pulumi.getter(name="authorizationMode")
162
140
  def authorization_mode(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -400,7 +378,6 @@ class ClusterArgs:
400
378
  @pulumi.input_type
401
379
  class _ClusterState:
402
380
  def __init__(__self__, *,
403
- allow_fewer_zones_deployment: Optional[pulumi.Input[_builtins.bool]] = None,
404
381
  authorization_mode: Optional[pulumi.Input[_builtins.str]] = None,
405
382
  automated_backup_config: Optional[pulumi.Input['ClusterAutomatedBackupConfigArgs']] = None,
406
383
  backup_collection: Optional[pulumi.Input[_builtins.str]] = None,
@@ -434,10 +411,6 @@ class _ClusterState:
434
411
  zone_distribution_config: Optional[pulumi.Input['ClusterZoneDistributionConfigArgs']] = None):
435
412
  """
436
413
  Input properties used for looking up and filtering Cluster resources.
437
- :param pulumi.Input[_builtins.bool] allow_fewer_zones_deployment: Allows customers to specify if they are okay with deploying a multi-zone
438
- cluster in less than 3 zones. Once set, if there is a zonal outage during
439
- the cluster creation, the cluster will only be deployed in 2 zones, and
440
- stay within the 2 zones for its lifecycle.
441
414
  :param pulumi.Input[_builtins.str] authorization_mode: Optional. The authorization mode of the Redis cluster. If not provided, auth feature is disabled for the cluster.
442
415
  Default value is `AUTH_MODE_DISABLED`.
443
416
  Possible values are: `AUTH_MODE_UNSPECIFIED`, `AUTH_MODE_IAM_AUTH`, `AUTH_MODE_DISABLED`.
@@ -504,8 +477,6 @@ class _ClusterState:
504
477
  :param pulumi.Input['ClusterZoneDistributionConfigArgs'] zone_distribution_config: Immutable. Zone distribution config for Memorystore Redis cluster.
505
478
  Structure is documented below.
506
479
  """
507
- if allow_fewer_zones_deployment is not None:
508
- pulumi.set(__self__, "allow_fewer_zones_deployment", allow_fewer_zones_deployment)
509
480
  if authorization_mode is not None:
510
481
  pulumi.set(__self__, "authorization_mode", authorization_mode)
511
482
  if automated_backup_config is not None:
@@ -569,21 +540,6 @@ class _ClusterState:
569
540
  if zone_distribution_config is not None:
570
541
  pulumi.set(__self__, "zone_distribution_config", zone_distribution_config)
571
542
 
572
- @_builtins.property
573
- @pulumi.getter(name="allowFewerZonesDeployment")
574
- def allow_fewer_zones_deployment(self) -> Optional[pulumi.Input[_builtins.bool]]:
575
- """
576
- Allows customers to specify if they are okay with deploying a multi-zone
577
- cluster in less than 3 zones. Once set, if there is a zonal outage during
578
- the cluster creation, the cluster will only be deployed in 2 zones, and
579
- stay within the 2 zones for its lifecycle.
580
- """
581
- return pulumi.get(self, "allow_fewer_zones_deployment")
582
-
583
- @allow_fewer_zones_deployment.setter
584
- def allow_fewer_zones_deployment(self, value: Optional[pulumi.Input[_builtins.bool]]):
585
- pulumi.set(self, "allow_fewer_zones_deployment", value)
586
-
587
543
  @_builtins.property
588
544
  @pulumi.getter(name="authorizationMode")
589
545
  def authorization_mode(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -997,7 +953,6 @@ class Cluster(pulumi.CustomResource):
997
953
  def __init__(__self__,
998
954
  resource_name: str,
999
955
  opts: Optional[pulumi.ResourceOptions] = None,
1000
- allow_fewer_zones_deployment: Optional[pulumi.Input[_builtins.bool]] = None,
1001
956
  authorization_mode: Optional[pulumi.Input[_builtins.str]] = None,
1002
957
  automated_backup_config: Optional[pulumi.Input[Union['ClusterAutomatedBackupConfigArgs', 'ClusterAutomatedBackupConfigArgsDict']]] = None,
1003
958
  cross_cluster_replication_config: Optional[pulumi.Input[Union['ClusterCrossClusterReplicationConfigArgs', 'ClusterCrossClusterReplicationConfigArgsDict']]] = None,
@@ -1342,7 +1297,6 @@ class Cluster(pulumi.CustomResource):
1342
1297
  "maxmemory-policy": "volatile-ttl",
1343
1298
  },
1344
1299
  deletion_protection_enabled=True,
1345
- allow_fewer_zones_deployment=True,
1346
1300
  zone_distribution_config={
1347
1301
  "mode": "MULTI_ZONE",
1348
1302
  },
@@ -1433,10 +1387,6 @@ class Cluster(pulumi.CustomResource):
1433
1387
 
1434
1388
  :param str resource_name: The name of the resource.
1435
1389
  :param pulumi.ResourceOptions opts: Options for the resource.
1436
- :param pulumi.Input[_builtins.bool] allow_fewer_zones_deployment: Allows customers to specify if they are okay with deploying a multi-zone
1437
- cluster in less than 3 zones. Once set, if there is a zonal outage during
1438
- the cluster creation, the cluster will only be deployed in 2 zones, and
1439
- stay within the 2 zones for its lifecycle.
1440
1390
  :param pulumi.Input[_builtins.str] authorization_mode: Optional. The authorization mode of the Redis cluster. If not provided, auth feature is disabled for the cluster.
1441
1391
  Default value is `AUTH_MODE_DISABLED`.
1442
1392
  Possible values are: `AUTH_MODE_UNSPECIFIED`, `AUTH_MODE_IAM_AUTH`, `AUTH_MODE_DISABLED`.
@@ -1810,7 +1760,6 @@ class Cluster(pulumi.CustomResource):
1810
1760
  "maxmemory-policy": "volatile-ttl",
1811
1761
  },
1812
1762
  deletion_protection_enabled=True,
1813
- allow_fewer_zones_deployment=True,
1814
1763
  zone_distribution_config={
1815
1764
  "mode": "MULTI_ZONE",
1816
1765
  },
@@ -1914,7 +1863,6 @@ class Cluster(pulumi.CustomResource):
1914
1863
  def _internal_init(__self__,
1915
1864
  resource_name: str,
1916
1865
  opts: Optional[pulumi.ResourceOptions] = None,
1917
- allow_fewer_zones_deployment: Optional[pulumi.Input[_builtins.bool]] = None,
1918
1866
  authorization_mode: Optional[pulumi.Input[_builtins.str]] = None,
1919
1867
  automated_backup_config: Optional[pulumi.Input[Union['ClusterAutomatedBackupConfigArgs', 'ClusterAutomatedBackupConfigArgsDict']]] = None,
1920
1868
  cross_cluster_replication_config: Optional[pulumi.Input[Union['ClusterCrossClusterReplicationConfigArgs', 'ClusterCrossClusterReplicationConfigArgsDict']]] = None,
@@ -1943,7 +1891,6 @@ class Cluster(pulumi.CustomResource):
1943
1891
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
1944
1892
  __props__ = ClusterArgs.__new__(ClusterArgs)
1945
1893
 
1946
- __props__.__dict__["allow_fewer_zones_deployment"] = allow_fewer_zones_deployment
1947
1894
  __props__.__dict__["authorization_mode"] = authorization_mode
1948
1895
  __props__.__dict__["automated_backup_config"] = automated_backup_config
1949
1896
  __props__.__dict__["cross_cluster_replication_config"] = cross_cluster_replication_config
@@ -1987,7 +1934,6 @@ class Cluster(pulumi.CustomResource):
1987
1934
  def get(resource_name: str,
1988
1935
  id: pulumi.Input[str],
1989
1936
  opts: Optional[pulumi.ResourceOptions] = None,
1990
- allow_fewer_zones_deployment: Optional[pulumi.Input[_builtins.bool]] = None,
1991
1937
  authorization_mode: Optional[pulumi.Input[_builtins.str]] = None,
1992
1938
  automated_backup_config: Optional[pulumi.Input[Union['ClusterAutomatedBackupConfigArgs', 'ClusterAutomatedBackupConfigArgsDict']]] = None,
1993
1939
  backup_collection: Optional[pulumi.Input[_builtins.str]] = None,
@@ -2026,10 +1972,6 @@ class Cluster(pulumi.CustomResource):
2026
1972
  :param str resource_name: The unique name of the resulting resource.
2027
1973
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
2028
1974
  :param pulumi.ResourceOptions opts: Options for the resource.
2029
- :param pulumi.Input[_builtins.bool] allow_fewer_zones_deployment: Allows customers to specify if they are okay with deploying a multi-zone
2030
- cluster in less than 3 zones. Once set, if there is a zonal outage during
2031
- the cluster creation, the cluster will only be deployed in 2 zones, and
2032
- stay within the 2 zones for its lifecycle.
2033
1975
  :param pulumi.Input[_builtins.str] authorization_mode: Optional. The authorization mode of the Redis cluster. If not provided, auth feature is disabled for the cluster.
2034
1976
  Default value is `AUTH_MODE_DISABLED`.
2035
1977
  Possible values are: `AUTH_MODE_UNSPECIFIED`, `AUTH_MODE_IAM_AUTH`, `AUTH_MODE_DISABLED`.
@@ -2100,7 +2042,6 @@ class Cluster(pulumi.CustomResource):
2100
2042
 
2101
2043
  __props__ = _ClusterState.__new__(_ClusterState)
2102
2044
 
2103
- __props__.__dict__["allow_fewer_zones_deployment"] = allow_fewer_zones_deployment
2104
2045
  __props__.__dict__["authorization_mode"] = authorization_mode
2105
2046
  __props__.__dict__["automated_backup_config"] = automated_backup_config
2106
2047
  __props__.__dict__["backup_collection"] = backup_collection
@@ -2134,17 +2075,6 @@ class Cluster(pulumi.CustomResource):
2134
2075
  __props__.__dict__["zone_distribution_config"] = zone_distribution_config
2135
2076
  return Cluster(resource_name, opts=opts, __props__=__props__)
2136
2077
 
2137
- @_builtins.property
2138
- @pulumi.getter(name="allowFewerZonesDeployment")
2139
- def allow_fewer_zones_deployment(self) -> pulumi.Output[Optional[_builtins.bool]]:
2140
- """
2141
- Allows customers to specify if they are okay with deploying a multi-zone
2142
- cluster in less than 3 zones. Once set, if there is a zonal outage during
2143
- the cluster creation, the cluster will only be deployed in 2 zones, and
2144
- stay within the 2 zones for its lifecycle.
2145
- """
2146
- return pulumi.get(self, "allow_fewer_zones_deployment")
2147
-
2148
2078
  @_builtins.property
2149
2079
  @pulumi.getter(name="authorizationMode")
2150
2080
  def authorization_mode(self) -> pulumi.Output[Optional[_builtins.str]]:
@@ -27,10 +27,7 @@ class GetClusterResult:
27
27
  """
28
28
  A collection of values returned by getCluster.
29
29
  """
30
- def __init__(__self__, allow_fewer_zones_deployment=None, authorization_mode=None, automated_backup_configs=None, backup_collection=None, create_time=None, cross_cluster_replication_configs=None, deletion_protection_enabled=None, discovery_endpoints=None, gcs_sources=None, id=None, kms_key=None, maintenance_policies=None, maintenance_schedules=None, managed_backup_sources=None, managed_server_cas=None, name=None, node_type=None, persistence_configs=None, precise_size_gb=None, project=None, psc_configs=None, psc_connections=None, psc_service_attachments=None, redis_configs=None, region=None, replica_count=None, shard_count=None, size_gb=None, state=None, state_infos=None, transit_encryption_mode=None, uid=None, zone_distribution_configs=None):
31
- if allow_fewer_zones_deployment and not isinstance(allow_fewer_zones_deployment, bool):
32
- raise TypeError("Expected argument 'allow_fewer_zones_deployment' to be a bool")
33
- pulumi.set(__self__, "allow_fewer_zones_deployment", allow_fewer_zones_deployment)
30
+ def __init__(__self__, authorization_mode=None, automated_backup_configs=None, backup_collection=None, create_time=None, cross_cluster_replication_configs=None, deletion_protection_enabled=None, discovery_endpoints=None, gcs_sources=None, id=None, kms_key=None, maintenance_policies=None, maintenance_schedules=None, managed_backup_sources=None, managed_server_cas=None, name=None, node_type=None, persistence_configs=None, precise_size_gb=None, project=None, psc_configs=None, psc_connections=None, psc_service_attachments=None, redis_configs=None, region=None, replica_count=None, shard_count=None, size_gb=None, state=None, state_infos=None, transit_encryption_mode=None, uid=None, zone_distribution_configs=None):
34
31
  if authorization_mode and not isinstance(authorization_mode, str):
35
32
  raise TypeError("Expected argument 'authorization_mode' to be a str")
36
33
  pulumi.set(__self__, "authorization_mode", authorization_mode)
@@ -128,11 +125,6 @@ class GetClusterResult:
128
125
  raise TypeError("Expected argument 'zone_distribution_configs' to be a list")
129
126
  pulumi.set(__self__, "zone_distribution_configs", zone_distribution_configs)
130
127
 
131
- @_builtins.property
132
- @pulumi.getter(name="allowFewerZonesDeployment")
133
- def allow_fewer_zones_deployment(self) -> _builtins.bool:
134
- return pulumi.get(self, "allow_fewer_zones_deployment")
135
-
136
128
  @_builtins.property
137
129
  @pulumi.getter(name="authorizationMode")
138
130
  def authorization_mode(self) -> _builtins.str:
@@ -303,7 +295,6 @@ class AwaitableGetClusterResult(GetClusterResult):
303
295
  if False:
304
296
  yield self
305
297
  return GetClusterResult(
306
- allow_fewer_zones_deployment=self.allow_fewer_zones_deployment,
307
298
  authorization_mode=self.authorization_mode,
308
299
  automated_backup_configs=self.automated_backup_configs,
309
300
  backup_collection=self.backup_collection,
@@ -369,7 +360,6 @@ def get_cluster(name: Optional[_builtins.str] = None,
369
360
  __ret__ = pulumi.runtime.invoke('gcp:redis/getCluster:getCluster', __args__, opts=opts, typ=GetClusterResult).value
370
361
 
371
362
  return AwaitableGetClusterResult(
372
- allow_fewer_zones_deployment=pulumi.get(__ret__, 'allow_fewer_zones_deployment'),
373
363
  authorization_mode=pulumi.get(__ret__, 'authorization_mode'),
374
364
  automated_backup_configs=pulumi.get(__ret__, 'automated_backup_configs'),
375
365
  backup_collection=pulumi.get(__ret__, 'backup_collection'),
@@ -432,7 +422,6 @@ def get_cluster_output(name: Optional[pulumi.Input[_builtins.str]] = None,
432
422
  opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
433
423
  __ret__ = pulumi.runtime.invoke_output('gcp:redis/getCluster:getCluster', __args__, opts=opts, typ=GetClusterResult)
434
424
  return __ret__.apply(lambda __response__: GetClusterResult(
435
- allow_fewer_zones_deployment=pulumi.get(__response__, 'allow_fewer_zones_deployment'),
436
425
  authorization_mode=pulumi.get(__response__, 'authorization_mode'),
437
426
  automated_backup_configs=pulumi.get(__response__, 'automated_backup_configs'),
438
427
  backup_collection=pulumi.get(__response__, 'backup_collection'),
@@ -136,6 +136,14 @@ class Capability(pulumi.CustomResource):
136
136
  value: Optional[pulumi.Input[_builtins.bool]] = None,
137
137
  __props__=None):
138
138
  """
139
+ An app-enabled folder is a folder within the Google Cloud resource hierarchy that has been configured for application management. This folder lets you define and manage App Hub applications. These applications are functional groupings of services and workloads that span multiple projects within that folder and its descendant projects.
140
+
141
+ To get more information about Capability, see:
142
+
143
+ * [API documentation](https://cloud.google.com/resource-manager/reference/rest)
144
+ * How-to Guides
145
+ * [Official Documentation](https://cloud.google.com/resource-manager/docs/manage-applications)
146
+
139
147
  ## Example Usage
140
148
 
141
149
  ### Resource Manager Capability
@@ -189,6 +197,14 @@ class Capability(pulumi.CustomResource):
189
197
  args: CapabilityArgs,
190
198
  opts: Optional[pulumi.ResourceOptions] = None):
191
199
  """
200
+ An app-enabled folder is a folder within the Google Cloud resource hierarchy that has been configured for application management. This folder lets you define and manage App Hub applications. These applications are functional groupings of services and workloads that span multiple projects within that folder and its descendant projects.
201
+
202
+ To get more information about Capability, see:
203
+
204
+ * [API documentation](https://cloud.google.com/resource-manager/reference/rest)
205
+ * How-to Guides
206
+ * [Official Documentation](https://cloud.google.com/resource-manager/docs/manage-applications)
207
+
192
208
  ## Example Usage
193
209
 
194
210
  ### Resource Manager Capability
@@ -155,6 +155,14 @@ class Config(pulumi.CustomResource):
155
155
  project: Optional[pulumi.Input[_builtins.str]] = None,
156
156
  __props__=None):
157
157
  """
158
+ Manages a RuntimeConfig resource in Google Cloud.
159
+
160
+ To get more information about RuntimeConfigs, see:
161
+
162
+ * [API documentation](https://cloud.google.com/deployment-manager/runtime-configurator/reference/rest/v1beta1/projects.configs)
163
+ * How-to Guides
164
+ * [Runtime Configurator Fundamentals](https://cloud.google.com/deployment-manager/runtime-configurator/)
165
+
158
166
  ## Example Usage
159
167
 
160
168
  Example creating a RuntimeConfig resource.
@@ -205,6 +213,14 @@ class Config(pulumi.CustomResource):
205
213
  args: Optional[ConfigArgs] = None,
206
214
  opts: Optional[pulumi.ResourceOptions] = None):
207
215
  """
216
+ Manages a RuntimeConfig resource in Google Cloud.
217
+
218
+ To get more information about RuntimeConfigs, see:
219
+
220
+ * [API documentation](https://cloud.google.com/deployment-manager/runtime-configurator/reference/rest/v1beta1/projects.configs)
221
+ * How-to Guides
222
+ * [Runtime Configurator Fundamentals](https://cloud.google.com/deployment-manager/runtime-configurator/)
223
+
208
224
  ## Example Usage
209
225
 
210
226
  Example creating a RuntimeConfig resource.
@@ -264,6 +264,124 @@ class ConfigIamBinding(pulumi.CustomResource):
264
264
  role: Optional[pulumi.Input[_builtins.str]] = None,
265
265
  __props__=None):
266
266
  """
267
+ Three different resources help you manage your IAM policy for Runtime Configurator Config. Each of these resources serves a different use case:
268
+
269
+ * `runtimeconfig.ConfigIamPolicy`: Authoritative. Sets the IAM policy for the config and replaces any existing policy already attached.
270
+ * `runtimeconfig.ConfigIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the config are preserved.
271
+ * `runtimeconfig.ConfigIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the config are preserved.
272
+
273
+ A data source can be used to retrieve policy data in advent you do not need creation
274
+
275
+ * `runtimeconfig.ConfigIamPolicy`: Retrieves the IAM policy for the config
276
+
277
+ > **Note:** `runtimeconfig.ConfigIamPolicy` **cannot** be used in conjunction with `runtimeconfig.ConfigIamBinding` and `runtimeconfig.ConfigIamMember` or they will fight over what your policy should be.
278
+
279
+ > **Note:** `runtimeconfig.ConfigIamBinding` resources **can be** used in conjunction with `runtimeconfig.ConfigIamMember` resources **only if** they do not grant privilege to the same role.
280
+
281
+ ## runtimeconfig.ConfigIamPolicy
282
+
283
+ ```python
284
+ import pulumi
285
+ import pulumi_gcp as gcp
286
+
287
+ admin = gcp.organizations.get_iam_policy(bindings=[{
288
+ "role": "roles/viewer",
289
+ "members": ["user:jane@example.com"],
290
+ }])
291
+ policy = gcp.runtimeconfig.ConfigIamPolicy("policy",
292
+ project=config["project"],
293
+ config=config["name"],
294
+ policy_data=admin.policy_data)
295
+ ```
296
+
297
+ ## runtimeconfig.ConfigIamBinding
298
+
299
+ ```python
300
+ import pulumi
301
+ import pulumi_gcp as gcp
302
+
303
+ binding = gcp.runtimeconfig.ConfigIamBinding("binding",
304
+ project=config["project"],
305
+ config=config["name"],
306
+ role="roles/viewer",
307
+ members=["user:jane@example.com"])
308
+ ```
309
+
310
+ ## runtimeconfig.ConfigIamMember
311
+
312
+ ```python
313
+ import pulumi
314
+ import pulumi_gcp as gcp
315
+
316
+ member = gcp.runtimeconfig.ConfigIamMember("member",
317
+ project=config["project"],
318
+ config=config["name"],
319
+ role="roles/viewer",
320
+ member="user:jane@example.com")
321
+ ```
322
+
323
+ ## This resource supports User Project Overrides.
324
+
325
+ -
326
+
327
+ # IAM policy for Runtime Configurator Config
328
+
329
+ Three different resources help you manage your IAM policy for Runtime Configurator Config. Each of these resources serves a different use case:
330
+
331
+ * `runtimeconfig.ConfigIamPolicy`: Authoritative. Sets the IAM policy for the config and replaces any existing policy already attached.
332
+ * `runtimeconfig.ConfigIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the config are preserved.
333
+ * `runtimeconfig.ConfigIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the config are preserved.
334
+
335
+ A data source can be used to retrieve policy data in advent you do not need creation
336
+
337
+ * `runtimeconfig.ConfigIamPolicy`: Retrieves the IAM policy for the config
338
+
339
+ > **Note:** `runtimeconfig.ConfigIamPolicy` **cannot** be used in conjunction with `runtimeconfig.ConfigIamBinding` and `runtimeconfig.ConfigIamMember` or they will fight over what your policy should be.
340
+
341
+ > **Note:** `runtimeconfig.ConfigIamBinding` resources **can be** used in conjunction with `runtimeconfig.ConfigIamMember` resources **only if** they do not grant privilege to the same role.
342
+
343
+ ## runtimeconfig.ConfigIamPolicy
344
+
345
+ ```python
346
+ import pulumi
347
+ import pulumi_gcp as gcp
348
+
349
+ admin = gcp.organizations.get_iam_policy(bindings=[{
350
+ "role": "roles/viewer",
351
+ "members": ["user:jane@example.com"],
352
+ }])
353
+ policy = gcp.runtimeconfig.ConfigIamPolicy("policy",
354
+ project=config["project"],
355
+ config=config["name"],
356
+ policy_data=admin.policy_data)
357
+ ```
358
+
359
+ ## runtimeconfig.ConfigIamBinding
360
+
361
+ ```python
362
+ import pulumi
363
+ import pulumi_gcp as gcp
364
+
365
+ binding = gcp.runtimeconfig.ConfigIamBinding("binding",
366
+ project=config["project"],
367
+ config=config["name"],
368
+ role="roles/viewer",
369
+ members=["user:jane@example.com"])
370
+ ```
371
+
372
+ ## runtimeconfig.ConfigIamMember
373
+
374
+ ```python
375
+ import pulumi
376
+ import pulumi_gcp as gcp
377
+
378
+ member = gcp.runtimeconfig.ConfigIamMember("member",
379
+ project=config["project"],
380
+ config=config["name"],
381
+ role="roles/viewer",
382
+ member="user:jane@example.com")
383
+ ```
384
+
267
385
  ## Import
268
386
 
269
387
  For all import syntaxes, the "resource in question" can take any of the following forms:
@@ -327,6 +445,124 @@ class ConfigIamBinding(pulumi.CustomResource):
327
445
  args: ConfigIamBindingArgs,
328
446
  opts: Optional[pulumi.ResourceOptions] = None):
329
447
  """
448
+ Three different resources help you manage your IAM policy for Runtime Configurator Config. Each of these resources serves a different use case:
449
+
450
+ * `runtimeconfig.ConfigIamPolicy`: Authoritative. Sets the IAM policy for the config and replaces any existing policy already attached.
451
+ * `runtimeconfig.ConfigIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the config are preserved.
452
+ * `runtimeconfig.ConfigIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the config are preserved.
453
+
454
+ A data source can be used to retrieve policy data in advent you do not need creation
455
+
456
+ * `runtimeconfig.ConfigIamPolicy`: Retrieves the IAM policy for the config
457
+
458
+ > **Note:** `runtimeconfig.ConfigIamPolicy` **cannot** be used in conjunction with `runtimeconfig.ConfigIamBinding` and `runtimeconfig.ConfigIamMember` or they will fight over what your policy should be.
459
+
460
+ > **Note:** `runtimeconfig.ConfigIamBinding` resources **can be** used in conjunction with `runtimeconfig.ConfigIamMember` resources **only if** they do not grant privilege to the same role.
461
+
462
+ ## runtimeconfig.ConfigIamPolicy
463
+
464
+ ```python
465
+ import pulumi
466
+ import pulumi_gcp as gcp
467
+
468
+ admin = gcp.organizations.get_iam_policy(bindings=[{
469
+ "role": "roles/viewer",
470
+ "members": ["user:jane@example.com"],
471
+ }])
472
+ policy = gcp.runtimeconfig.ConfigIamPolicy("policy",
473
+ project=config["project"],
474
+ config=config["name"],
475
+ policy_data=admin.policy_data)
476
+ ```
477
+
478
+ ## runtimeconfig.ConfigIamBinding
479
+
480
+ ```python
481
+ import pulumi
482
+ import pulumi_gcp as gcp
483
+
484
+ binding = gcp.runtimeconfig.ConfigIamBinding("binding",
485
+ project=config["project"],
486
+ config=config["name"],
487
+ role="roles/viewer",
488
+ members=["user:jane@example.com"])
489
+ ```
490
+
491
+ ## runtimeconfig.ConfigIamMember
492
+
493
+ ```python
494
+ import pulumi
495
+ import pulumi_gcp as gcp
496
+
497
+ member = gcp.runtimeconfig.ConfigIamMember("member",
498
+ project=config["project"],
499
+ config=config["name"],
500
+ role="roles/viewer",
501
+ member="user:jane@example.com")
502
+ ```
503
+
504
+ ## This resource supports User Project Overrides.
505
+
506
+ -
507
+
508
+ # IAM policy for Runtime Configurator Config
509
+
510
+ Three different resources help you manage your IAM policy for Runtime Configurator Config. Each of these resources serves a different use case:
511
+
512
+ * `runtimeconfig.ConfigIamPolicy`: Authoritative. Sets the IAM policy for the config and replaces any existing policy already attached.
513
+ * `runtimeconfig.ConfigIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the config are preserved.
514
+ * `runtimeconfig.ConfigIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the config are preserved.
515
+
516
+ A data source can be used to retrieve policy data in advent you do not need creation
517
+
518
+ * `runtimeconfig.ConfigIamPolicy`: Retrieves the IAM policy for the config
519
+
520
+ > **Note:** `runtimeconfig.ConfigIamPolicy` **cannot** be used in conjunction with `runtimeconfig.ConfigIamBinding` and `runtimeconfig.ConfigIamMember` or they will fight over what your policy should be.
521
+
522
+ > **Note:** `runtimeconfig.ConfigIamBinding` resources **can be** used in conjunction with `runtimeconfig.ConfigIamMember` resources **only if** they do not grant privilege to the same role.
523
+
524
+ ## runtimeconfig.ConfigIamPolicy
525
+
526
+ ```python
527
+ import pulumi
528
+ import pulumi_gcp as gcp
529
+
530
+ admin = gcp.organizations.get_iam_policy(bindings=[{
531
+ "role": "roles/viewer",
532
+ "members": ["user:jane@example.com"],
533
+ }])
534
+ policy = gcp.runtimeconfig.ConfigIamPolicy("policy",
535
+ project=config["project"],
536
+ config=config["name"],
537
+ policy_data=admin.policy_data)
538
+ ```
539
+
540
+ ## runtimeconfig.ConfigIamBinding
541
+
542
+ ```python
543
+ import pulumi
544
+ import pulumi_gcp as gcp
545
+
546
+ binding = gcp.runtimeconfig.ConfigIamBinding("binding",
547
+ project=config["project"],
548
+ config=config["name"],
549
+ role="roles/viewer",
550
+ members=["user:jane@example.com"])
551
+ ```
552
+
553
+ ## runtimeconfig.ConfigIamMember
554
+
555
+ ```python
556
+ import pulumi
557
+ import pulumi_gcp as gcp
558
+
559
+ member = gcp.runtimeconfig.ConfigIamMember("member",
560
+ project=config["project"],
561
+ config=config["name"],
562
+ role="roles/viewer",
563
+ member="user:jane@example.com")
564
+ ```
565
+
330
566
  ## Import
331
567
 
332
568
  For all import syntaxes, the "resource in question" can take any of the following forms: