pulumi-gcp 8.42.0a1758133038__py3-none-any.whl → 9.0.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 (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.0a1758133038.dist-info → pulumi_gcp-9.0.0.dist-info}/METADATA +1 -1
  264. {pulumi_gcp-8.42.0a1758133038.dist-info → pulumi_gcp-9.0.0.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.0a1758133038.dist-info → pulumi_gcp-9.0.0.dist-info}/WHEEL +0 -0
  271. {pulumi_gcp-8.42.0a1758133038.dist-info → pulumi_gcp-9.0.0.dist-info}/top_level.txt +0 -0
@@ -345,6 +345,136 @@ class WorkstationConfigIamMember(pulumi.CustomResource):
345
345
  workstation_config_id: Optional[pulumi.Input[_builtins.str]] = None,
346
346
  __props__=None):
347
347
  """
348
+ Three different resources help you manage your IAM policy for Cloud Workstations WorkstationConfig. Each of these resources serves a different use case:
349
+
350
+ * `workstations.WorkstationConfigIamPolicy`: Authoritative. Sets the IAM policy for the workstationconfig and replaces any existing policy already attached.
351
+ * `workstations.WorkstationConfigIamBinding`: 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 workstationconfig are preserved.
352
+ * `workstations.WorkstationConfigIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the workstationconfig are preserved.
353
+
354
+ A data source can be used to retrieve policy data in advent you do not need creation
355
+
356
+ * `workstations.WorkstationConfigIamPolicy`: Retrieves the IAM policy for the workstationconfig
357
+
358
+ > **Note:** `workstations.WorkstationConfigIamPolicy` **cannot** be used in conjunction with `workstations.WorkstationConfigIamBinding` and `workstations.WorkstationConfigIamMember` or they will fight over what your policy should be.
359
+
360
+ > **Note:** `workstations.WorkstationConfigIamBinding` resources **can be** used in conjunction with `workstations.WorkstationConfigIamMember` resources **only if** they do not grant privilege to the same role.
361
+
362
+ ## workstations.WorkstationConfigIamPolicy
363
+
364
+ ```python
365
+ import pulumi
366
+ import pulumi_gcp as gcp
367
+
368
+ admin = gcp.organizations.get_iam_policy(bindings=[{
369
+ "role": "roles/viewer",
370
+ "members": ["user:jane@example.com"],
371
+ }])
372
+ policy = gcp.workstations.WorkstationConfigIamPolicy("policy",
373
+ project=default["project"],
374
+ location=default["location"],
375
+ workstation_cluster_id=default["workstationClusterId"],
376
+ workstation_config_id=default["workstationConfigId"],
377
+ policy_data=admin.policy_data)
378
+ ```
379
+
380
+ ## workstations.WorkstationConfigIamBinding
381
+
382
+ ```python
383
+ import pulumi
384
+ import pulumi_gcp as gcp
385
+
386
+ binding = gcp.workstations.WorkstationConfigIamBinding("binding",
387
+ project=default["project"],
388
+ location=default["location"],
389
+ workstation_cluster_id=default["workstationClusterId"],
390
+ workstation_config_id=default["workstationConfigId"],
391
+ role="roles/viewer",
392
+ members=["user:jane@example.com"])
393
+ ```
394
+
395
+ ## workstations.WorkstationConfigIamMember
396
+
397
+ ```python
398
+ import pulumi
399
+ import pulumi_gcp as gcp
400
+
401
+ member = gcp.workstations.WorkstationConfigIamMember("member",
402
+ project=default["project"],
403
+ location=default["location"],
404
+ workstation_cluster_id=default["workstationClusterId"],
405
+ workstation_config_id=default["workstationConfigId"],
406
+ role="roles/viewer",
407
+ member="user:jane@example.com")
408
+ ```
409
+
410
+ ## This resource supports User Project Overrides.
411
+
412
+ -
413
+
414
+ # IAM policy for Cloud Workstations WorkstationConfig
415
+
416
+ Three different resources help you manage your IAM policy for Cloud Workstations WorkstationConfig. Each of these resources serves a different use case:
417
+
418
+ * `workstations.WorkstationConfigIamPolicy`: Authoritative. Sets the IAM policy for the workstationconfig and replaces any existing policy already attached.
419
+ * `workstations.WorkstationConfigIamBinding`: 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 workstationconfig are preserved.
420
+ * `workstations.WorkstationConfigIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the workstationconfig are preserved.
421
+
422
+ A data source can be used to retrieve policy data in advent you do not need creation
423
+
424
+ * `workstations.WorkstationConfigIamPolicy`: Retrieves the IAM policy for the workstationconfig
425
+
426
+ > **Note:** `workstations.WorkstationConfigIamPolicy` **cannot** be used in conjunction with `workstations.WorkstationConfigIamBinding` and `workstations.WorkstationConfigIamMember` or they will fight over what your policy should be.
427
+
428
+ > **Note:** `workstations.WorkstationConfigIamBinding` resources **can be** used in conjunction with `workstations.WorkstationConfigIamMember` resources **only if** they do not grant privilege to the same role.
429
+
430
+ ## workstations.WorkstationConfigIamPolicy
431
+
432
+ ```python
433
+ import pulumi
434
+ import pulumi_gcp as gcp
435
+
436
+ admin = gcp.organizations.get_iam_policy(bindings=[{
437
+ "role": "roles/viewer",
438
+ "members": ["user:jane@example.com"],
439
+ }])
440
+ policy = gcp.workstations.WorkstationConfigIamPolicy("policy",
441
+ project=default["project"],
442
+ location=default["location"],
443
+ workstation_cluster_id=default["workstationClusterId"],
444
+ workstation_config_id=default["workstationConfigId"],
445
+ policy_data=admin.policy_data)
446
+ ```
447
+
448
+ ## workstations.WorkstationConfigIamBinding
449
+
450
+ ```python
451
+ import pulumi
452
+ import pulumi_gcp as gcp
453
+
454
+ binding = gcp.workstations.WorkstationConfigIamBinding("binding",
455
+ project=default["project"],
456
+ location=default["location"],
457
+ workstation_cluster_id=default["workstationClusterId"],
458
+ workstation_config_id=default["workstationConfigId"],
459
+ role="roles/viewer",
460
+ members=["user:jane@example.com"])
461
+ ```
462
+
463
+ ## workstations.WorkstationConfigIamMember
464
+
465
+ ```python
466
+ import pulumi
467
+ import pulumi_gcp as gcp
468
+
469
+ member = gcp.workstations.WorkstationConfigIamMember("member",
470
+ project=default["project"],
471
+ location=default["location"],
472
+ workstation_cluster_id=default["workstationClusterId"],
473
+ workstation_config_id=default["workstationConfigId"],
474
+ role="roles/viewer",
475
+ member="user:jane@example.com")
476
+ ```
477
+
348
478
  ## Import
349
479
 
350
480
  For all import syntaxes, the "resource in question" can take any of the following forms:
@@ -416,6 +546,136 @@ class WorkstationConfigIamMember(pulumi.CustomResource):
416
546
  args: WorkstationConfigIamMemberArgs,
417
547
  opts: Optional[pulumi.ResourceOptions] = None):
418
548
  """
549
+ Three different resources help you manage your IAM policy for Cloud Workstations WorkstationConfig. Each of these resources serves a different use case:
550
+
551
+ * `workstations.WorkstationConfigIamPolicy`: Authoritative. Sets the IAM policy for the workstationconfig and replaces any existing policy already attached.
552
+ * `workstations.WorkstationConfigIamBinding`: 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 workstationconfig are preserved.
553
+ * `workstations.WorkstationConfigIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the workstationconfig are preserved.
554
+
555
+ A data source can be used to retrieve policy data in advent you do not need creation
556
+
557
+ * `workstations.WorkstationConfigIamPolicy`: Retrieves the IAM policy for the workstationconfig
558
+
559
+ > **Note:** `workstations.WorkstationConfigIamPolicy` **cannot** be used in conjunction with `workstations.WorkstationConfigIamBinding` and `workstations.WorkstationConfigIamMember` or they will fight over what your policy should be.
560
+
561
+ > **Note:** `workstations.WorkstationConfigIamBinding` resources **can be** used in conjunction with `workstations.WorkstationConfigIamMember` resources **only if** they do not grant privilege to the same role.
562
+
563
+ ## workstations.WorkstationConfigIamPolicy
564
+
565
+ ```python
566
+ import pulumi
567
+ import pulumi_gcp as gcp
568
+
569
+ admin = gcp.organizations.get_iam_policy(bindings=[{
570
+ "role": "roles/viewer",
571
+ "members": ["user:jane@example.com"],
572
+ }])
573
+ policy = gcp.workstations.WorkstationConfigIamPolicy("policy",
574
+ project=default["project"],
575
+ location=default["location"],
576
+ workstation_cluster_id=default["workstationClusterId"],
577
+ workstation_config_id=default["workstationConfigId"],
578
+ policy_data=admin.policy_data)
579
+ ```
580
+
581
+ ## workstations.WorkstationConfigIamBinding
582
+
583
+ ```python
584
+ import pulumi
585
+ import pulumi_gcp as gcp
586
+
587
+ binding = gcp.workstations.WorkstationConfigIamBinding("binding",
588
+ project=default["project"],
589
+ location=default["location"],
590
+ workstation_cluster_id=default["workstationClusterId"],
591
+ workstation_config_id=default["workstationConfigId"],
592
+ role="roles/viewer",
593
+ members=["user:jane@example.com"])
594
+ ```
595
+
596
+ ## workstations.WorkstationConfigIamMember
597
+
598
+ ```python
599
+ import pulumi
600
+ import pulumi_gcp as gcp
601
+
602
+ member = gcp.workstations.WorkstationConfigIamMember("member",
603
+ project=default["project"],
604
+ location=default["location"],
605
+ workstation_cluster_id=default["workstationClusterId"],
606
+ workstation_config_id=default["workstationConfigId"],
607
+ role="roles/viewer",
608
+ member="user:jane@example.com")
609
+ ```
610
+
611
+ ## This resource supports User Project Overrides.
612
+
613
+ -
614
+
615
+ # IAM policy for Cloud Workstations WorkstationConfig
616
+
617
+ Three different resources help you manage your IAM policy for Cloud Workstations WorkstationConfig. Each of these resources serves a different use case:
618
+
619
+ * `workstations.WorkstationConfigIamPolicy`: Authoritative. Sets the IAM policy for the workstationconfig and replaces any existing policy already attached.
620
+ * `workstations.WorkstationConfigIamBinding`: 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 workstationconfig are preserved.
621
+ * `workstations.WorkstationConfigIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the workstationconfig are preserved.
622
+
623
+ A data source can be used to retrieve policy data in advent you do not need creation
624
+
625
+ * `workstations.WorkstationConfigIamPolicy`: Retrieves the IAM policy for the workstationconfig
626
+
627
+ > **Note:** `workstations.WorkstationConfigIamPolicy` **cannot** be used in conjunction with `workstations.WorkstationConfigIamBinding` and `workstations.WorkstationConfigIamMember` or they will fight over what your policy should be.
628
+
629
+ > **Note:** `workstations.WorkstationConfigIamBinding` resources **can be** used in conjunction with `workstations.WorkstationConfigIamMember` resources **only if** they do not grant privilege to the same role.
630
+
631
+ ## workstations.WorkstationConfigIamPolicy
632
+
633
+ ```python
634
+ import pulumi
635
+ import pulumi_gcp as gcp
636
+
637
+ admin = gcp.organizations.get_iam_policy(bindings=[{
638
+ "role": "roles/viewer",
639
+ "members": ["user:jane@example.com"],
640
+ }])
641
+ policy = gcp.workstations.WorkstationConfigIamPolicy("policy",
642
+ project=default["project"],
643
+ location=default["location"],
644
+ workstation_cluster_id=default["workstationClusterId"],
645
+ workstation_config_id=default["workstationConfigId"],
646
+ policy_data=admin.policy_data)
647
+ ```
648
+
649
+ ## workstations.WorkstationConfigIamBinding
650
+
651
+ ```python
652
+ import pulumi
653
+ import pulumi_gcp as gcp
654
+
655
+ binding = gcp.workstations.WorkstationConfigIamBinding("binding",
656
+ project=default["project"],
657
+ location=default["location"],
658
+ workstation_cluster_id=default["workstationClusterId"],
659
+ workstation_config_id=default["workstationConfigId"],
660
+ role="roles/viewer",
661
+ members=["user:jane@example.com"])
662
+ ```
663
+
664
+ ## workstations.WorkstationConfigIamMember
665
+
666
+ ```python
667
+ import pulumi
668
+ import pulumi_gcp as gcp
669
+
670
+ member = gcp.workstations.WorkstationConfigIamMember("member",
671
+ project=default["project"],
672
+ location=default["location"],
673
+ workstation_cluster_id=default["workstationClusterId"],
674
+ workstation_config_id=default["workstationConfigId"],
675
+ role="roles/viewer",
676
+ member="user:jane@example.com")
677
+ ```
678
+
419
679
  ## Import
420
680
 
421
681
  For all import syntaxes, the "resource in question" can take any of the following forms:
@@ -242,6 +242,136 @@ class WorkstationConfigIamPolicy(pulumi.CustomResource):
242
242
  workstation_config_id: Optional[pulumi.Input[_builtins.str]] = None,
243
243
  __props__=None):
244
244
  """
245
+ Three different resources help you manage your IAM policy for Cloud Workstations WorkstationConfig. Each of these resources serves a different use case:
246
+
247
+ * `workstations.WorkstationConfigIamPolicy`: Authoritative. Sets the IAM policy for the workstationconfig and replaces any existing policy already attached.
248
+ * `workstations.WorkstationConfigIamBinding`: 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 workstationconfig are preserved.
249
+ * `workstations.WorkstationConfigIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the workstationconfig are preserved.
250
+
251
+ A data source can be used to retrieve policy data in advent you do not need creation
252
+
253
+ * `workstations.WorkstationConfigIamPolicy`: Retrieves the IAM policy for the workstationconfig
254
+
255
+ > **Note:** `workstations.WorkstationConfigIamPolicy` **cannot** be used in conjunction with `workstations.WorkstationConfigIamBinding` and `workstations.WorkstationConfigIamMember` or they will fight over what your policy should be.
256
+
257
+ > **Note:** `workstations.WorkstationConfigIamBinding` resources **can be** used in conjunction with `workstations.WorkstationConfigIamMember` resources **only if** they do not grant privilege to the same role.
258
+
259
+ ## workstations.WorkstationConfigIamPolicy
260
+
261
+ ```python
262
+ import pulumi
263
+ import pulumi_gcp as gcp
264
+
265
+ admin = gcp.organizations.get_iam_policy(bindings=[{
266
+ "role": "roles/viewer",
267
+ "members": ["user:jane@example.com"],
268
+ }])
269
+ policy = gcp.workstations.WorkstationConfigIamPolicy("policy",
270
+ project=default["project"],
271
+ location=default["location"],
272
+ workstation_cluster_id=default["workstationClusterId"],
273
+ workstation_config_id=default["workstationConfigId"],
274
+ policy_data=admin.policy_data)
275
+ ```
276
+
277
+ ## workstations.WorkstationConfigIamBinding
278
+
279
+ ```python
280
+ import pulumi
281
+ import pulumi_gcp as gcp
282
+
283
+ binding = gcp.workstations.WorkstationConfigIamBinding("binding",
284
+ project=default["project"],
285
+ location=default["location"],
286
+ workstation_cluster_id=default["workstationClusterId"],
287
+ workstation_config_id=default["workstationConfigId"],
288
+ role="roles/viewer",
289
+ members=["user:jane@example.com"])
290
+ ```
291
+
292
+ ## workstations.WorkstationConfigIamMember
293
+
294
+ ```python
295
+ import pulumi
296
+ import pulumi_gcp as gcp
297
+
298
+ member = gcp.workstations.WorkstationConfigIamMember("member",
299
+ project=default["project"],
300
+ location=default["location"],
301
+ workstation_cluster_id=default["workstationClusterId"],
302
+ workstation_config_id=default["workstationConfigId"],
303
+ role="roles/viewer",
304
+ member="user:jane@example.com")
305
+ ```
306
+
307
+ ## This resource supports User Project Overrides.
308
+
309
+ -
310
+
311
+ # IAM policy for Cloud Workstations WorkstationConfig
312
+
313
+ Three different resources help you manage your IAM policy for Cloud Workstations WorkstationConfig. Each of these resources serves a different use case:
314
+
315
+ * `workstations.WorkstationConfigIamPolicy`: Authoritative. Sets the IAM policy for the workstationconfig and replaces any existing policy already attached.
316
+ * `workstations.WorkstationConfigIamBinding`: 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 workstationconfig are preserved.
317
+ * `workstations.WorkstationConfigIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the workstationconfig are preserved.
318
+
319
+ A data source can be used to retrieve policy data in advent you do not need creation
320
+
321
+ * `workstations.WorkstationConfigIamPolicy`: Retrieves the IAM policy for the workstationconfig
322
+
323
+ > **Note:** `workstations.WorkstationConfigIamPolicy` **cannot** be used in conjunction with `workstations.WorkstationConfigIamBinding` and `workstations.WorkstationConfigIamMember` or they will fight over what your policy should be.
324
+
325
+ > **Note:** `workstations.WorkstationConfigIamBinding` resources **can be** used in conjunction with `workstations.WorkstationConfigIamMember` resources **only if** they do not grant privilege to the same role.
326
+
327
+ ## workstations.WorkstationConfigIamPolicy
328
+
329
+ ```python
330
+ import pulumi
331
+ import pulumi_gcp as gcp
332
+
333
+ admin = gcp.organizations.get_iam_policy(bindings=[{
334
+ "role": "roles/viewer",
335
+ "members": ["user:jane@example.com"],
336
+ }])
337
+ policy = gcp.workstations.WorkstationConfigIamPolicy("policy",
338
+ project=default["project"],
339
+ location=default["location"],
340
+ workstation_cluster_id=default["workstationClusterId"],
341
+ workstation_config_id=default["workstationConfigId"],
342
+ policy_data=admin.policy_data)
343
+ ```
344
+
345
+ ## workstations.WorkstationConfigIamBinding
346
+
347
+ ```python
348
+ import pulumi
349
+ import pulumi_gcp as gcp
350
+
351
+ binding = gcp.workstations.WorkstationConfigIamBinding("binding",
352
+ project=default["project"],
353
+ location=default["location"],
354
+ workstation_cluster_id=default["workstationClusterId"],
355
+ workstation_config_id=default["workstationConfigId"],
356
+ role="roles/viewer",
357
+ members=["user:jane@example.com"])
358
+ ```
359
+
360
+ ## workstations.WorkstationConfigIamMember
361
+
362
+ ```python
363
+ import pulumi
364
+ import pulumi_gcp as gcp
365
+
366
+ member = gcp.workstations.WorkstationConfigIamMember("member",
367
+ project=default["project"],
368
+ location=default["location"],
369
+ workstation_cluster_id=default["workstationClusterId"],
370
+ workstation_config_id=default["workstationConfigId"],
371
+ role="roles/viewer",
372
+ member="user:jane@example.com")
373
+ ```
374
+
245
375
  ## Import
246
376
 
247
377
  For all import syntaxes, the "resource in question" can take any of the following forms:
@@ -301,6 +431,136 @@ class WorkstationConfigIamPolicy(pulumi.CustomResource):
301
431
  args: WorkstationConfigIamPolicyArgs,
302
432
  opts: Optional[pulumi.ResourceOptions] = None):
303
433
  """
434
+ Three different resources help you manage your IAM policy for Cloud Workstations WorkstationConfig. Each of these resources serves a different use case:
435
+
436
+ * `workstations.WorkstationConfigIamPolicy`: Authoritative. Sets the IAM policy for the workstationconfig and replaces any existing policy already attached.
437
+ * `workstations.WorkstationConfigIamBinding`: 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 workstationconfig are preserved.
438
+ * `workstations.WorkstationConfigIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the workstationconfig are preserved.
439
+
440
+ A data source can be used to retrieve policy data in advent you do not need creation
441
+
442
+ * `workstations.WorkstationConfigIamPolicy`: Retrieves the IAM policy for the workstationconfig
443
+
444
+ > **Note:** `workstations.WorkstationConfigIamPolicy` **cannot** be used in conjunction with `workstations.WorkstationConfigIamBinding` and `workstations.WorkstationConfigIamMember` or they will fight over what your policy should be.
445
+
446
+ > **Note:** `workstations.WorkstationConfigIamBinding` resources **can be** used in conjunction with `workstations.WorkstationConfigIamMember` resources **only if** they do not grant privilege to the same role.
447
+
448
+ ## workstations.WorkstationConfigIamPolicy
449
+
450
+ ```python
451
+ import pulumi
452
+ import pulumi_gcp as gcp
453
+
454
+ admin = gcp.organizations.get_iam_policy(bindings=[{
455
+ "role": "roles/viewer",
456
+ "members": ["user:jane@example.com"],
457
+ }])
458
+ policy = gcp.workstations.WorkstationConfigIamPolicy("policy",
459
+ project=default["project"],
460
+ location=default["location"],
461
+ workstation_cluster_id=default["workstationClusterId"],
462
+ workstation_config_id=default["workstationConfigId"],
463
+ policy_data=admin.policy_data)
464
+ ```
465
+
466
+ ## workstations.WorkstationConfigIamBinding
467
+
468
+ ```python
469
+ import pulumi
470
+ import pulumi_gcp as gcp
471
+
472
+ binding = gcp.workstations.WorkstationConfigIamBinding("binding",
473
+ project=default["project"],
474
+ location=default["location"],
475
+ workstation_cluster_id=default["workstationClusterId"],
476
+ workstation_config_id=default["workstationConfigId"],
477
+ role="roles/viewer",
478
+ members=["user:jane@example.com"])
479
+ ```
480
+
481
+ ## workstations.WorkstationConfigIamMember
482
+
483
+ ```python
484
+ import pulumi
485
+ import pulumi_gcp as gcp
486
+
487
+ member = gcp.workstations.WorkstationConfigIamMember("member",
488
+ project=default["project"],
489
+ location=default["location"],
490
+ workstation_cluster_id=default["workstationClusterId"],
491
+ workstation_config_id=default["workstationConfigId"],
492
+ role="roles/viewer",
493
+ member="user:jane@example.com")
494
+ ```
495
+
496
+ ## This resource supports User Project Overrides.
497
+
498
+ -
499
+
500
+ # IAM policy for Cloud Workstations WorkstationConfig
501
+
502
+ Three different resources help you manage your IAM policy for Cloud Workstations WorkstationConfig. Each of these resources serves a different use case:
503
+
504
+ * `workstations.WorkstationConfigIamPolicy`: Authoritative. Sets the IAM policy for the workstationconfig and replaces any existing policy already attached.
505
+ * `workstations.WorkstationConfigIamBinding`: 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 workstationconfig are preserved.
506
+ * `workstations.WorkstationConfigIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the workstationconfig are preserved.
507
+
508
+ A data source can be used to retrieve policy data in advent you do not need creation
509
+
510
+ * `workstations.WorkstationConfigIamPolicy`: Retrieves the IAM policy for the workstationconfig
511
+
512
+ > **Note:** `workstations.WorkstationConfigIamPolicy` **cannot** be used in conjunction with `workstations.WorkstationConfigIamBinding` and `workstations.WorkstationConfigIamMember` or they will fight over what your policy should be.
513
+
514
+ > **Note:** `workstations.WorkstationConfigIamBinding` resources **can be** used in conjunction with `workstations.WorkstationConfigIamMember` resources **only if** they do not grant privilege to the same role.
515
+
516
+ ## workstations.WorkstationConfigIamPolicy
517
+
518
+ ```python
519
+ import pulumi
520
+ import pulumi_gcp as gcp
521
+
522
+ admin = gcp.organizations.get_iam_policy(bindings=[{
523
+ "role": "roles/viewer",
524
+ "members": ["user:jane@example.com"],
525
+ }])
526
+ policy = gcp.workstations.WorkstationConfigIamPolicy("policy",
527
+ project=default["project"],
528
+ location=default["location"],
529
+ workstation_cluster_id=default["workstationClusterId"],
530
+ workstation_config_id=default["workstationConfigId"],
531
+ policy_data=admin.policy_data)
532
+ ```
533
+
534
+ ## workstations.WorkstationConfigIamBinding
535
+
536
+ ```python
537
+ import pulumi
538
+ import pulumi_gcp as gcp
539
+
540
+ binding = gcp.workstations.WorkstationConfigIamBinding("binding",
541
+ project=default["project"],
542
+ location=default["location"],
543
+ workstation_cluster_id=default["workstationClusterId"],
544
+ workstation_config_id=default["workstationConfigId"],
545
+ role="roles/viewer",
546
+ members=["user:jane@example.com"])
547
+ ```
548
+
549
+ ## workstations.WorkstationConfigIamMember
550
+
551
+ ```python
552
+ import pulumi
553
+ import pulumi_gcp as gcp
554
+
555
+ member = gcp.workstations.WorkstationConfigIamMember("member",
556
+ project=default["project"],
557
+ location=default["location"],
558
+ workstation_cluster_id=default["workstationClusterId"],
559
+ workstation_config_id=default["workstationConfigId"],
560
+ role="roles/viewer",
561
+ member="user:jane@example.com")
562
+ ```
563
+
304
564
  ## Import
305
565
 
306
566
  For all import syntaxes, the "resource in question" can take any of the following forms: