pulumi-gcp 8.10.0a1731950704__py3-none-any.whl → 8.10.1__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 (388) hide show
  1. pulumi_gcp/__init__.py +24 -0
  2. pulumi_gcp/accessapproval/get_folder_service_account.py +2 -2
  3. pulumi_gcp/accessapproval/get_organization_service_account.py +2 -2
  4. pulumi_gcp/accessapproval/get_project_service_account.py +2 -2
  5. pulumi_gcp/accesscontextmanager/__init__.py +1 -0
  6. pulumi_gcp/accesscontextmanager/_inputs.py +90 -54
  7. pulumi_gcp/accesscontextmanager/get_access_policy.py +158 -0
  8. pulumi_gcp/accesscontextmanager/get_access_policy_iam_policy.py +2 -2
  9. pulumi_gcp/accesscontextmanager/outputs.py +60 -36
  10. pulumi_gcp/alloydb/get_locations.py +2 -2
  11. pulumi_gcp/alloydb/get_supported_database_flags.py +2 -2
  12. pulumi_gcp/apigateway/get_api_config_iam_policy.py +2 -2
  13. pulumi_gcp/apigateway/get_api_iam_policy.py +2 -2
  14. pulumi_gcp/apigateway/get_gateway_iam_policy.py +2 -2
  15. pulumi_gcp/apigee/get_environment_iam_policy.py +2 -2
  16. pulumi_gcp/appengine/get_default_service_account.py +2 -2
  17. pulumi_gcp/apphub/get_application.py +2 -2
  18. pulumi_gcp/apphub/get_discovered_service.py +2 -2
  19. pulumi_gcp/apphub/get_discovered_workload.py +2 -2
  20. pulumi_gcp/artifactregistry/_inputs.py +56 -0
  21. pulumi_gcp/artifactregistry/get_docker_image.py +2 -2
  22. pulumi_gcp/artifactregistry/get_locations.py +2 -2
  23. pulumi_gcp/artifactregistry/get_repository.py +2 -2
  24. pulumi_gcp/artifactregistry/get_repository_iam_policy.py +2 -2
  25. pulumi_gcp/artifactregistry/outputs.py +65 -0
  26. pulumi_gcp/artifactregistry/repository.py +48 -0
  27. pulumi_gcp/backupdisasterrecovery/__init__.py +1 -0
  28. pulumi_gcp/backupdisasterrecovery/backup_vault.py +63 -0
  29. pulumi_gcp/backupdisasterrecovery/get_backup_plan.py +2 -2
  30. pulumi_gcp/backupdisasterrecovery/get_backup_plan_association.py +2 -2
  31. pulumi_gcp/backupdisasterrecovery/get_data_source.py +263 -0
  32. pulumi_gcp/backupdisasterrecovery/get_management_server.py +2 -2
  33. pulumi_gcp/backupdisasterrecovery/outputs.py +402 -0
  34. pulumi_gcp/beyondcorp/get_app_connection.py +2 -2
  35. pulumi_gcp/beyondcorp/get_app_connector.py +2 -2
  36. pulumi_gcp/beyondcorp/get_app_gateway.py +2 -2
  37. pulumi_gcp/bigquery/get_connection_iam_policy.py +2 -2
  38. pulumi_gcp/bigquery/get_dataset.py +2 -2
  39. pulumi_gcp/bigquery/get_dataset_iam_policy.py +2 -2
  40. pulumi_gcp/bigquery/get_default_service_account.py +2 -2
  41. pulumi_gcp/bigquery/get_table_iam_policy.py +2 -2
  42. pulumi_gcp/bigquery/get_tables.py +2 -2
  43. pulumi_gcp/bigqueryanalyticshub/get_data_exchange_iam_policy.py +2 -2
  44. pulumi_gcp/bigqueryanalyticshub/get_listing_iam_policy.py +2 -2
  45. pulumi_gcp/bigquerydatapolicy/get_iam_policy.py +2 -2
  46. pulumi_gcp/bigtable/get_instance_iam_policy.py +2 -2
  47. pulumi_gcp/bigtable/get_table_iam_policy.py +2 -2
  48. pulumi_gcp/billing/get_account_iam_policy.py +2 -2
  49. pulumi_gcp/binaryauthorization/get_attestor_iam_policy.py +2 -2
  50. pulumi_gcp/certificateauthority/authority.py +28 -138
  51. pulumi_gcp/certificateauthority/get_authority.py +2 -2
  52. pulumi_gcp/certificateauthority/get_ca_pool_iam_policy.py +2 -2
  53. pulumi_gcp/certificateauthority/get_certificate_template_iam_policy.py +2 -2
  54. pulumi_gcp/certificatemanager/get_certificate_map.py +2 -2
  55. pulumi_gcp/certificatemanager/get_certificates.py +2 -2
  56. pulumi_gcp/cloudasset/get_resources_search_all.py +2 -2
  57. pulumi_gcp/cloudasset/get_search_all_resources.py +2 -2
  58. pulumi_gcp/cloudbuild/get_trigger.py +2 -2
  59. pulumi_gcp/cloudbuildv2/get_connection_iam_policy.py +2 -2
  60. pulumi_gcp/clouddeploy/get_custom_target_type_iam_policy.py +2 -2
  61. pulumi_gcp/clouddeploy/get_delivery_pipeline_iam_policy.py +2 -2
  62. pulumi_gcp/clouddeploy/get_target_iam_policy.py +2 -2
  63. pulumi_gcp/cloudfunctions/get_function.py +2 -2
  64. pulumi_gcp/cloudfunctions/get_function_iam_policy.py +2 -2
  65. pulumi_gcp/cloudfunctionsv2/get_function.py +2 -2
  66. pulumi_gcp/cloudfunctionsv2/get_function_iam_policy.py +2 -2
  67. pulumi_gcp/cloudidentity/get_group_lookup.py +2 -2
  68. pulumi_gcp/cloudidentity/get_group_memberships.py +2 -2
  69. pulumi_gcp/cloudidentity/get_group_transitive_memberships.py +2 -2
  70. pulumi_gcp/cloudidentity/get_groups.py +2 -2
  71. pulumi_gcp/cloudquota/get_s_quota_info.py +2 -2
  72. pulumi_gcp/cloudquota/get_s_quota_infos.py +2 -2
  73. pulumi_gcp/cloudrun/get_locations.py +2 -2
  74. pulumi_gcp/cloudrun/get_service.py +2 -2
  75. pulumi_gcp/cloudrun/get_service_iam_policy.py +2 -2
  76. pulumi_gcp/cloudrun/service.py +0 -10
  77. pulumi_gcp/cloudrunv2/get_job.py +2 -2
  78. pulumi_gcp/cloudrunv2/get_job_iam_policy.py +2 -2
  79. pulumi_gcp/cloudrunv2/get_service.py +17 -6
  80. pulumi_gcp/cloudrunv2/get_service_iam_policy.py +2 -2
  81. pulumi_gcp/cloudrunv2/service.py +30 -2
  82. pulumi_gcp/cloudtasks/get_queue_iam_policy.py +2 -2
  83. pulumi_gcp/composer/get_environment.py +2 -2
  84. pulumi_gcp/composer/get_image_versions.py +2 -2
  85. pulumi_gcp/composer/get_user_workloads_config_map.py +2 -2
  86. pulumi_gcp/composer/get_user_workloads_secret.py +2 -2
  87. pulumi_gcp/compute/_inputs.py +12 -12
  88. pulumi_gcp/compute/get_address.py +2 -2
  89. pulumi_gcp/compute/get_addresses.py +2 -2
  90. pulumi_gcp/compute/get_backend_bucket.py +2 -2
  91. pulumi_gcp/compute/get_backend_bucket_iam_policy.py +2 -2
  92. pulumi_gcp/compute/get_backend_service.py +2 -2
  93. pulumi_gcp/compute/get_backend_service_iam_policy.py +2 -2
  94. pulumi_gcp/compute/get_certificate.py +2 -2
  95. pulumi_gcp/compute/get_default_service_account.py +2 -2
  96. pulumi_gcp/compute/get_disk.py +2 -2
  97. pulumi_gcp/compute/get_disk_iam_policy.py +2 -2
  98. pulumi_gcp/compute/get_forwarding_rule.py +2 -2
  99. pulumi_gcp/compute/get_forwarding_rules.py +2 -2
  100. pulumi_gcp/compute/get_global_address.py +2 -2
  101. pulumi_gcp/compute/get_global_forwarding_rule.py +2 -2
  102. pulumi_gcp/compute/get_hc_vpn_gateway.py +2 -2
  103. pulumi_gcp/compute/get_health_check.py +2 -2
  104. pulumi_gcp/compute/get_image.py +2 -2
  105. pulumi_gcp/compute/get_image_iam_policy.py +2 -2
  106. pulumi_gcp/compute/get_instance.py +2 -2
  107. pulumi_gcp/compute/get_instance_group.py +2 -2
  108. pulumi_gcp/compute/get_instance_group_manager.py +2 -2
  109. pulumi_gcp/compute/get_instance_guest_attributes.py +2 -2
  110. pulumi_gcp/compute/get_instance_iam_policy.py +2 -2
  111. pulumi_gcp/compute/get_instance_serial_port.py +2 -2
  112. pulumi_gcp/compute/get_instance_template.py +2 -2
  113. pulumi_gcp/compute/get_lbip_ranges.py +2 -2
  114. pulumi_gcp/compute/get_machine_image_iam_policy.py +2 -2
  115. pulumi_gcp/compute/get_machine_types.py +2 -2
  116. pulumi_gcp/compute/get_netblock_ip_ranges.py +2 -2
  117. pulumi_gcp/compute/get_network.py +2 -2
  118. pulumi_gcp/compute/get_network_endpoint_group.py +2 -2
  119. pulumi_gcp/compute/get_network_peering.py +2 -2
  120. pulumi_gcp/compute/get_networks.py +2 -2
  121. pulumi_gcp/compute/get_node_types.py +2 -2
  122. pulumi_gcp/compute/get_region_backend_service_iam_policy.py +2 -2
  123. pulumi_gcp/compute/get_region_disk.py +2 -2
  124. pulumi_gcp/compute/get_region_disk_iam_policy.py +2 -2
  125. pulumi_gcp/compute/get_region_instance_group.py +2 -2
  126. pulumi_gcp/compute/get_region_instance_group_manager.py +2 -2
  127. pulumi_gcp/compute/get_region_instance_template.py +2 -2
  128. pulumi_gcp/compute/get_region_network_endpoint_group.py +2 -2
  129. pulumi_gcp/compute/get_region_ssl_certificate.py +2 -2
  130. pulumi_gcp/compute/get_regions.py +2 -2
  131. pulumi_gcp/compute/get_reservation.py +2 -2
  132. pulumi_gcp/compute/get_resource_policy.py +2 -2
  133. pulumi_gcp/compute/get_router.py +2 -2
  134. pulumi_gcp/compute/get_router_nat.py +2 -2
  135. pulumi_gcp/compute/get_router_status.py +2 -2
  136. pulumi_gcp/compute/get_security_policy.py +2 -2
  137. pulumi_gcp/compute/get_snapshot.py +2 -2
  138. pulumi_gcp/compute/get_snapshot_iam_policy.py +2 -2
  139. pulumi_gcp/compute/get_ssl_policy.py +2 -2
  140. pulumi_gcp/compute/get_subnetwork.py +2 -2
  141. pulumi_gcp/compute/get_subnetwork_iam_policy.py +2 -2
  142. pulumi_gcp/compute/get_subnetworks.py +2 -2
  143. pulumi_gcp/compute/get_vpn_gateway.py +2 -2
  144. pulumi_gcp/compute/get_zones.py +2 -2
  145. pulumi_gcp/compute/outputs.py +10 -10
  146. pulumi_gcp/compute/router_status.py +2 -2
  147. pulumi_gcp/container/get_attached_install_manifest.py +2 -2
  148. pulumi_gcp/container/get_attached_versions.py +2 -2
  149. pulumi_gcp/container/get_aws_versions.py +2 -2
  150. pulumi_gcp/container/get_azure_versions.py +2 -2
  151. pulumi_gcp/container/get_cluster.py +2 -2
  152. pulumi_gcp/container/get_engine_versions.py +2 -2
  153. pulumi_gcp/container/get_registry_image.py +2 -2
  154. pulumi_gcp/container/get_registry_repository.py +2 -2
  155. pulumi_gcp/containeranalysis/get_note_iam_policy.py +2 -2
  156. pulumi_gcp/datacatalog/get_entry_group_iam_policy.py +2 -2
  157. pulumi_gcp/datacatalog/get_policy_tag_iam_policy.py +2 -2
  158. pulumi_gcp/datacatalog/get_tag_template_iam_policy.py +2 -2
  159. pulumi_gcp/datacatalog/get_taxonomy_iam_policy.py +2 -2
  160. pulumi_gcp/dataform/get_repository_iam_policy.py +2 -2
  161. pulumi_gcp/datafusion/get_instance_iam_policy.py +2 -2
  162. pulumi_gcp/dataplex/get_aspect_type_iam_policy.py +2 -2
  163. pulumi_gcp/dataplex/get_asset_iam_policy.py +2 -2
  164. pulumi_gcp/dataplex/get_datascan_iam_policy.py +2 -2
  165. pulumi_gcp/dataplex/get_entry_group_iam_policy.py +2 -2
  166. pulumi_gcp/dataplex/get_entry_type_iam_policy.py +2 -2
  167. pulumi_gcp/dataplex/get_lake_iam_policy.py +2 -2
  168. pulumi_gcp/dataplex/get_task_iam_policy.py +2 -2
  169. pulumi_gcp/dataplex/get_zone_iam_policy.py +2 -2
  170. pulumi_gcp/dataproc/__init__.py +1 -0
  171. pulumi_gcp/dataproc/_inputs.py +490 -0
  172. pulumi_gcp/dataproc/gdc_spark_application.py +1658 -0
  173. pulumi_gcp/dataproc/get_autoscaling_policy_iam_policy.py +2 -2
  174. pulumi_gcp/dataproc/get_cluster_iam_policy.py +2 -2
  175. pulumi_gcp/dataproc/get_job_iam_policy.py +2 -2
  176. pulumi_gcp/dataproc/get_metastore_federation_iam_policy.py +2 -2
  177. pulumi_gcp/dataproc/get_metastore_service.py +2 -2
  178. pulumi_gcp/dataproc/get_metastore_service_iam_policy.py +2 -2
  179. pulumi_gcp/dataproc/outputs.py +385 -0
  180. pulumi_gcp/datastream/get_static_ips.py +2 -2
  181. pulumi_gcp/dns/get_keys.py +2 -2
  182. pulumi_gcp/dns/get_managed_zone.py +2 -2
  183. pulumi_gcp/dns/get_managed_zone_iam_policy.py +2 -2
  184. pulumi_gcp/dns/get_managed_zones.py +2 -2
  185. pulumi_gcp/dns/get_record_set.py +2 -2
  186. pulumi_gcp/endpoints/get_service_consumers_iam_policy.py +2 -2
  187. pulumi_gcp/endpoints/get_service_iam_policy.py +2 -2
  188. pulumi_gcp/filestore/_inputs.py +152 -0
  189. pulumi_gcp/filestore/get_instance.py +14 -3
  190. pulumi_gcp/filestore/instance.py +47 -0
  191. pulumi_gcp/filestore/outputs.py +229 -0
  192. pulumi_gcp/firebase/get_android_app.py +2 -2
  193. pulumi_gcp/firebase/get_android_app_config.py +2 -2
  194. pulumi_gcp/firebase/get_apple_app.py +2 -2
  195. pulumi_gcp/firebase/get_apple_app_config.py +2 -2
  196. pulumi_gcp/firebase/get_hosting_channel.py +2 -2
  197. pulumi_gcp/firebase/get_web_app.py +2 -2
  198. pulumi_gcp/firebase/get_web_app_config.py +2 -2
  199. pulumi_gcp/folder/get_iam_policy.py +2 -2
  200. pulumi_gcp/folder/get_organization_policy.py +2 -2
  201. pulumi_gcp/gkebackup/get_backup_plan_iam_policy.py +2 -2
  202. pulumi_gcp/gkebackup/get_restore_plan_iam_policy.py +2 -2
  203. pulumi_gcp/gkehub/get_feature_iam_policy.py +2 -2
  204. pulumi_gcp/gkehub/get_membership_binding.py +2 -2
  205. pulumi_gcp/gkehub/get_membership_iam_policy.py +2 -2
  206. pulumi_gcp/gkehub/get_scope_iam_policy.py +2 -2
  207. pulumi_gcp/healthcare/get_consent_store_iam_policy.py +2 -2
  208. pulumi_gcp/healthcare/get_dataset_iam_policy.py +2 -2
  209. pulumi_gcp/healthcare/get_dicom_store_iam_policy.py +2 -2
  210. pulumi_gcp/healthcare/get_fhir_store_iam_policy.py +2 -2
  211. pulumi_gcp/healthcare/get_hl7_v2_store_iam_policy.py +2 -2
  212. pulumi_gcp/iam/__init__.py +2 -0
  213. pulumi_gcp/iam/_inputs.py +274 -0
  214. pulumi_gcp/iam/folders_policy_binding.py +917 -0
  215. pulumi_gcp/iam/get_rule.py +2 -2
  216. pulumi_gcp/iam/get_testable_permissions.py +2 -2
  217. pulumi_gcp/iam/get_workload_identity_pool.py +2 -2
  218. pulumi_gcp/iam/get_workload_identity_pool_provider.py +2 -2
  219. pulumi_gcp/iam/organizations_policy_binding.py +901 -0
  220. pulumi_gcp/iam/outputs.py +198 -0
  221. pulumi_gcp/iap/get_app_engine_service_iam_policy.py +2 -2
  222. pulumi_gcp/iap/get_app_engine_version_iam_policy.py +2 -2
  223. pulumi_gcp/iap/get_client.py +2 -2
  224. pulumi_gcp/iap/get_tunnel_dest_group_iam_policy.py +2 -2
  225. pulumi_gcp/iap/get_tunnel_iam_policy.py +2 -2
  226. pulumi_gcp/iap/get_tunnel_instance_iam_policy.py +2 -2
  227. pulumi_gcp/iap/get_web_backend_service_iam_policy.py +2 -2
  228. pulumi_gcp/iap/get_web_iam_policy.py +2 -2
  229. pulumi_gcp/iap/get_web_region_backend_service_iam_policy.py +2 -2
  230. pulumi_gcp/iap/get_web_type_app_engine_iam_policy.py +2 -2
  231. pulumi_gcp/iap/get_web_type_compute_iam_policy.py +2 -2
  232. pulumi_gcp/kms/get_crypto_key_iam_policy.py +2 -2
  233. pulumi_gcp/kms/get_crypto_key_latest_version.py +2 -2
  234. pulumi_gcp/kms/get_crypto_key_versions.py +2 -2
  235. pulumi_gcp/kms/get_crypto_keys.py +2 -2
  236. pulumi_gcp/kms/get_ekm_connection_iam_policy.py +2 -2
  237. pulumi_gcp/kms/get_key_ring_iam_policy.py +2 -2
  238. pulumi_gcp/kms/get_key_rings.py +2 -2
  239. pulumi_gcp/kms/get_kms_crypto_key.py +2 -2
  240. pulumi_gcp/kms/get_kms_crypto_key_version.py +2 -2
  241. pulumi_gcp/kms/get_kms_key_ring.py +2 -2
  242. pulumi_gcp/kms/get_kms_secret.py +2 -2
  243. pulumi_gcp/kms/get_kms_secret_asymmetric.py +2 -2
  244. pulumi_gcp/kms/get_kms_secret_ciphertext.py +2 -2
  245. pulumi_gcp/logging/get_folder_settings.py +2 -2
  246. pulumi_gcp/logging/get_log_view_iam_policy.py +2 -2
  247. pulumi_gcp/logging/get_organization_settings.py +2 -2
  248. pulumi_gcp/logging/get_project_cmek_settings.py +2 -2
  249. pulumi_gcp/logging/get_project_settings.py +2 -2
  250. pulumi_gcp/logging/get_sink.py +2 -2
  251. pulumi_gcp/managedkafka/cluster.py +4 -0
  252. pulumi_gcp/managedkafka/topic.py +4 -0
  253. pulumi_gcp/monitoring/get_app_engine_service.py +2 -2
  254. pulumi_gcp/monitoring/get_cluster_istio_service.py +2 -2
  255. pulumi_gcp/monitoring/get_istio_canonical_service.py +2 -2
  256. pulumi_gcp/monitoring/get_mesh_istio_service.py +2 -2
  257. pulumi_gcp/monitoring/get_notification_channel.py +2 -2
  258. pulumi_gcp/monitoring/get_secret_version.py +2 -2
  259. pulumi_gcp/monitoring/get_uptime_check_i_ps.py +2 -2
  260. pulumi_gcp/networksecurity/get_address_group_iam_policy.py +2 -2
  261. pulumi_gcp/notebooks/get_instance_iam_policy.py +2 -2
  262. pulumi_gcp/notebooks/get_runtime_iam_policy.py +2 -2
  263. pulumi_gcp/oracledatabase/get_autonomous_database.py +2 -2
  264. pulumi_gcp/oracledatabase/get_autonomous_databases.py +2 -2
  265. pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructure.py +2 -2
  266. pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructures.py +2 -2
  267. pulumi_gcp/oracledatabase/get_cloud_vm_cluster.py +2 -2
  268. pulumi_gcp/oracledatabase/get_cloud_vm_clusters.py +2 -2
  269. pulumi_gcp/oracledatabase/get_db_nodes.py +2 -2
  270. pulumi_gcp/oracledatabase/get_db_servers.py +2 -2
  271. pulumi_gcp/organizations/get_active_folder.py +2 -2
  272. pulumi_gcp/organizations/get_billing_account.py +2 -2
  273. pulumi_gcp/organizations/get_client_config.py +2 -2
  274. pulumi_gcp/organizations/get_client_open_id_user_info.py +2 -2
  275. pulumi_gcp/organizations/get_folder.py +2 -2
  276. pulumi_gcp/organizations/get_folders.py +2 -2
  277. pulumi_gcp/organizations/get_iam_policy.py +2 -2
  278. pulumi_gcp/organizations/get_organization.py +2 -2
  279. pulumi_gcp/organizations/get_project.py +2 -2
  280. pulumi_gcp/privilegedaccessmanager/get_entitlement.py +2 -2
  281. pulumi_gcp/projects/get_iam_policy.py +2 -2
  282. pulumi_gcp/projects/get_organization_policy.py +2 -2
  283. pulumi_gcp/projects/get_project.py +2 -2
  284. pulumi_gcp/projects/get_project_service.py +2 -2
  285. pulumi_gcp/pubsub/get_schema_iam_policy.py +2 -2
  286. pulumi_gcp/pubsub/get_subscription.py +2 -2
  287. pulumi_gcp/pubsub/get_subscription_iam_policy.py +2 -2
  288. pulumi_gcp/pubsub/get_topic.py +2 -2
  289. pulumi_gcp/pubsub/get_topic_iam_policy.py +2 -2
  290. pulumi_gcp/pubsub/subscription.py +8 -8
  291. pulumi_gcp/pulumi-plugin.json +1 -1
  292. pulumi_gcp/redis/_inputs.py +213 -0
  293. pulumi_gcp/redis/cluster.py +289 -0
  294. pulumi_gcp/redis/get_instance.py +2 -2
  295. pulumi_gcp/redis/outputs.py +185 -0
  296. pulumi_gcp/runtimeconfig/get_config.py +2 -2
  297. pulumi_gcp/runtimeconfig/get_config_iam_policy.py +2 -2
  298. pulumi_gcp/runtimeconfig/get_variable.py +2 -2
  299. pulumi_gcp/secretmanager/get_regional_secret.py +2 -2
  300. pulumi_gcp/secretmanager/get_regional_secret_iam_policy.py +2 -2
  301. pulumi_gcp/secretmanager/get_regional_secret_version.py +2 -2
  302. pulumi_gcp/secretmanager/get_regional_secret_version_access.py +2 -2
  303. pulumi_gcp/secretmanager/get_regional_secrets.py +2 -2
  304. pulumi_gcp/secretmanager/get_secret.py +2 -2
  305. pulumi_gcp/secretmanager/get_secret_iam_policy.py +2 -2
  306. pulumi_gcp/secretmanager/get_secret_version.py +2 -2
  307. pulumi_gcp/secretmanager/get_secret_version_access.py +2 -2
  308. pulumi_gcp/secretmanager/get_secrets.py +2 -2
  309. pulumi_gcp/securesourcemanager/_inputs.py +33 -0
  310. pulumi_gcp/securesourcemanager/get_instance_iam_policy.py +2 -2
  311. pulumi_gcp/securesourcemanager/get_repository_iam_policy.py +2 -2
  312. pulumi_gcp/securesourcemanager/instance.py +90 -3
  313. pulumi_gcp/securesourcemanager/outputs.py +19 -0
  314. pulumi_gcp/securitycenter/get_source_iam_policy.py +2 -2
  315. pulumi_gcp/securitycenter/get_v2_organization_source_iam_policy.py +2 -2
  316. pulumi_gcp/serviceaccount/get_account.py +2 -2
  317. pulumi_gcp/serviceaccount/get_account_access_token.py +2 -2
  318. pulumi_gcp/serviceaccount/get_account_id_token.py +2 -2
  319. pulumi_gcp/serviceaccount/get_account_jwt.py +2 -2
  320. pulumi_gcp/serviceaccount/get_account_key.py +2 -2
  321. pulumi_gcp/serviceaccount/get_iam_policy.py +2 -2
  322. pulumi_gcp/serviceaccount/get_s.py +2 -2
  323. pulumi_gcp/servicedirectory/get_namespace_iam_policy.py +2 -2
  324. pulumi_gcp/servicedirectory/get_service_iam_policy.py +2 -2
  325. pulumi_gcp/servicenetworking/get_peered_dns_domain.py +2 -2
  326. pulumi_gcp/siteverification/get_token.py +2 -2
  327. pulumi_gcp/sourcerepo/get_repository.py +2 -2
  328. pulumi_gcp/sourcerepo/get_repository_iam_policy.py +2 -2
  329. pulumi_gcp/spanner/database.py +14 -14
  330. pulumi_gcp/spanner/get_database.py +2 -2
  331. pulumi_gcp/spanner/get_database_iam_policy.py +2 -2
  332. pulumi_gcp/spanner/get_instance.py +2 -2
  333. pulumi_gcp/spanner/get_instance_iam_policy.py +2 -2
  334. pulumi_gcp/sql/_inputs.py +73 -0
  335. pulumi_gcp/sql/database_instance.py +60 -0
  336. pulumi_gcp/sql/get_backup_run.py +2 -2
  337. pulumi_gcp/sql/get_ca_certs.py +2 -2
  338. pulumi_gcp/sql/get_database.py +2 -2
  339. pulumi_gcp/sql/get_database_instance.py +2 -2
  340. pulumi_gcp/sql/get_database_instance_latest_recovery_time.py +2 -2
  341. pulumi_gcp/sql/get_database_instances.py +2 -2
  342. pulumi_gcp/sql/get_databases.py +2 -2
  343. pulumi_gcp/sql/get_tiers.py +2 -2
  344. pulumi_gcp/sql/outputs.py +146 -0
  345. pulumi_gcp/sql/user.py +2 -2
  346. pulumi_gcp/storage/get_bucket.py +2 -2
  347. pulumi_gcp/storage/get_bucket_iam_policy.py +2 -2
  348. pulumi_gcp/storage/get_bucket_object.py +2 -2
  349. pulumi_gcp/storage/get_bucket_object_content.py +2 -2
  350. pulumi_gcp/storage/get_bucket_objects.py +2 -2
  351. pulumi_gcp/storage/get_buckets.py +2 -2
  352. pulumi_gcp/storage/get_managed_folder_iam_policy.py +2 -2
  353. pulumi_gcp/storage/get_object_signed_url.py +2 -2
  354. pulumi_gcp/storage/get_project_service_account.py +2 -2
  355. pulumi_gcp/storage/get_transfer_project_service_account.py +2 -2
  356. pulumi_gcp/storage/get_transfer_project_servie_account.py +2 -2
  357. pulumi_gcp/tags/get_tag_key.py +2 -2
  358. pulumi_gcp/tags/get_tag_key_iam_policy.py +2 -2
  359. pulumi_gcp/tags/get_tag_keys.py +2 -2
  360. pulumi_gcp/tags/get_tag_value.py +2 -2
  361. pulumi_gcp/tags/get_tag_value_iam_policy.py +2 -2
  362. pulumi_gcp/tags/get_tag_values.py +2 -2
  363. pulumi_gcp/tags/location_tag_binding.py +8 -8
  364. pulumi_gcp/tpu/get_tensorflow_versions.py +2 -2
  365. pulumi_gcp/tpu/get_v2_accelerator_types.py +2 -2
  366. pulumi_gcp/tpu/get_v2_runtime_versions.py +2 -2
  367. pulumi_gcp/vertex/get_ai_endpoint_iam_policy.py +2 -2
  368. pulumi_gcp/vertex/get_ai_featurestore_entitytype_iam_policy.py +2 -2
  369. pulumi_gcp/vertex/get_ai_featurestore_iam_policy.py +2 -2
  370. pulumi_gcp/vertex/get_ai_index.py +2 -2
  371. pulumi_gcp/vmwareengine/get_cluster.py +2 -2
  372. pulumi_gcp/vmwareengine/get_external_access_rule.py +2 -2
  373. pulumi_gcp/vmwareengine/get_external_address.py +2 -2
  374. pulumi_gcp/vmwareengine/get_network.py +2 -2
  375. pulumi_gcp/vmwareengine/get_network_peering.py +2 -2
  376. pulumi_gcp/vmwareengine/get_network_policy.py +2 -2
  377. pulumi_gcp/vmwareengine/get_nsx_credentials.py +2 -2
  378. pulumi_gcp/vmwareengine/get_private_cloud.py +2 -2
  379. pulumi_gcp/vmwareengine/get_subnet.py +2 -2
  380. pulumi_gcp/vmwareengine/get_vcenter_credentials.py +2 -2
  381. pulumi_gcp/vpcaccess/get_connector.py +2 -2
  382. pulumi_gcp/workbench/get_instance_iam_policy.py +2 -2
  383. pulumi_gcp/workstations/get_workstation_config_iam_policy.py +2 -2
  384. pulumi_gcp/workstations/get_workstation_iam_policy.py +2 -2
  385. {pulumi_gcp-8.10.0a1731950704.dist-info → pulumi_gcp-8.10.1.dist-info}/METADATA +5 -5
  386. {pulumi_gcp-8.10.0a1731950704.dist-info → pulumi_gcp-8.10.1.dist-info}/RECORD +388 -383
  387. {pulumi_gcp-8.10.0a1731950704.dist-info → pulumi_gcp-8.10.1.dist-info}/WHEEL +1 -1
  388. {pulumi_gcp-8.10.0a1731950704.dist-info → pulumi_gcp-8.10.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,901 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['OrganizationsPolicyBindingArgs', 'OrganizationsPolicyBinding']
20
+
21
+ @pulumi.input_type
22
+ class OrganizationsPolicyBindingArgs:
23
+ def __init__(__self__, *,
24
+ location: pulumi.Input[str],
25
+ organization: pulumi.Input[str],
26
+ policy: pulumi.Input[str],
27
+ policy_binding_id: pulumi.Input[str],
28
+ target: pulumi.Input['OrganizationsPolicyBindingTargetArgs'],
29
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
30
+ condition: Optional[pulumi.Input['OrganizationsPolicyBindingConditionArgs']] = None,
31
+ display_name: Optional[pulumi.Input[str]] = None,
32
+ policy_kind: Optional[pulumi.Input[str]] = None):
33
+ """
34
+ The set of arguments for constructing a OrganizationsPolicyBinding resource.
35
+ :param pulumi.Input[str] location: The location of the Policy Binding
36
+ :param pulumi.Input[str] organization: The parent organization of the Policy Binding.
37
+ :param pulumi.Input[str] policy: Required. Immutable. The resource name of the policy to be bound. The binding parent and policy must belong to the same Organization (or Project).
38
+ :param pulumi.Input[str] policy_binding_id: The Policy Binding ID.
39
+ :param pulumi.Input['OrganizationsPolicyBindingTargetArgs'] target: Target is the full resource name of the resource to which the policy will be bound. Immutable once set.
40
+ Structure is documented below.
41
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] annotations: Optional. User defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size
42
+ limitations **Note**: This field is non-authoritative, and will only manage the annotations present in your
43
+ configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
44
+ :param pulumi.Input['OrganizationsPolicyBindingConditionArgs'] condition: Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The
45
+ syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: \\"Summary
46
+ size limit\\" description: \\"Determines if a summary is less than 100 chars\\" expression: \\"document.summary.size() <
47
+ 100\\" Example (Equality): title: \\"Requestor is owner\\" description: \\"Determines if requestor is the document owner\\"
48
+ expression: \\"document.owner == request.auth.claims.email\\" Example (Logic): title: \\"Public documents\\" description:
49
+ \\"Determine whether the document should be publicly visible\\" expression: \\"document.type != 'private' && document.type
50
+ != 'internal'\\" Example (Data Manipulation): title: \\"Notification string\\" description: \\"Create a notification string
51
+ with a timestamp.\\" expression: \\"'New message received at ' + string(document.create_time)\\" The exact variables and
52
+ functions that may be referenced within an expression are determined by the service that evaluates it. See the service
53
+ documentation for additional information.
54
+ :param pulumi.Input[str] display_name: Optional. The description of the policy binding. Must be less than or equal to 63 characters.
55
+ :param pulumi.Input[str] policy_kind: Immutable. The kind of the policy to attach in this binding. This field must be one of the following: - Left empty (will
56
+ be automatically set to the policy kind) - The input policy kind Possible values: POLICY_KIND_UNSPECIFIED
57
+ PRINCIPAL_ACCESS_BOUNDARY ACCESS
58
+ """
59
+ pulumi.set(__self__, "location", location)
60
+ pulumi.set(__self__, "organization", organization)
61
+ pulumi.set(__self__, "policy", policy)
62
+ pulumi.set(__self__, "policy_binding_id", policy_binding_id)
63
+ pulumi.set(__self__, "target", target)
64
+ if annotations is not None:
65
+ pulumi.set(__self__, "annotations", annotations)
66
+ if condition is not None:
67
+ pulumi.set(__self__, "condition", condition)
68
+ if display_name is not None:
69
+ pulumi.set(__self__, "display_name", display_name)
70
+ if policy_kind is not None:
71
+ pulumi.set(__self__, "policy_kind", policy_kind)
72
+
73
+ @property
74
+ @pulumi.getter
75
+ def location(self) -> pulumi.Input[str]:
76
+ """
77
+ The location of the Policy Binding
78
+ """
79
+ return pulumi.get(self, "location")
80
+
81
+ @location.setter
82
+ def location(self, value: pulumi.Input[str]):
83
+ pulumi.set(self, "location", value)
84
+
85
+ @property
86
+ @pulumi.getter
87
+ def organization(self) -> pulumi.Input[str]:
88
+ """
89
+ The parent organization of the Policy Binding.
90
+ """
91
+ return pulumi.get(self, "organization")
92
+
93
+ @organization.setter
94
+ def organization(self, value: pulumi.Input[str]):
95
+ pulumi.set(self, "organization", value)
96
+
97
+ @property
98
+ @pulumi.getter
99
+ def policy(self) -> pulumi.Input[str]:
100
+ """
101
+ Required. Immutable. The resource name of the policy to be bound. The binding parent and policy must belong to the same Organization (or Project).
102
+ """
103
+ return pulumi.get(self, "policy")
104
+
105
+ @policy.setter
106
+ def policy(self, value: pulumi.Input[str]):
107
+ pulumi.set(self, "policy", value)
108
+
109
+ @property
110
+ @pulumi.getter(name="policyBindingId")
111
+ def policy_binding_id(self) -> pulumi.Input[str]:
112
+ """
113
+ The Policy Binding ID.
114
+ """
115
+ return pulumi.get(self, "policy_binding_id")
116
+
117
+ @policy_binding_id.setter
118
+ def policy_binding_id(self, value: pulumi.Input[str]):
119
+ pulumi.set(self, "policy_binding_id", value)
120
+
121
+ @property
122
+ @pulumi.getter
123
+ def target(self) -> pulumi.Input['OrganizationsPolicyBindingTargetArgs']:
124
+ """
125
+ Target is the full resource name of the resource to which the policy will be bound. Immutable once set.
126
+ Structure is documented below.
127
+ """
128
+ return pulumi.get(self, "target")
129
+
130
+ @target.setter
131
+ def target(self, value: pulumi.Input['OrganizationsPolicyBindingTargetArgs']):
132
+ pulumi.set(self, "target", value)
133
+
134
+ @property
135
+ @pulumi.getter
136
+ def annotations(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
137
+ """
138
+ Optional. User defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size
139
+ limitations **Note**: This field is non-authoritative, and will only manage the annotations present in your
140
+ configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
141
+ """
142
+ return pulumi.get(self, "annotations")
143
+
144
+ @annotations.setter
145
+ def annotations(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
146
+ pulumi.set(self, "annotations", value)
147
+
148
+ @property
149
+ @pulumi.getter
150
+ def condition(self) -> Optional[pulumi.Input['OrganizationsPolicyBindingConditionArgs']]:
151
+ """
152
+ Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The
153
+ syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: \\"Summary
154
+ size limit\\" description: \\"Determines if a summary is less than 100 chars\\" expression: \\"document.summary.size() <
155
+ 100\\" Example (Equality): title: \\"Requestor is owner\\" description: \\"Determines if requestor is the document owner\\"
156
+ expression: \\"document.owner == request.auth.claims.email\\" Example (Logic): title: \\"Public documents\\" description:
157
+ \\"Determine whether the document should be publicly visible\\" expression: \\"document.type != 'private' && document.type
158
+ != 'internal'\\" Example (Data Manipulation): title: \\"Notification string\\" description: \\"Create a notification string
159
+ with a timestamp.\\" expression: \\"'New message received at ' + string(document.create_time)\\" The exact variables and
160
+ functions that may be referenced within an expression are determined by the service that evaluates it. See the service
161
+ documentation for additional information.
162
+ """
163
+ return pulumi.get(self, "condition")
164
+
165
+ @condition.setter
166
+ def condition(self, value: Optional[pulumi.Input['OrganizationsPolicyBindingConditionArgs']]):
167
+ pulumi.set(self, "condition", value)
168
+
169
+ @property
170
+ @pulumi.getter(name="displayName")
171
+ def display_name(self) -> Optional[pulumi.Input[str]]:
172
+ """
173
+ Optional. The description of the policy binding. Must be less than or equal to 63 characters.
174
+ """
175
+ return pulumi.get(self, "display_name")
176
+
177
+ @display_name.setter
178
+ def display_name(self, value: Optional[pulumi.Input[str]]):
179
+ pulumi.set(self, "display_name", value)
180
+
181
+ @property
182
+ @pulumi.getter(name="policyKind")
183
+ def policy_kind(self) -> Optional[pulumi.Input[str]]:
184
+ """
185
+ Immutable. The kind of the policy to attach in this binding. This field must be one of the following: - Left empty (will
186
+ be automatically set to the policy kind) - The input policy kind Possible values: POLICY_KIND_UNSPECIFIED
187
+ PRINCIPAL_ACCESS_BOUNDARY ACCESS
188
+ """
189
+ return pulumi.get(self, "policy_kind")
190
+
191
+ @policy_kind.setter
192
+ def policy_kind(self, value: Optional[pulumi.Input[str]]):
193
+ pulumi.set(self, "policy_kind", value)
194
+
195
+
196
+ @pulumi.input_type
197
+ class _OrganizationsPolicyBindingState:
198
+ def __init__(__self__, *,
199
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
200
+ condition: Optional[pulumi.Input['OrganizationsPolicyBindingConditionArgs']] = None,
201
+ create_time: Optional[pulumi.Input[str]] = None,
202
+ display_name: Optional[pulumi.Input[str]] = None,
203
+ effective_annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
204
+ etag: Optional[pulumi.Input[str]] = None,
205
+ location: Optional[pulumi.Input[str]] = None,
206
+ name: Optional[pulumi.Input[str]] = None,
207
+ organization: Optional[pulumi.Input[str]] = None,
208
+ policy: Optional[pulumi.Input[str]] = None,
209
+ policy_binding_id: Optional[pulumi.Input[str]] = None,
210
+ policy_kind: Optional[pulumi.Input[str]] = None,
211
+ policy_uid: Optional[pulumi.Input[str]] = None,
212
+ target: Optional[pulumi.Input['OrganizationsPolicyBindingTargetArgs']] = None,
213
+ uid: Optional[pulumi.Input[str]] = None,
214
+ update_time: Optional[pulumi.Input[str]] = None):
215
+ """
216
+ Input properties used for looking up and filtering OrganizationsPolicyBinding resources.
217
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] annotations: Optional. User defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size
218
+ limitations **Note**: This field is non-authoritative, and will only manage the annotations present in your
219
+ configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
220
+ :param pulumi.Input['OrganizationsPolicyBindingConditionArgs'] condition: Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The
221
+ syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: \\"Summary
222
+ size limit\\" description: \\"Determines if a summary is less than 100 chars\\" expression: \\"document.summary.size() <
223
+ 100\\" Example (Equality): title: \\"Requestor is owner\\" description: \\"Determines if requestor is the document owner\\"
224
+ expression: \\"document.owner == request.auth.claims.email\\" Example (Logic): title: \\"Public documents\\" description:
225
+ \\"Determine whether the document should be publicly visible\\" expression: \\"document.type != 'private' && document.type
226
+ != 'internal'\\" Example (Data Manipulation): title: \\"Notification string\\" description: \\"Create a notification string
227
+ with a timestamp.\\" expression: \\"'New message received at ' + string(document.create_time)\\" The exact variables and
228
+ functions that may be referenced within an expression are determined by the service that evaluates it. See the service
229
+ documentation for additional information.
230
+ :param pulumi.Input[str] create_time: Output only. The time when the policy binding was created.
231
+ :param pulumi.Input[str] display_name: Optional. The description of the policy binding. Must be less than or equal to 63 characters.
232
+ :param pulumi.Input[str] etag: Optional. The etag for the policy binding. If this is provided on update, it must match the server's etag.
233
+ :param pulumi.Input[str] location: The location of the Policy Binding
234
+ :param pulumi.Input[str] name: The name of the policy binding in the format `{binding_parent/locations/{location}/policyBindings/{policy_binding_id}`
235
+ :param pulumi.Input[str] organization: The parent organization of the Policy Binding.
236
+ :param pulumi.Input[str] policy: Required. Immutable. The resource name of the policy to be bound. The binding parent and policy must belong to the same Organization (or Project).
237
+ :param pulumi.Input[str] policy_binding_id: The Policy Binding ID.
238
+ :param pulumi.Input[str] policy_kind: Immutable. The kind of the policy to attach in this binding. This field must be one of the following: - Left empty (will
239
+ be automatically set to the policy kind) - The input policy kind Possible values: POLICY_KIND_UNSPECIFIED
240
+ PRINCIPAL_ACCESS_BOUNDARY ACCESS
241
+ :param pulumi.Input[str] policy_uid: Output only. The globally unique ID of the policy to be bound.
242
+ :param pulumi.Input['OrganizationsPolicyBindingTargetArgs'] target: Target is the full resource name of the resource to which the policy will be bound. Immutable once set.
243
+ Structure is documented below.
244
+ :param pulumi.Input[str] uid: Output only. The globally unique ID of the policy binding. Assigned when the policy binding is created.
245
+ :param pulumi.Input[str] update_time: Output only. The time when the policy binding was most recently updated.
246
+ """
247
+ if annotations is not None:
248
+ pulumi.set(__self__, "annotations", annotations)
249
+ if condition is not None:
250
+ pulumi.set(__self__, "condition", condition)
251
+ if create_time is not None:
252
+ pulumi.set(__self__, "create_time", create_time)
253
+ if display_name is not None:
254
+ pulumi.set(__self__, "display_name", display_name)
255
+ if effective_annotations is not None:
256
+ pulumi.set(__self__, "effective_annotations", effective_annotations)
257
+ if etag is not None:
258
+ pulumi.set(__self__, "etag", etag)
259
+ if location is not None:
260
+ pulumi.set(__self__, "location", location)
261
+ if name is not None:
262
+ pulumi.set(__self__, "name", name)
263
+ if organization is not None:
264
+ pulumi.set(__self__, "organization", organization)
265
+ if policy is not None:
266
+ pulumi.set(__self__, "policy", policy)
267
+ if policy_binding_id is not None:
268
+ pulumi.set(__self__, "policy_binding_id", policy_binding_id)
269
+ if policy_kind is not None:
270
+ pulumi.set(__self__, "policy_kind", policy_kind)
271
+ if policy_uid is not None:
272
+ pulumi.set(__self__, "policy_uid", policy_uid)
273
+ if target is not None:
274
+ pulumi.set(__self__, "target", target)
275
+ if uid is not None:
276
+ pulumi.set(__self__, "uid", uid)
277
+ if update_time is not None:
278
+ pulumi.set(__self__, "update_time", update_time)
279
+
280
+ @property
281
+ @pulumi.getter
282
+ def annotations(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
283
+ """
284
+ Optional. User defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size
285
+ limitations **Note**: This field is non-authoritative, and will only manage the annotations present in your
286
+ configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
287
+ """
288
+ return pulumi.get(self, "annotations")
289
+
290
+ @annotations.setter
291
+ def annotations(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
292
+ pulumi.set(self, "annotations", value)
293
+
294
+ @property
295
+ @pulumi.getter
296
+ def condition(self) -> Optional[pulumi.Input['OrganizationsPolicyBindingConditionArgs']]:
297
+ """
298
+ Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The
299
+ syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: \\"Summary
300
+ size limit\\" description: \\"Determines if a summary is less than 100 chars\\" expression: \\"document.summary.size() <
301
+ 100\\" Example (Equality): title: \\"Requestor is owner\\" description: \\"Determines if requestor is the document owner\\"
302
+ expression: \\"document.owner == request.auth.claims.email\\" Example (Logic): title: \\"Public documents\\" description:
303
+ \\"Determine whether the document should be publicly visible\\" expression: \\"document.type != 'private' && document.type
304
+ != 'internal'\\" Example (Data Manipulation): title: \\"Notification string\\" description: \\"Create a notification string
305
+ with a timestamp.\\" expression: \\"'New message received at ' + string(document.create_time)\\" The exact variables and
306
+ functions that may be referenced within an expression are determined by the service that evaluates it. See the service
307
+ documentation for additional information.
308
+ """
309
+ return pulumi.get(self, "condition")
310
+
311
+ @condition.setter
312
+ def condition(self, value: Optional[pulumi.Input['OrganizationsPolicyBindingConditionArgs']]):
313
+ pulumi.set(self, "condition", value)
314
+
315
+ @property
316
+ @pulumi.getter(name="createTime")
317
+ def create_time(self) -> Optional[pulumi.Input[str]]:
318
+ """
319
+ Output only. The time when the policy binding was created.
320
+ """
321
+ return pulumi.get(self, "create_time")
322
+
323
+ @create_time.setter
324
+ def create_time(self, value: Optional[pulumi.Input[str]]):
325
+ pulumi.set(self, "create_time", value)
326
+
327
+ @property
328
+ @pulumi.getter(name="displayName")
329
+ def display_name(self) -> Optional[pulumi.Input[str]]:
330
+ """
331
+ Optional. The description of the policy binding. Must be less than or equal to 63 characters.
332
+ """
333
+ return pulumi.get(self, "display_name")
334
+
335
+ @display_name.setter
336
+ def display_name(self, value: Optional[pulumi.Input[str]]):
337
+ pulumi.set(self, "display_name", value)
338
+
339
+ @property
340
+ @pulumi.getter(name="effectiveAnnotations")
341
+ def effective_annotations(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
342
+ return pulumi.get(self, "effective_annotations")
343
+
344
+ @effective_annotations.setter
345
+ def effective_annotations(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
346
+ pulumi.set(self, "effective_annotations", value)
347
+
348
+ @property
349
+ @pulumi.getter
350
+ def etag(self) -> Optional[pulumi.Input[str]]:
351
+ """
352
+ Optional. The etag for the policy binding. If this is provided on update, it must match the server's etag.
353
+ """
354
+ return pulumi.get(self, "etag")
355
+
356
+ @etag.setter
357
+ def etag(self, value: Optional[pulumi.Input[str]]):
358
+ pulumi.set(self, "etag", value)
359
+
360
+ @property
361
+ @pulumi.getter
362
+ def location(self) -> Optional[pulumi.Input[str]]:
363
+ """
364
+ The location of the Policy Binding
365
+ """
366
+ return pulumi.get(self, "location")
367
+
368
+ @location.setter
369
+ def location(self, value: Optional[pulumi.Input[str]]):
370
+ pulumi.set(self, "location", value)
371
+
372
+ @property
373
+ @pulumi.getter
374
+ def name(self) -> Optional[pulumi.Input[str]]:
375
+ """
376
+ The name of the policy binding in the format `{binding_parent/locations/{location}/policyBindings/{policy_binding_id}`
377
+ """
378
+ return pulumi.get(self, "name")
379
+
380
+ @name.setter
381
+ def name(self, value: Optional[pulumi.Input[str]]):
382
+ pulumi.set(self, "name", value)
383
+
384
+ @property
385
+ @pulumi.getter
386
+ def organization(self) -> Optional[pulumi.Input[str]]:
387
+ """
388
+ The parent organization of the Policy Binding.
389
+ """
390
+ return pulumi.get(self, "organization")
391
+
392
+ @organization.setter
393
+ def organization(self, value: Optional[pulumi.Input[str]]):
394
+ pulumi.set(self, "organization", value)
395
+
396
+ @property
397
+ @pulumi.getter
398
+ def policy(self) -> Optional[pulumi.Input[str]]:
399
+ """
400
+ Required. Immutable. The resource name of the policy to be bound. The binding parent and policy must belong to the same Organization (or Project).
401
+ """
402
+ return pulumi.get(self, "policy")
403
+
404
+ @policy.setter
405
+ def policy(self, value: Optional[pulumi.Input[str]]):
406
+ pulumi.set(self, "policy", value)
407
+
408
+ @property
409
+ @pulumi.getter(name="policyBindingId")
410
+ def policy_binding_id(self) -> Optional[pulumi.Input[str]]:
411
+ """
412
+ The Policy Binding ID.
413
+ """
414
+ return pulumi.get(self, "policy_binding_id")
415
+
416
+ @policy_binding_id.setter
417
+ def policy_binding_id(self, value: Optional[pulumi.Input[str]]):
418
+ pulumi.set(self, "policy_binding_id", value)
419
+
420
+ @property
421
+ @pulumi.getter(name="policyKind")
422
+ def policy_kind(self) -> Optional[pulumi.Input[str]]:
423
+ """
424
+ Immutable. The kind of the policy to attach in this binding. This field must be one of the following: - Left empty (will
425
+ be automatically set to the policy kind) - The input policy kind Possible values: POLICY_KIND_UNSPECIFIED
426
+ PRINCIPAL_ACCESS_BOUNDARY ACCESS
427
+ """
428
+ return pulumi.get(self, "policy_kind")
429
+
430
+ @policy_kind.setter
431
+ def policy_kind(self, value: Optional[pulumi.Input[str]]):
432
+ pulumi.set(self, "policy_kind", value)
433
+
434
+ @property
435
+ @pulumi.getter(name="policyUid")
436
+ def policy_uid(self) -> Optional[pulumi.Input[str]]:
437
+ """
438
+ Output only. The globally unique ID of the policy to be bound.
439
+ """
440
+ return pulumi.get(self, "policy_uid")
441
+
442
+ @policy_uid.setter
443
+ def policy_uid(self, value: Optional[pulumi.Input[str]]):
444
+ pulumi.set(self, "policy_uid", value)
445
+
446
+ @property
447
+ @pulumi.getter
448
+ def target(self) -> Optional[pulumi.Input['OrganizationsPolicyBindingTargetArgs']]:
449
+ """
450
+ Target is the full resource name of the resource to which the policy will be bound. Immutable once set.
451
+ Structure is documented below.
452
+ """
453
+ return pulumi.get(self, "target")
454
+
455
+ @target.setter
456
+ def target(self, value: Optional[pulumi.Input['OrganizationsPolicyBindingTargetArgs']]):
457
+ pulumi.set(self, "target", value)
458
+
459
+ @property
460
+ @pulumi.getter
461
+ def uid(self) -> Optional[pulumi.Input[str]]:
462
+ """
463
+ Output only. The globally unique ID of the policy binding. Assigned when the policy binding is created.
464
+ """
465
+ return pulumi.get(self, "uid")
466
+
467
+ @uid.setter
468
+ def uid(self, value: Optional[pulumi.Input[str]]):
469
+ pulumi.set(self, "uid", value)
470
+
471
+ @property
472
+ @pulumi.getter(name="updateTime")
473
+ def update_time(self) -> Optional[pulumi.Input[str]]:
474
+ """
475
+ Output only. The time when the policy binding was most recently updated.
476
+ """
477
+ return pulumi.get(self, "update_time")
478
+
479
+ @update_time.setter
480
+ def update_time(self, value: Optional[pulumi.Input[str]]):
481
+ pulumi.set(self, "update_time", value)
482
+
483
+
484
+ class OrganizationsPolicyBinding(pulumi.CustomResource):
485
+ @overload
486
+ def __init__(__self__,
487
+ resource_name: str,
488
+ opts: Optional[pulumi.ResourceOptions] = None,
489
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
490
+ condition: Optional[pulumi.Input[Union['OrganizationsPolicyBindingConditionArgs', 'OrganizationsPolicyBindingConditionArgsDict']]] = None,
491
+ display_name: Optional[pulumi.Input[str]] = None,
492
+ location: Optional[pulumi.Input[str]] = None,
493
+ organization: Optional[pulumi.Input[str]] = None,
494
+ policy: Optional[pulumi.Input[str]] = None,
495
+ policy_binding_id: Optional[pulumi.Input[str]] = None,
496
+ policy_kind: Optional[pulumi.Input[str]] = None,
497
+ target: Optional[pulumi.Input[Union['OrganizationsPolicyBindingTargetArgs', 'OrganizationsPolicyBindingTargetArgsDict']]] = None,
498
+ __props__=None):
499
+ """
500
+ ## Example Usage
501
+
502
+ ### Iam Organizations Policy Binding
503
+
504
+ ```python
505
+ import pulumi
506
+ import pulumi_gcp as gcp
507
+
508
+ pab_policy = gcp.iam.PrincipalAccessBoundaryPolicy("pab_policy",
509
+ organization="123456789",
510
+ location="global",
511
+ display_name="test org binding",
512
+ principal_access_boundary_policy_id="my-pab-policy")
513
+ my_org_binding = gcp.iam.OrganizationsPolicyBinding("my-org-binding",
514
+ organization="123456789",
515
+ location="global",
516
+ display_name="test org binding",
517
+ policy_kind="PRINCIPAL_ACCESS_BOUNDARY",
518
+ policy_binding_id="test-org-binding",
519
+ policy=pab_policy.principal_access_boundary_policy_id.apply(lambda principal_access_boundary_policy_id: f"organizations/123456789/locations/global/principalAccessBoundaryPolicies/{principal_access_boundary_policy_id}"),
520
+ target={
521
+ "principal_set": "//cloudresourcemanager.googleapis.com/organizations/123456789",
522
+ })
523
+ ```
524
+
525
+ ## Import
526
+
527
+ OrganizationsPolicyBinding can be imported using any of these accepted formats:
528
+
529
+ * `organizations/{{organization}}/locations/{{location}}/policyBindings/{{policy_binding_id}}`
530
+
531
+ * `{{organization}}/{{location}}/{{policy_binding_id}}`
532
+
533
+ When using the `pulumi import` command, OrganizationsPolicyBinding can be imported using one of the formats above. For example:
534
+
535
+ ```sh
536
+ $ pulumi import gcp:iam/organizationsPolicyBinding:OrganizationsPolicyBinding default organizations/{{organization}}/locations/{{location}}/policyBindings/{{policy_binding_id}}
537
+ ```
538
+
539
+ ```sh
540
+ $ pulumi import gcp:iam/organizationsPolicyBinding:OrganizationsPolicyBinding default {{organization}}/{{location}}/{{policy_binding_id}}
541
+ ```
542
+
543
+ :param str resource_name: The name of the resource.
544
+ :param pulumi.ResourceOptions opts: Options for the resource.
545
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] annotations: Optional. User defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size
546
+ limitations **Note**: This field is non-authoritative, and will only manage the annotations present in your
547
+ configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
548
+ :param pulumi.Input[Union['OrganizationsPolicyBindingConditionArgs', 'OrganizationsPolicyBindingConditionArgsDict']] condition: Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The
549
+ syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: \\"Summary
550
+ size limit\\" description: \\"Determines if a summary is less than 100 chars\\" expression: \\"document.summary.size() <
551
+ 100\\" Example (Equality): title: \\"Requestor is owner\\" description: \\"Determines if requestor is the document owner\\"
552
+ expression: \\"document.owner == request.auth.claims.email\\" Example (Logic): title: \\"Public documents\\" description:
553
+ \\"Determine whether the document should be publicly visible\\" expression: \\"document.type != 'private' && document.type
554
+ != 'internal'\\" Example (Data Manipulation): title: \\"Notification string\\" description: \\"Create a notification string
555
+ with a timestamp.\\" expression: \\"'New message received at ' + string(document.create_time)\\" The exact variables and
556
+ functions that may be referenced within an expression are determined by the service that evaluates it. See the service
557
+ documentation for additional information.
558
+ :param pulumi.Input[str] display_name: Optional. The description of the policy binding. Must be less than or equal to 63 characters.
559
+ :param pulumi.Input[str] location: The location of the Policy Binding
560
+ :param pulumi.Input[str] organization: The parent organization of the Policy Binding.
561
+ :param pulumi.Input[str] policy: Required. Immutable. The resource name of the policy to be bound. The binding parent and policy must belong to the same Organization (or Project).
562
+ :param pulumi.Input[str] policy_binding_id: The Policy Binding ID.
563
+ :param pulumi.Input[str] policy_kind: Immutable. The kind of the policy to attach in this binding. This field must be one of the following: - Left empty (will
564
+ be automatically set to the policy kind) - The input policy kind Possible values: POLICY_KIND_UNSPECIFIED
565
+ PRINCIPAL_ACCESS_BOUNDARY ACCESS
566
+ :param pulumi.Input[Union['OrganizationsPolicyBindingTargetArgs', 'OrganizationsPolicyBindingTargetArgsDict']] target: Target is the full resource name of the resource to which the policy will be bound. Immutable once set.
567
+ Structure is documented below.
568
+ """
569
+ ...
570
+ @overload
571
+ def __init__(__self__,
572
+ resource_name: str,
573
+ args: OrganizationsPolicyBindingArgs,
574
+ opts: Optional[pulumi.ResourceOptions] = None):
575
+ """
576
+ ## Example Usage
577
+
578
+ ### Iam Organizations Policy Binding
579
+
580
+ ```python
581
+ import pulumi
582
+ import pulumi_gcp as gcp
583
+
584
+ pab_policy = gcp.iam.PrincipalAccessBoundaryPolicy("pab_policy",
585
+ organization="123456789",
586
+ location="global",
587
+ display_name="test org binding",
588
+ principal_access_boundary_policy_id="my-pab-policy")
589
+ my_org_binding = gcp.iam.OrganizationsPolicyBinding("my-org-binding",
590
+ organization="123456789",
591
+ location="global",
592
+ display_name="test org binding",
593
+ policy_kind="PRINCIPAL_ACCESS_BOUNDARY",
594
+ policy_binding_id="test-org-binding",
595
+ policy=pab_policy.principal_access_boundary_policy_id.apply(lambda principal_access_boundary_policy_id: f"organizations/123456789/locations/global/principalAccessBoundaryPolicies/{principal_access_boundary_policy_id}"),
596
+ target={
597
+ "principal_set": "//cloudresourcemanager.googleapis.com/organizations/123456789",
598
+ })
599
+ ```
600
+
601
+ ## Import
602
+
603
+ OrganizationsPolicyBinding can be imported using any of these accepted formats:
604
+
605
+ * `organizations/{{organization}}/locations/{{location}}/policyBindings/{{policy_binding_id}}`
606
+
607
+ * `{{organization}}/{{location}}/{{policy_binding_id}}`
608
+
609
+ When using the `pulumi import` command, OrganizationsPolicyBinding can be imported using one of the formats above. For example:
610
+
611
+ ```sh
612
+ $ pulumi import gcp:iam/organizationsPolicyBinding:OrganizationsPolicyBinding default organizations/{{organization}}/locations/{{location}}/policyBindings/{{policy_binding_id}}
613
+ ```
614
+
615
+ ```sh
616
+ $ pulumi import gcp:iam/organizationsPolicyBinding:OrganizationsPolicyBinding default {{organization}}/{{location}}/{{policy_binding_id}}
617
+ ```
618
+
619
+ :param str resource_name: The name of the resource.
620
+ :param OrganizationsPolicyBindingArgs args: The arguments to use to populate this resource's properties.
621
+ :param pulumi.ResourceOptions opts: Options for the resource.
622
+ """
623
+ ...
624
+ def __init__(__self__, resource_name: str, *args, **kwargs):
625
+ resource_args, opts = _utilities.get_resource_args_opts(OrganizationsPolicyBindingArgs, pulumi.ResourceOptions, *args, **kwargs)
626
+ if resource_args is not None:
627
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
628
+ else:
629
+ __self__._internal_init(resource_name, *args, **kwargs)
630
+
631
+ def _internal_init(__self__,
632
+ resource_name: str,
633
+ opts: Optional[pulumi.ResourceOptions] = None,
634
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
635
+ condition: Optional[pulumi.Input[Union['OrganizationsPolicyBindingConditionArgs', 'OrganizationsPolicyBindingConditionArgsDict']]] = None,
636
+ display_name: Optional[pulumi.Input[str]] = None,
637
+ location: Optional[pulumi.Input[str]] = None,
638
+ organization: Optional[pulumi.Input[str]] = None,
639
+ policy: Optional[pulumi.Input[str]] = None,
640
+ policy_binding_id: Optional[pulumi.Input[str]] = None,
641
+ policy_kind: Optional[pulumi.Input[str]] = None,
642
+ target: Optional[pulumi.Input[Union['OrganizationsPolicyBindingTargetArgs', 'OrganizationsPolicyBindingTargetArgsDict']]] = None,
643
+ __props__=None):
644
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
645
+ if not isinstance(opts, pulumi.ResourceOptions):
646
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
647
+ if opts.id is None:
648
+ if __props__ is not None:
649
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
650
+ __props__ = OrganizationsPolicyBindingArgs.__new__(OrganizationsPolicyBindingArgs)
651
+
652
+ __props__.__dict__["annotations"] = annotations
653
+ __props__.__dict__["condition"] = condition
654
+ __props__.__dict__["display_name"] = display_name
655
+ if location is None and not opts.urn:
656
+ raise TypeError("Missing required property 'location'")
657
+ __props__.__dict__["location"] = location
658
+ if organization is None and not opts.urn:
659
+ raise TypeError("Missing required property 'organization'")
660
+ __props__.__dict__["organization"] = organization
661
+ if policy is None and not opts.urn:
662
+ raise TypeError("Missing required property 'policy'")
663
+ __props__.__dict__["policy"] = policy
664
+ if policy_binding_id is None and not opts.urn:
665
+ raise TypeError("Missing required property 'policy_binding_id'")
666
+ __props__.__dict__["policy_binding_id"] = policy_binding_id
667
+ __props__.__dict__["policy_kind"] = policy_kind
668
+ if target is None and not opts.urn:
669
+ raise TypeError("Missing required property 'target'")
670
+ __props__.__dict__["target"] = target
671
+ __props__.__dict__["create_time"] = None
672
+ __props__.__dict__["effective_annotations"] = None
673
+ __props__.__dict__["etag"] = None
674
+ __props__.__dict__["name"] = None
675
+ __props__.__dict__["policy_uid"] = None
676
+ __props__.__dict__["uid"] = None
677
+ __props__.__dict__["update_time"] = None
678
+ super(OrganizationsPolicyBinding, __self__).__init__(
679
+ 'gcp:iam/organizationsPolicyBinding:OrganizationsPolicyBinding',
680
+ resource_name,
681
+ __props__,
682
+ opts)
683
+
684
+ @staticmethod
685
+ def get(resource_name: str,
686
+ id: pulumi.Input[str],
687
+ opts: Optional[pulumi.ResourceOptions] = None,
688
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
689
+ condition: Optional[pulumi.Input[Union['OrganizationsPolicyBindingConditionArgs', 'OrganizationsPolicyBindingConditionArgsDict']]] = None,
690
+ create_time: Optional[pulumi.Input[str]] = None,
691
+ display_name: Optional[pulumi.Input[str]] = None,
692
+ effective_annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
693
+ etag: Optional[pulumi.Input[str]] = None,
694
+ location: Optional[pulumi.Input[str]] = None,
695
+ name: Optional[pulumi.Input[str]] = None,
696
+ organization: Optional[pulumi.Input[str]] = None,
697
+ policy: Optional[pulumi.Input[str]] = None,
698
+ policy_binding_id: Optional[pulumi.Input[str]] = None,
699
+ policy_kind: Optional[pulumi.Input[str]] = None,
700
+ policy_uid: Optional[pulumi.Input[str]] = None,
701
+ target: Optional[pulumi.Input[Union['OrganizationsPolicyBindingTargetArgs', 'OrganizationsPolicyBindingTargetArgsDict']]] = None,
702
+ uid: Optional[pulumi.Input[str]] = None,
703
+ update_time: Optional[pulumi.Input[str]] = None) -> 'OrganizationsPolicyBinding':
704
+ """
705
+ Get an existing OrganizationsPolicyBinding resource's state with the given name, id, and optional extra
706
+ properties used to qualify the lookup.
707
+
708
+ :param str resource_name: The unique name of the resulting resource.
709
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
710
+ :param pulumi.ResourceOptions opts: Options for the resource.
711
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] annotations: Optional. User defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size
712
+ limitations **Note**: This field is non-authoritative, and will only manage the annotations present in your
713
+ configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
714
+ :param pulumi.Input[Union['OrganizationsPolicyBindingConditionArgs', 'OrganizationsPolicyBindingConditionArgsDict']] condition: Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The
715
+ syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: \\"Summary
716
+ size limit\\" description: \\"Determines if a summary is less than 100 chars\\" expression: \\"document.summary.size() <
717
+ 100\\" Example (Equality): title: \\"Requestor is owner\\" description: \\"Determines if requestor is the document owner\\"
718
+ expression: \\"document.owner == request.auth.claims.email\\" Example (Logic): title: \\"Public documents\\" description:
719
+ \\"Determine whether the document should be publicly visible\\" expression: \\"document.type != 'private' && document.type
720
+ != 'internal'\\" Example (Data Manipulation): title: \\"Notification string\\" description: \\"Create a notification string
721
+ with a timestamp.\\" expression: \\"'New message received at ' + string(document.create_time)\\" The exact variables and
722
+ functions that may be referenced within an expression are determined by the service that evaluates it. See the service
723
+ documentation for additional information.
724
+ :param pulumi.Input[str] create_time: Output only. The time when the policy binding was created.
725
+ :param pulumi.Input[str] display_name: Optional. The description of the policy binding. Must be less than or equal to 63 characters.
726
+ :param pulumi.Input[str] etag: Optional. The etag for the policy binding. If this is provided on update, it must match the server's etag.
727
+ :param pulumi.Input[str] location: The location of the Policy Binding
728
+ :param pulumi.Input[str] name: The name of the policy binding in the format `{binding_parent/locations/{location}/policyBindings/{policy_binding_id}`
729
+ :param pulumi.Input[str] organization: The parent organization of the Policy Binding.
730
+ :param pulumi.Input[str] policy: Required. Immutable. The resource name of the policy to be bound. The binding parent and policy must belong to the same Organization (or Project).
731
+ :param pulumi.Input[str] policy_binding_id: The Policy Binding ID.
732
+ :param pulumi.Input[str] policy_kind: Immutable. The kind of the policy to attach in this binding. This field must be one of the following: - Left empty (will
733
+ be automatically set to the policy kind) - The input policy kind Possible values: POLICY_KIND_UNSPECIFIED
734
+ PRINCIPAL_ACCESS_BOUNDARY ACCESS
735
+ :param pulumi.Input[str] policy_uid: Output only. The globally unique ID of the policy to be bound.
736
+ :param pulumi.Input[Union['OrganizationsPolicyBindingTargetArgs', 'OrganizationsPolicyBindingTargetArgsDict']] target: Target is the full resource name of the resource to which the policy will be bound. Immutable once set.
737
+ Structure is documented below.
738
+ :param pulumi.Input[str] uid: Output only. The globally unique ID of the policy binding. Assigned when the policy binding is created.
739
+ :param pulumi.Input[str] update_time: Output only. The time when the policy binding was most recently updated.
740
+ """
741
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
742
+
743
+ __props__ = _OrganizationsPolicyBindingState.__new__(_OrganizationsPolicyBindingState)
744
+
745
+ __props__.__dict__["annotations"] = annotations
746
+ __props__.__dict__["condition"] = condition
747
+ __props__.__dict__["create_time"] = create_time
748
+ __props__.__dict__["display_name"] = display_name
749
+ __props__.__dict__["effective_annotations"] = effective_annotations
750
+ __props__.__dict__["etag"] = etag
751
+ __props__.__dict__["location"] = location
752
+ __props__.__dict__["name"] = name
753
+ __props__.__dict__["organization"] = organization
754
+ __props__.__dict__["policy"] = policy
755
+ __props__.__dict__["policy_binding_id"] = policy_binding_id
756
+ __props__.__dict__["policy_kind"] = policy_kind
757
+ __props__.__dict__["policy_uid"] = policy_uid
758
+ __props__.__dict__["target"] = target
759
+ __props__.__dict__["uid"] = uid
760
+ __props__.__dict__["update_time"] = update_time
761
+ return OrganizationsPolicyBinding(resource_name, opts=opts, __props__=__props__)
762
+
763
+ @property
764
+ @pulumi.getter
765
+ def annotations(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
766
+ """
767
+ Optional. User defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size
768
+ limitations **Note**: This field is non-authoritative, and will only manage the annotations present in your
769
+ configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
770
+ """
771
+ return pulumi.get(self, "annotations")
772
+
773
+ @property
774
+ @pulumi.getter
775
+ def condition(self) -> pulumi.Output[Optional['outputs.OrganizationsPolicyBindingCondition']]:
776
+ """
777
+ Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The
778
+ syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: \\"Summary
779
+ size limit\\" description: \\"Determines if a summary is less than 100 chars\\" expression: \\"document.summary.size() <
780
+ 100\\" Example (Equality): title: \\"Requestor is owner\\" description: \\"Determines if requestor is the document owner\\"
781
+ expression: \\"document.owner == request.auth.claims.email\\" Example (Logic): title: \\"Public documents\\" description:
782
+ \\"Determine whether the document should be publicly visible\\" expression: \\"document.type != 'private' && document.type
783
+ != 'internal'\\" Example (Data Manipulation): title: \\"Notification string\\" description: \\"Create a notification string
784
+ with a timestamp.\\" expression: \\"'New message received at ' + string(document.create_time)\\" The exact variables and
785
+ functions that may be referenced within an expression are determined by the service that evaluates it. See the service
786
+ documentation for additional information.
787
+ """
788
+ return pulumi.get(self, "condition")
789
+
790
+ @property
791
+ @pulumi.getter(name="createTime")
792
+ def create_time(self) -> pulumi.Output[str]:
793
+ """
794
+ Output only. The time when the policy binding was created.
795
+ """
796
+ return pulumi.get(self, "create_time")
797
+
798
+ @property
799
+ @pulumi.getter(name="displayName")
800
+ def display_name(self) -> pulumi.Output[Optional[str]]:
801
+ """
802
+ Optional. The description of the policy binding. Must be less than or equal to 63 characters.
803
+ """
804
+ return pulumi.get(self, "display_name")
805
+
806
+ @property
807
+ @pulumi.getter(name="effectiveAnnotations")
808
+ def effective_annotations(self) -> pulumi.Output[Mapping[str, str]]:
809
+ return pulumi.get(self, "effective_annotations")
810
+
811
+ @property
812
+ @pulumi.getter
813
+ def etag(self) -> pulumi.Output[str]:
814
+ """
815
+ Optional. The etag for the policy binding. If this is provided on update, it must match the server's etag.
816
+ """
817
+ return pulumi.get(self, "etag")
818
+
819
+ @property
820
+ @pulumi.getter
821
+ def location(self) -> pulumi.Output[str]:
822
+ """
823
+ The location of the Policy Binding
824
+ """
825
+ return pulumi.get(self, "location")
826
+
827
+ @property
828
+ @pulumi.getter
829
+ def name(self) -> pulumi.Output[str]:
830
+ """
831
+ The name of the policy binding in the format `{binding_parent/locations/{location}/policyBindings/{policy_binding_id}`
832
+ """
833
+ return pulumi.get(self, "name")
834
+
835
+ @property
836
+ @pulumi.getter
837
+ def organization(self) -> pulumi.Output[str]:
838
+ """
839
+ The parent organization of the Policy Binding.
840
+ """
841
+ return pulumi.get(self, "organization")
842
+
843
+ @property
844
+ @pulumi.getter
845
+ def policy(self) -> pulumi.Output[str]:
846
+ """
847
+ Required. Immutable. The resource name of the policy to be bound. The binding parent and policy must belong to the same Organization (or Project).
848
+ """
849
+ return pulumi.get(self, "policy")
850
+
851
+ @property
852
+ @pulumi.getter(name="policyBindingId")
853
+ def policy_binding_id(self) -> pulumi.Output[str]:
854
+ """
855
+ The Policy Binding ID.
856
+ """
857
+ return pulumi.get(self, "policy_binding_id")
858
+
859
+ @property
860
+ @pulumi.getter(name="policyKind")
861
+ def policy_kind(self) -> pulumi.Output[Optional[str]]:
862
+ """
863
+ Immutable. The kind of the policy to attach in this binding. This field must be one of the following: - Left empty (will
864
+ be automatically set to the policy kind) - The input policy kind Possible values: POLICY_KIND_UNSPECIFIED
865
+ PRINCIPAL_ACCESS_BOUNDARY ACCESS
866
+ """
867
+ return pulumi.get(self, "policy_kind")
868
+
869
+ @property
870
+ @pulumi.getter(name="policyUid")
871
+ def policy_uid(self) -> pulumi.Output[str]:
872
+ """
873
+ Output only. The globally unique ID of the policy to be bound.
874
+ """
875
+ return pulumi.get(self, "policy_uid")
876
+
877
+ @property
878
+ @pulumi.getter
879
+ def target(self) -> pulumi.Output['outputs.OrganizationsPolicyBindingTarget']:
880
+ """
881
+ Target is the full resource name of the resource to which the policy will be bound. Immutable once set.
882
+ Structure is documented below.
883
+ """
884
+ return pulumi.get(self, "target")
885
+
886
+ @property
887
+ @pulumi.getter
888
+ def uid(self) -> pulumi.Output[str]:
889
+ """
890
+ Output only. The globally unique ID of the policy binding. Assigned when the policy binding is created.
891
+ """
892
+ return pulumi.get(self, "uid")
893
+
894
+ @property
895
+ @pulumi.getter(name="updateTime")
896
+ def update_time(self) -> pulumi.Output[str]:
897
+ """
898
+ Output only. The time when the policy binding was most recently updated.
899
+ """
900
+ return pulumi.get(self, "update_time")
901
+