pulumi-gcp 9.1.0a1758696393__py3-none-any.whl → 9.1.0a1758939336__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 (299) hide show
  1. pulumi_gcp/__init__.py +56 -0
  2. pulumi_gcp/accesscontextmanager/access_policy_iam_binding.py +7 -0
  3. pulumi_gcp/accesscontextmanager/access_policy_iam_member.py +7 -0
  4. pulumi_gcp/apigateway/api_config_iam_binding.py +7 -0
  5. pulumi_gcp/apigateway/api_config_iam_member.py +7 -0
  6. pulumi_gcp/apigateway/api_iam_binding.py +7 -0
  7. pulumi_gcp/apigateway/api_iam_member.py +7 -0
  8. pulumi_gcp/apigateway/gateway_iam_binding.py +7 -0
  9. pulumi_gcp/apigateway/gateway_iam_member.py +7 -0
  10. pulumi_gcp/apigee/environment_iam_binding.py +7 -0
  11. pulumi_gcp/apigee/environment_iam_member.py +7 -0
  12. pulumi_gcp/artifactregistry/__init__.py +1 -0
  13. pulumi_gcp/artifactregistry/get_maven_artifact.py +232 -0
  14. pulumi_gcp/artifactregistry/repository_iam_binding.py +7 -0
  15. pulumi_gcp/artifactregistry/repository_iam_member.py +7 -0
  16. pulumi_gcp/backupdisasterrecovery/__init__.py +2 -0
  17. pulumi_gcp/backupdisasterrecovery/get_backup_plan_associations.py +127 -0
  18. pulumi_gcp/backupdisasterrecovery/get_data_source_reference.py +211 -0
  19. pulumi_gcp/backupdisasterrecovery/outputs.py +34 -0
  20. pulumi_gcp/beyondcorp/security_gateway_application_iam_binding.py +7 -0
  21. pulumi_gcp/beyondcorp/security_gateway_application_iam_member.py +7 -0
  22. pulumi_gcp/beyondcorp/security_gateway_iam_binding.py +7 -0
  23. pulumi_gcp/beyondcorp/security_gateway_iam_member.py +7 -0
  24. pulumi_gcp/bigquery/__init__.py +5 -0
  25. pulumi_gcp/bigquery/_inputs.py +185 -0
  26. pulumi_gcp/bigquery/connection_iam_binding.py +7 -0
  27. pulumi_gcp/bigquery/connection_iam_member.py +7 -0
  28. pulumi_gcp/bigquery/datapolicyv2_data_policy.py +870 -0
  29. pulumi_gcp/bigquery/datapolicyv2_data_policy_iam_binding.py +838 -0
  30. pulumi_gcp/bigquery/datapolicyv2_data_policy_iam_member.py +838 -0
  31. pulumi_gcp/bigquery/datapolicyv2_data_policy_iam_policy.py +670 -0
  32. pulumi_gcp/bigquery/get_datapolicyv2_data_policy_iam_policy.py +182 -0
  33. pulumi_gcp/bigquery/iam_binding.py +7 -0
  34. pulumi_gcp/bigquery/iam_member.py +7 -0
  35. pulumi_gcp/bigquery/outputs.py +127 -0
  36. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_binding.py +7 -0
  37. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_member.py +7 -0
  38. pulumi_gcp/bigqueryanalyticshub/listing_iam_binding.py +7 -0
  39. pulumi_gcp/bigqueryanalyticshub/listing_iam_member.py +7 -0
  40. pulumi_gcp/bigquerydatapolicy/data_policy_iam_binding.py +7 -0
  41. pulumi_gcp/bigquerydatapolicy/data_policy_iam_member.py +7 -0
  42. pulumi_gcp/binaryauthorization/attestor_iam_binding.py +7 -0
  43. pulumi_gcp/binaryauthorization/attestor_iam_member.py +7 -0
  44. pulumi_gcp/certificateauthority/_inputs.py +37 -0
  45. pulumi_gcp/certificateauthority/ca_pool.py +90 -4
  46. pulumi_gcp/certificateauthority/ca_pool_iam_binding.py +7 -0
  47. pulumi_gcp/certificateauthority/ca_pool_iam_member.py +7 -0
  48. pulumi_gcp/certificateauthority/certificate_template_iam_binding.py +7 -0
  49. pulumi_gcp/certificateauthority/certificate_template_iam_member.py +7 -0
  50. pulumi_gcp/certificateauthority/outputs.py +39 -0
  51. pulumi_gcp/cloudbuildv2/connection_iam_binding.py +7 -0
  52. pulumi_gcp/cloudbuildv2/connection_iam_member.py +7 -0
  53. pulumi_gcp/cloudfunctions/function_iam_binding.py +7 -0
  54. pulumi_gcp/cloudfunctions/function_iam_member.py +7 -0
  55. pulumi_gcp/cloudfunctionsv2/function_iam_binding.py +7 -0
  56. pulumi_gcp/cloudfunctionsv2/function_iam_member.py +7 -0
  57. pulumi_gcp/cloudrun/_inputs.py +21 -1
  58. pulumi_gcp/cloudrun/iam_binding.py +7 -0
  59. pulumi_gcp/cloudrun/iam_member.py +7 -0
  60. pulumi_gcp/cloudrun/outputs.py +27 -2
  61. pulumi_gcp/cloudrunv2/_inputs.py +83 -3
  62. pulumi_gcp/cloudrunv2/job_iam_binding.py +7 -0
  63. pulumi_gcp/cloudrunv2/job_iam_member.py +7 -0
  64. pulumi_gcp/cloudrunv2/outputs.py +104 -6
  65. pulumi_gcp/cloudrunv2/service_iam_binding.py +7 -0
  66. pulumi_gcp/cloudrunv2/service_iam_member.py +7 -0
  67. pulumi_gcp/cloudrunv2/worker_pool_iam_binding.py +7 -0
  68. pulumi_gcp/cloudrunv2/worker_pool_iam_member.py +7 -0
  69. pulumi_gcp/cloudtasks/queue_iam_binding.py +7 -0
  70. pulumi_gcp/cloudtasks/queue_iam_member.py +7 -0
  71. pulumi_gcp/colab/runtime_template_iam_binding.py +7 -0
  72. pulumi_gcp/colab/runtime_template_iam_member.py +7 -0
  73. pulumi_gcp/compute/__init__.py +2 -0
  74. pulumi_gcp/compute/_inputs.py +214 -0
  75. pulumi_gcp/compute/backend_bucket_iam_binding.py +7 -0
  76. pulumi_gcp/compute/backend_bucket_iam_member.py +7 -0
  77. pulumi_gcp/compute/backend_service_iam_binding.py +7 -0
  78. pulumi_gcp/compute/backend_service_iam_member.py +7 -0
  79. pulumi_gcp/compute/disk_iam_binding.py +7 -0
  80. pulumi_gcp/compute/disk_iam_member.py +7 -0
  81. pulumi_gcp/compute/get_interconnect_location.py +278 -0
  82. pulumi_gcp/compute/get_interconnect_locations.py +130 -0
  83. pulumi_gcp/compute/get_security_policy.py +45 -1
  84. pulumi_gcp/compute/image_iam_binding.py +7 -0
  85. pulumi_gcp/compute/image_iam_member.py +7 -0
  86. pulumi_gcp/compute/instance_iam_binding.py +7 -0
  87. pulumi_gcp/compute/instance_iam_member.py +7 -0
  88. pulumi_gcp/compute/instance_template_iam_binding.py +7 -0
  89. pulumi_gcp/compute/instance_template_iam_member.py +7 -0
  90. pulumi_gcp/compute/instant_snapshot_iam_binding.py +7 -0
  91. pulumi_gcp/compute/instant_snapshot_iam_member.py +7 -0
  92. pulumi_gcp/compute/machine_image_iam_binding.py +7 -0
  93. pulumi_gcp/compute/machine_image_iam_member.py +7 -0
  94. pulumi_gcp/compute/outputs.py +348 -0
  95. pulumi_gcp/compute/region_backend_service.py +21 -7
  96. pulumi_gcp/compute/region_backend_service_iam_binding.py +7 -0
  97. pulumi_gcp/compute/region_backend_service_iam_member.py +7 -0
  98. pulumi_gcp/compute/region_disk_iam_binding.py +7 -0
  99. pulumi_gcp/compute/region_disk_iam_member.py +7 -0
  100. pulumi_gcp/compute/security_policy.py +147 -0
  101. pulumi_gcp/compute/service_attachment.py +193 -3
  102. pulumi_gcp/compute/snapshot_iam_binding.py +7 -0
  103. pulumi_gcp/compute/snapshot_iam_member.py +7 -0
  104. pulumi_gcp/compute/storage_pool_iam_binding.py +7 -0
  105. pulumi_gcp/compute/storage_pool_iam_member.py +7 -0
  106. pulumi_gcp/compute/subnetwork_iam_binding.py +7 -0
  107. pulumi_gcp/compute/subnetwork_iam_member.py +7 -0
  108. pulumi_gcp/config/__init__.pyi +2 -0
  109. pulumi_gcp/config/vars.py +4 -0
  110. pulumi_gcp/container/_inputs.py +59 -0
  111. pulumi_gcp/container/outputs.py +67 -0
  112. pulumi_gcp/containeranalysis/note_iam_binding.py +7 -0
  113. pulumi_gcp/containeranalysis/note_iam_member.py +7 -0
  114. pulumi_gcp/datacatalog/entry_group_iam_binding.py +7 -0
  115. pulumi_gcp/datacatalog/entry_group_iam_member.py +7 -0
  116. pulumi_gcp/datacatalog/policy_tag_iam_binding.py +7 -0
  117. pulumi_gcp/datacatalog/policy_tag_iam_member.py +7 -0
  118. pulumi_gcp/datacatalog/tag_template_iam_binding.py +7 -0
  119. pulumi_gcp/datacatalog/tag_template_iam_member.py +7 -0
  120. pulumi_gcp/datacatalog/taxonomy_iam_binding.py +7 -0
  121. pulumi_gcp/datacatalog/taxonomy_iam_member.py +7 -0
  122. pulumi_gcp/dataplex/aspect_type_iam_binding.py +7 -0
  123. pulumi_gcp/dataplex/aspect_type_iam_member.py +7 -0
  124. pulumi_gcp/dataplex/asset_iam_binding.py +7 -0
  125. pulumi_gcp/dataplex/asset_iam_member.py +7 -0
  126. pulumi_gcp/dataplex/datascan_iam_binding.py +7 -0
  127. pulumi_gcp/dataplex/datascan_iam_member.py +7 -0
  128. pulumi_gcp/dataplex/entry_group_iam_binding.py +7 -0
  129. pulumi_gcp/dataplex/entry_group_iam_member.py +7 -0
  130. pulumi_gcp/dataplex/entry_type_iam_binding.py +7 -0
  131. pulumi_gcp/dataplex/entry_type_iam_member.py +7 -0
  132. pulumi_gcp/dataplex/glossary_iam_binding.py +7 -0
  133. pulumi_gcp/dataplex/glossary_iam_member.py +7 -0
  134. pulumi_gcp/dataplex/lake_iam_binding.py +7 -0
  135. pulumi_gcp/dataplex/lake_iam_member.py +7 -0
  136. pulumi_gcp/dataplex/task_iam_binding.py +7 -0
  137. pulumi_gcp/dataplex/task_iam_member.py +7 -0
  138. pulumi_gcp/dataplex/zone_iam_binding.py +7 -0
  139. pulumi_gcp/dataplex/zone_iam_member.py +7 -0
  140. pulumi_gcp/dataproc/autoscaling_policy_iam_binding.py +7 -0
  141. pulumi_gcp/dataproc/autoscaling_policy_iam_member.py +7 -0
  142. pulumi_gcp/dataproc/metastore_database_iam_binding.py +7 -0
  143. pulumi_gcp/dataproc/metastore_database_iam_member.py +7 -0
  144. pulumi_gcp/dataproc/metastore_federation_iam_binding.py +7 -0
  145. pulumi_gcp/dataproc/metastore_federation_iam_member.py +7 -0
  146. pulumi_gcp/dataproc/metastore_service_iam_binding.py +7 -0
  147. pulumi_gcp/dataproc/metastore_service_iam_member.py +7 -0
  148. pulumi_gcp/dataproc/metastore_table_iam_binding.py +7 -0
  149. pulumi_gcp/dataproc/metastore_table_iam_member.py +7 -0
  150. pulumi_gcp/datastream/_inputs.py +21 -1
  151. pulumi_gcp/datastream/outputs.py +15 -1
  152. pulumi_gcp/datastream/stream.py +208 -0
  153. pulumi_gcp/discoveryengine/search_engine.py +100 -0
  154. pulumi_gcp/dns/dns_managed_zone_iam_binding.py +7 -0
  155. pulumi_gcp/dns/dns_managed_zone_iam_member.py +7 -0
  156. pulumi_gcp/endpoints/consumers_iam_binding.py +7 -0
  157. pulumi_gcp/endpoints/consumers_iam_member.py +7 -0
  158. pulumi_gcp/endpoints/service_iam_binding.py +7 -0
  159. pulumi_gcp/endpoints/service_iam_member.py +7 -0
  160. pulumi_gcp/firestore/field.py +6 -6
  161. pulumi_gcp/gemini/repository_group_iam_binding.py +7 -0
  162. pulumi_gcp/gemini/repository_group_iam_member.py +7 -0
  163. pulumi_gcp/gkebackup/backup_plan_iam_binding.py +7 -0
  164. pulumi_gcp/gkebackup/backup_plan_iam_member.py +7 -0
  165. pulumi_gcp/gkebackup/restore_plan_iam_binding.py +7 -0
  166. pulumi_gcp/gkebackup/restore_plan_iam_member.py +7 -0
  167. pulumi_gcp/gkehub/feature_iam_binding.py +7 -0
  168. pulumi_gcp/gkehub/feature_iam_member.py +7 -0
  169. pulumi_gcp/gkehub/membership_binding.py +6 -6
  170. pulumi_gcp/gkehub/membership_iam_binding.py +7 -0
  171. pulumi_gcp/gkehub/membership_iam_member.py +7 -0
  172. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  173. pulumi_gcp/gkehub/namespace.py +4 -4
  174. pulumi_gcp/gkehub/scope_iam_binding.py +7 -0
  175. pulumi_gcp/gkehub/scope_iam_member.py +7 -0
  176. pulumi_gcp/gkehub/scope_rbac_role_binding.py +8 -8
  177. pulumi_gcp/gkeonprem/_inputs.py +56 -0
  178. pulumi_gcp/gkeonprem/outputs.py +50 -0
  179. pulumi_gcp/gkeonprem/vmware_admin_cluster.py +70 -0
  180. pulumi_gcp/healthcare/_inputs.py +144 -0
  181. pulumi_gcp/healthcare/consent_store_iam_binding.py +7 -0
  182. pulumi_gcp/healthcare/consent_store_iam_member.py +7 -0
  183. pulumi_gcp/healthcare/fhir_store.py +122 -0
  184. pulumi_gcp/healthcare/outputs.py +113 -0
  185. pulumi_gcp/iam/_inputs.py +270 -3
  186. pulumi_gcp/iam/outputs.py +203 -2
  187. pulumi_gcp/iam/workforce_pool_iam_binding.py +7 -0
  188. pulumi_gcp/iam/workforce_pool_iam_member.py +7 -0
  189. pulumi_gcp/iam/workforce_pool_provider.py +287 -0
  190. pulumi_gcp/iam/workload_identity_pool_iam_binding.py +7 -0
  191. pulumi_gcp/iam/workload_identity_pool_iam_member.py +7 -0
  192. pulumi_gcp/iap/app_engine_service_iam_binding.py +7 -0
  193. pulumi_gcp/iap/app_engine_service_iam_member.py +7 -0
  194. pulumi_gcp/iap/app_engine_version_iam_binding.py +7 -0
  195. pulumi_gcp/iap/app_engine_version_iam_member.py +7 -0
  196. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  197. pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +7 -0
  198. pulumi_gcp/iap/tunnel_dest_group_iam_member.py +7 -0
  199. pulumi_gcp/iap/tunnel_iam_binding.py +7 -0
  200. pulumi_gcp/iap/tunnel_iam_member.py +7 -0
  201. pulumi_gcp/iap/tunnel_instance_iam_binding.py +7 -0
  202. pulumi_gcp/iap/tunnel_instance_iam_member.py +7 -0
  203. pulumi_gcp/iap/web_backend_service_iam_binding.py +7 -0
  204. pulumi_gcp/iap/web_backend_service_iam_member.py +7 -0
  205. pulumi_gcp/iap/web_cloud_run_service_iam_binding.py +7 -0
  206. pulumi_gcp/iap/web_cloud_run_service_iam_member.py +7 -0
  207. pulumi_gcp/iap/web_forwarding_rule_service_iam_binding.py +7 -0
  208. pulumi_gcp/iap/web_forwarding_rule_service_iam_member.py +7 -0
  209. pulumi_gcp/iap/web_iam_binding.py +7 -0
  210. pulumi_gcp/iap/web_iam_member.py +7 -0
  211. pulumi_gcp/iap/web_region_backend_service_iam_binding.py +7 -0
  212. pulumi_gcp/iap/web_region_backend_service_iam_member.py +7 -0
  213. pulumi_gcp/iap/web_region_forwarding_rule_service_iam_binding.py +7 -0
  214. pulumi_gcp/iap/web_region_forwarding_rule_service_iam_member.py +7 -0
  215. pulumi_gcp/iap/web_type_app_enging_iam_binding.py +7 -0
  216. pulumi_gcp/iap/web_type_app_enging_iam_member.py +7 -0
  217. pulumi_gcp/iap/web_type_compute_iam_binding.py +7 -0
  218. pulumi_gcp/iap/web_type_compute_iam_member.py +7 -0
  219. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  220. pulumi_gcp/kms/ekm_connection_iam_binding.py +7 -0
  221. pulumi_gcp/kms/ekm_connection_iam_member.py +7 -0
  222. pulumi_gcp/logging/log_view_iam_binding.py +7 -0
  223. pulumi_gcp/logging/log_view_iam_member.py +7 -0
  224. pulumi_gcp/managedkafka/connect_cluster.py +4 -4
  225. pulumi_gcp/managedkafka/connector.py +4 -4
  226. pulumi_gcp/netapp/_inputs.py +44 -1
  227. pulumi_gcp/netapp/outputs.py +31 -1
  228. pulumi_gcp/netapp/storage_pool.py +1 -1
  229. pulumi_gcp/networkconnectivity/spoke.py +14 -14
  230. pulumi_gcp/networksecurity/address_group_iam_binding.py +7 -0
  231. pulumi_gcp/networksecurity/address_group_iam_member.py +7 -0
  232. pulumi_gcp/networkservices/__init__.py +1 -0
  233. pulumi_gcp/networkservices/_inputs.py +393 -6
  234. pulumi_gcp/networkservices/outputs.py +289 -4
  235. pulumi_gcp/networkservices/wasm_plugin.py +740 -0
  236. pulumi_gcp/notebooks/instance_iam_binding.py +7 -0
  237. pulumi_gcp/notebooks/instance_iam_member.py +7 -0
  238. pulumi_gcp/notebooks/runtime_iam_binding.py +7 -0
  239. pulumi_gcp/notebooks/runtime_iam_member.py +7 -0
  240. pulumi_gcp/orgpolicy/policy.py +2 -2
  241. pulumi_gcp/privilegedaccessmanager/_inputs.py +24 -1
  242. pulumi_gcp/privilegedaccessmanager/outputs.py +26 -1
  243. pulumi_gcp/provider.py +20 -0
  244. pulumi_gcp/pubsub/schema_iam_binding.py +7 -0
  245. pulumi_gcp/pubsub/schema_iam_member.py +7 -0
  246. pulumi_gcp/pubsub/subscription.py +6 -6
  247. pulumi_gcp/pubsub/topic_iam_binding.py +7 -0
  248. pulumi_gcp/pubsub/topic_iam_member.py +7 -0
  249. pulumi_gcp/pulumi-plugin.json +1 -1
  250. pulumi_gcp/runtimeconfig/config_iam_binding.py +7 -0
  251. pulumi_gcp/runtimeconfig/config_iam_member.py +7 -0
  252. pulumi_gcp/saasruntime/__init__.py +1 -0
  253. pulumi_gcp/saasruntime/_inputs.py +344 -0
  254. pulumi_gcp/saasruntime/outputs.py +222 -0
  255. pulumi_gcp/saasruntime/release.py +1063 -0
  256. pulumi_gcp/secretmanager/regional_secret_iam_binding.py +7 -0
  257. pulumi_gcp/secretmanager/regional_secret_iam_member.py +7 -0
  258. pulumi_gcp/secretmanager/secret_iam_binding.py +7 -0
  259. pulumi_gcp/secretmanager/secret_iam_member.py +7 -0
  260. pulumi_gcp/securesourcemanager/__init__.py +1 -0
  261. pulumi_gcp/securesourcemanager/_inputs.py +43 -0
  262. pulumi_gcp/securesourcemanager/hook.py +758 -0
  263. pulumi_gcp/securesourcemanager/outputs.py +43 -0
  264. pulumi_gcp/securesourcemanager/repository_iam_binding.py +7 -0
  265. pulumi_gcp/securesourcemanager/repository_iam_member.py +7 -0
  266. pulumi_gcp/securitycenter/v2_organization_source_iam_binding.py +7 -0
  267. pulumi_gcp/securitycenter/v2_organization_source_iam_member.py +7 -0
  268. pulumi_gcp/servicedirectory/namespace_iam_binding.py +7 -0
  269. pulumi_gcp/servicedirectory/namespace_iam_member.py +7 -0
  270. pulumi_gcp/servicedirectory/service_iam_binding.py +7 -0
  271. pulumi_gcp/servicedirectory/service_iam_member.py +7 -0
  272. pulumi_gcp/sourcerepo/repository_iam_binding.py +7 -0
  273. pulumi_gcp/sourcerepo/repository_iam_member.py +7 -0
  274. pulumi_gcp/sql/database_instance.py +44 -0
  275. pulumi_gcp/tags/tag_key.py +7 -7
  276. pulumi_gcp/tags/tag_key_iam_binding.py +7 -0
  277. pulumi_gcp/tags/tag_key_iam_member.py +7 -0
  278. pulumi_gcp/tags/tag_value_iam_binding.py +7 -0
  279. pulumi_gcp/tags/tag_value_iam_member.py +7 -0
  280. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  281. pulumi_gcp/vertex/ai_feature_group_iam_binding.py +7 -0
  282. pulumi_gcp/vertex/ai_feature_group_iam_member.py +7 -0
  283. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  284. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_binding.py +7 -0
  285. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_member.py +7 -0
  286. pulumi_gcp/vertex/ai_feature_online_store_iam_binding.py +7 -0
  287. pulumi_gcp/vertex/ai_feature_online_store_iam_member.py +7 -0
  288. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_binding.py +7 -0
  289. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_member.py +7 -0
  290. pulumi_gcp/vertex/ai_feature_store_iam_binding.py +7 -0
  291. pulumi_gcp/vertex/ai_feature_store_iam_member.py +7 -0
  292. pulumi_gcp/workstations/workstation_config_iam_binding.py +7 -0
  293. pulumi_gcp/workstations/workstation_config_iam_member.py +7 -0
  294. pulumi_gcp/workstations/workstation_iam_binding.py +7 -0
  295. pulumi_gcp/workstations/workstation_iam_member.py +7 -0
  296. {pulumi_gcp-9.1.0a1758696393.dist-info → pulumi_gcp-9.1.0a1758939336.dist-info}/METADATA +1 -1
  297. {pulumi_gcp-9.1.0a1758696393.dist-info → pulumi_gcp-9.1.0a1758939336.dist-info}/RECORD +299 -286
  298. {pulumi_gcp-9.1.0a1758696393.dist-info → pulumi_gcp-9.1.0a1758939336.dist-info}/WHEEL +0 -0
  299. {pulumi_gcp-9.1.0a1758696393.dist-info → pulumi_gcp-9.1.0a1758939336.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,670 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
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
+
17
+ __all__ = ['Datapolicyv2DataPolicyIamPolicyArgs', 'Datapolicyv2DataPolicyIamPolicy']
18
+
19
+ @pulumi.input_type
20
+ class Datapolicyv2DataPolicyIamPolicyArgs:
21
+ def __init__(__self__, *,
22
+ data_policy_id: pulumi.Input[_builtins.str],
23
+ policy_data: pulumi.Input[_builtins.str],
24
+ location: Optional[pulumi.Input[_builtins.str]] = None,
25
+ project: Optional[pulumi.Input[_builtins.str]] = None):
26
+ """
27
+ The set of arguments for constructing a Datapolicyv2DataPolicyIamPolicy resource.
28
+ :param pulumi.Input[_builtins.str] data_policy_id: Used to find the parent resource to bind the IAM policy to
29
+ :param pulumi.Input[_builtins.str] policy_data: The policy data generated by
30
+ a `organizations_get_iam_policy` data source.
31
+ :param pulumi.Input[_builtins.str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. Used to find the parent resource to bind the IAM policy to. If not specified,
32
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
33
+ location is specified, it is taken from the provider configuration.
34
+ :param pulumi.Input[_builtins.str] project: The ID of the project in which the resource belongs.
35
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
36
+ """
37
+ pulumi.set(__self__, "data_policy_id", data_policy_id)
38
+ pulumi.set(__self__, "policy_data", policy_data)
39
+ if location is not None:
40
+ pulumi.set(__self__, "location", location)
41
+ if project is not None:
42
+ pulumi.set(__self__, "project", project)
43
+
44
+ @_builtins.property
45
+ @pulumi.getter(name="dataPolicyId")
46
+ def data_policy_id(self) -> pulumi.Input[_builtins.str]:
47
+ """
48
+ Used to find the parent resource to bind the IAM policy to
49
+ """
50
+ return pulumi.get(self, "data_policy_id")
51
+
52
+ @data_policy_id.setter
53
+ def data_policy_id(self, value: pulumi.Input[_builtins.str]):
54
+ pulumi.set(self, "data_policy_id", value)
55
+
56
+ @_builtins.property
57
+ @pulumi.getter(name="policyData")
58
+ def policy_data(self) -> pulumi.Input[_builtins.str]:
59
+ """
60
+ The policy data generated by
61
+ a `organizations_get_iam_policy` data source.
62
+ """
63
+ return pulumi.get(self, "policy_data")
64
+
65
+ @policy_data.setter
66
+ def policy_data(self, value: pulumi.Input[_builtins.str]):
67
+ pulumi.set(self, "policy_data", value)
68
+
69
+ @_builtins.property
70
+ @pulumi.getter
71
+ def location(self) -> Optional[pulumi.Input[_builtins.str]]:
72
+ """
73
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. Used to find the parent resource to bind the IAM policy to. If not specified,
74
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
75
+ location is specified, it is taken from the provider configuration.
76
+ """
77
+ return pulumi.get(self, "location")
78
+
79
+ @location.setter
80
+ def location(self, value: Optional[pulumi.Input[_builtins.str]]):
81
+ pulumi.set(self, "location", value)
82
+
83
+ @_builtins.property
84
+ @pulumi.getter
85
+ def project(self) -> Optional[pulumi.Input[_builtins.str]]:
86
+ """
87
+ The ID of the project in which the resource belongs.
88
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
89
+ """
90
+ return pulumi.get(self, "project")
91
+
92
+ @project.setter
93
+ def project(self, value: Optional[pulumi.Input[_builtins.str]]):
94
+ pulumi.set(self, "project", value)
95
+
96
+
97
+ @pulumi.input_type
98
+ class _Datapolicyv2DataPolicyIamPolicyState:
99
+ def __init__(__self__, *,
100
+ data_policy_id: Optional[pulumi.Input[_builtins.str]] = None,
101
+ etag: Optional[pulumi.Input[_builtins.str]] = None,
102
+ location: Optional[pulumi.Input[_builtins.str]] = None,
103
+ policy_data: Optional[pulumi.Input[_builtins.str]] = None,
104
+ project: Optional[pulumi.Input[_builtins.str]] = None):
105
+ """
106
+ Input properties used for looking up and filtering Datapolicyv2DataPolicyIamPolicy resources.
107
+ :param pulumi.Input[_builtins.str] data_policy_id: Used to find the parent resource to bind the IAM policy to
108
+ :param pulumi.Input[_builtins.str] etag: (Computed) The etag of the IAM policy.
109
+ :param pulumi.Input[_builtins.str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. Used to find the parent resource to bind the IAM policy to. If not specified,
110
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
111
+ location is specified, it is taken from the provider configuration.
112
+ :param pulumi.Input[_builtins.str] policy_data: The policy data generated by
113
+ a `organizations_get_iam_policy` data source.
114
+ :param pulumi.Input[_builtins.str] project: The ID of the project in which the resource belongs.
115
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
116
+ """
117
+ if data_policy_id is not None:
118
+ pulumi.set(__self__, "data_policy_id", data_policy_id)
119
+ if etag is not None:
120
+ pulumi.set(__self__, "etag", etag)
121
+ if location is not None:
122
+ pulumi.set(__self__, "location", location)
123
+ if policy_data is not None:
124
+ pulumi.set(__self__, "policy_data", policy_data)
125
+ if project is not None:
126
+ pulumi.set(__self__, "project", project)
127
+
128
+ @_builtins.property
129
+ @pulumi.getter(name="dataPolicyId")
130
+ def data_policy_id(self) -> Optional[pulumi.Input[_builtins.str]]:
131
+ """
132
+ Used to find the parent resource to bind the IAM policy to
133
+ """
134
+ return pulumi.get(self, "data_policy_id")
135
+
136
+ @data_policy_id.setter
137
+ def data_policy_id(self, value: Optional[pulumi.Input[_builtins.str]]):
138
+ pulumi.set(self, "data_policy_id", value)
139
+
140
+ @_builtins.property
141
+ @pulumi.getter
142
+ def etag(self) -> Optional[pulumi.Input[_builtins.str]]:
143
+ """
144
+ (Computed) The etag of the IAM policy.
145
+ """
146
+ return pulumi.get(self, "etag")
147
+
148
+ @etag.setter
149
+ def etag(self, value: Optional[pulumi.Input[_builtins.str]]):
150
+ pulumi.set(self, "etag", value)
151
+
152
+ @_builtins.property
153
+ @pulumi.getter
154
+ def location(self) -> Optional[pulumi.Input[_builtins.str]]:
155
+ """
156
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. Used to find the parent resource to bind the IAM policy to. If not specified,
157
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
158
+ location is specified, it is taken from the provider configuration.
159
+ """
160
+ return pulumi.get(self, "location")
161
+
162
+ @location.setter
163
+ def location(self, value: Optional[pulumi.Input[_builtins.str]]):
164
+ pulumi.set(self, "location", value)
165
+
166
+ @_builtins.property
167
+ @pulumi.getter(name="policyData")
168
+ def policy_data(self) -> Optional[pulumi.Input[_builtins.str]]:
169
+ """
170
+ The policy data generated by
171
+ a `organizations_get_iam_policy` data source.
172
+ """
173
+ return pulumi.get(self, "policy_data")
174
+
175
+ @policy_data.setter
176
+ def policy_data(self, value: Optional[pulumi.Input[_builtins.str]]):
177
+ pulumi.set(self, "policy_data", value)
178
+
179
+ @_builtins.property
180
+ @pulumi.getter
181
+ def project(self) -> Optional[pulumi.Input[_builtins.str]]:
182
+ """
183
+ The ID of the project in which the resource belongs.
184
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
185
+ """
186
+ return pulumi.get(self, "project")
187
+
188
+ @project.setter
189
+ def project(self, value: Optional[pulumi.Input[_builtins.str]]):
190
+ pulumi.set(self, "project", value)
191
+
192
+
193
+ @pulumi.type_token("gcp:bigquery/datapolicyv2DataPolicyIamPolicy:Datapolicyv2DataPolicyIamPolicy")
194
+ class Datapolicyv2DataPolicyIamPolicy(pulumi.CustomResource):
195
+ @overload
196
+ def __init__(__self__,
197
+ resource_name: str,
198
+ opts: Optional[pulumi.ResourceOptions] = None,
199
+ data_policy_id: Optional[pulumi.Input[_builtins.str]] = None,
200
+ location: Optional[pulumi.Input[_builtins.str]] = None,
201
+ policy_data: Optional[pulumi.Input[_builtins.str]] = None,
202
+ project: Optional[pulumi.Input[_builtins.str]] = None,
203
+ __props__=None):
204
+ """
205
+ Three different resources help you manage your IAM policy for BigQuery Data Policy V2 DataPolicy. Each of these resources serves a different use case:
206
+
207
+ * `bigquery.Datapolicyv2DataPolicyIamPolicy`: Authoritative. Sets the IAM policy for the datapolicy and replaces any existing policy already attached.
208
+ * `bigquery.Datapolicyv2DataPolicyIamBinding`: 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 datapolicy are preserved.
209
+ * `bigquery.Datapolicyv2DataPolicyIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the datapolicy are preserved.
210
+
211
+ A data source can be used to retrieve policy data in advent you do not need creation
212
+
213
+ * `bigquery.Datapolicyv2DataPolicyIamPolicy`: Retrieves the IAM policy for the datapolicy
214
+
215
+ > **Note:** `bigquery.Datapolicyv2DataPolicyIamPolicy` **cannot** be used in conjunction with `bigquery.Datapolicyv2DataPolicyIamBinding` and `bigquery.Datapolicyv2DataPolicyIamMember` or they will fight over what your policy should be.
216
+
217
+ > **Note:** `bigquery.Datapolicyv2DataPolicyIamBinding` resources **can be** used in conjunction with `bigquery.Datapolicyv2DataPolicyIamMember` resources **only if** they do not grant privilege to the same role.
218
+
219
+ ## bigquery.Datapolicyv2DataPolicyIamPolicy
220
+
221
+ ```python
222
+ import pulumi
223
+ import pulumi_gcp as gcp
224
+
225
+ admin = gcp.organizations.get_iam_policy(bindings=[{
226
+ "role": "roles/viewer",
227
+ "members": ["user:jane@example.com"],
228
+ }])
229
+ policy = gcp.bigquery.Datapolicyv2DataPolicyIamPolicy("policy",
230
+ project=basic_data_policy["project"],
231
+ location=basic_data_policy["location"],
232
+ data_policy_id=basic_data_policy["dataPolicyId"],
233
+ policy_data=admin.policy_data)
234
+ ```
235
+
236
+ ## bigquery.Datapolicyv2DataPolicyIamBinding
237
+
238
+ ```python
239
+ import pulumi
240
+ import pulumi_gcp as gcp
241
+
242
+ binding = gcp.bigquery.Datapolicyv2DataPolicyIamBinding("binding",
243
+ project=basic_data_policy["project"],
244
+ location=basic_data_policy["location"],
245
+ data_policy_id=basic_data_policy["dataPolicyId"],
246
+ role="roles/viewer",
247
+ members=["user:jane@example.com"])
248
+ ```
249
+
250
+ ## bigquery.Datapolicyv2DataPolicyIamMember
251
+
252
+ ```python
253
+ import pulumi
254
+ import pulumi_gcp as gcp
255
+
256
+ member = gcp.bigquery.Datapolicyv2DataPolicyIamMember("member",
257
+ project=basic_data_policy["project"],
258
+ location=basic_data_policy["location"],
259
+ data_policy_id=basic_data_policy["dataPolicyId"],
260
+ role="roles/viewer",
261
+ member="user:jane@example.com")
262
+ ```
263
+
264
+ ## This resource supports User Project Overrides.
265
+
266
+ -
267
+
268
+ # IAM policy for BigQuery Data Policy V2 DataPolicy
269
+
270
+ Three different resources help you manage your IAM policy for BigQuery Data Policy V2 DataPolicy. Each of these resources serves a different use case:
271
+
272
+ * `bigquery.Datapolicyv2DataPolicyIamPolicy`: Authoritative. Sets the IAM policy for the datapolicy and replaces any existing policy already attached.
273
+ * `bigquery.Datapolicyv2DataPolicyIamBinding`: 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 datapolicy are preserved.
274
+ * `bigquery.Datapolicyv2DataPolicyIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the datapolicy are preserved.
275
+
276
+ A data source can be used to retrieve policy data in advent you do not need creation
277
+
278
+ * `bigquery.Datapolicyv2DataPolicyIamPolicy`: Retrieves the IAM policy for the datapolicy
279
+
280
+ > **Note:** `bigquery.Datapolicyv2DataPolicyIamPolicy` **cannot** be used in conjunction with `bigquery.Datapolicyv2DataPolicyIamBinding` and `bigquery.Datapolicyv2DataPolicyIamMember` or they will fight over what your policy should be.
281
+
282
+ > **Note:** `bigquery.Datapolicyv2DataPolicyIamBinding` resources **can be** used in conjunction with `bigquery.Datapolicyv2DataPolicyIamMember` resources **only if** they do not grant privilege to the same role.
283
+
284
+ ## bigquery.Datapolicyv2DataPolicyIamPolicy
285
+
286
+ ```python
287
+ import pulumi
288
+ import pulumi_gcp as gcp
289
+
290
+ admin = gcp.organizations.get_iam_policy(bindings=[{
291
+ "role": "roles/viewer",
292
+ "members": ["user:jane@example.com"],
293
+ }])
294
+ policy = gcp.bigquery.Datapolicyv2DataPolicyIamPolicy("policy",
295
+ project=basic_data_policy["project"],
296
+ location=basic_data_policy["location"],
297
+ data_policy_id=basic_data_policy["dataPolicyId"],
298
+ policy_data=admin.policy_data)
299
+ ```
300
+
301
+ ## bigquery.Datapolicyv2DataPolicyIamBinding
302
+
303
+ ```python
304
+ import pulumi
305
+ import pulumi_gcp as gcp
306
+
307
+ binding = gcp.bigquery.Datapolicyv2DataPolicyIamBinding("binding",
308
+ project=basic_data_policy["project"],
309
+ location=basic_data_policy["location"],
310
+ data_policy_id=basic_data_policy["dataPolicyId"],
311
+ role="roles/viewer",
312
+ members=["user:jane@example.com"])
313
+ ```
314
+
315
+ ## bigquery.Datapolicyv2DataPolicyIamMember
316
+
317
+ ```python
318
+ import pulumi
319
+ import pulumi_gcp as gcp
320
+
321
+ member = gcp.bigquery.Datapolicyv2DataPolicyIamMember("member",
322
+ project=basic_data_policy["project"],
323
+ location=basic_data_policy["location"],
324
+ data_policy_id=basic_data_policy["dataPolicyId"],
325
+ role="roles/viewer",
326
+ member="user:jane@example.com")
327
+ ```
328
+
329
+ ## Import
330
+
331
+ For all import syntaxes, the "resource in question" can take any of the following forms:
332
+
333
+ * projects/{{project}}/locations/{{location}}/dataPolicies/{{data_policy_id}}
334
+
335
+ * {{project}}/{{location}}/{{data_policy_id}}
336
+
337
+ * {{location}}/{{data_policy_id}}
338
+
339
+ * {{data_policy_id}}
340
+
341
+ Any variables not passed in the import command will be taken from the provider configuration.
342
+
343
+ BigQuery Data Policy V2 datapolicy IAM resources can be imported using the resource identifiers, role, and member.
344
+
345
+ IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
346
+
347
+ ```sh
348
+ $ pulumi import gcp:bigquery/datapolicyv2DataPolicyIamPolicy:Datapolicyv2DataPolicyIamPolicy editor "projects/{{project}}/locations/{{location}}/dataPolicies/{{data_policy_id}} roles/viewer user:jane@example.com"
349
+ ```
350
+
351
+ IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
352
+
353
+ ```sh
354
+ $ pulumi import gcp:bigquery/datapolicyv2DataPolicyIamPolicy:Datapolicyv2DataPolicyIamPolicy editor "projects/{{project}}/locations/{{location}}/dataPolicies/{{data_policy_id}} roles/viewer"
355
+ ```
356
+
357
+ IAM policy imports use the identifier of the resource in question, e.g.
358
+
359
+ ```sh
360
+ $ pulumi import gcp:bigquery/datapolicyv2DataPolicyIamPolicy:Datapolicyv2DataPolicyIamPolicy editor projects/{{project}}/locations/{{location}}/dataPolicies/{{data_policy_id}}
361
+ ```
362
+
363
+ -> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
364
+
365
+ full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
366
+
367
+ :param str resource_name: The name of the resource.
368
+ :param pulumi.ResourceOptions opts: Options for the resource.
369
+ :param pulumi.Input[_builtins.str] data_policy_id: Used to find the parent resource to bind the IAM policy to
370
+ :param pulumi.Input[_builtins.str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. Used to find the parent resource to bind the IAM policy to. If not specified,
371
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
372
+ location is specified, it is taken from the provider configuration.
373
+ :param pulumi.Input[_builtins.str] policy_data: The policy data generated by
374
+ a `organizations_get_iam_policy` data source.
375
+ :param pulumi.Input[_builtins.str] project: The ID of the project in which the resource belongs.
376
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
377
+ """
378
+ ...
379
+ @overload
380
+ def __init__(__self__,
381
+ resource_name: str,
382
+ args: Datapolicyv2DataPolicyIamPolicyArgs,
383
+ opts: Optional[pulumi.ResourceOptions] = None):
384
+ """
385
+ Three different resources help you manage your IAM policy for BigQuery Data Policy V2 DataPolicy. Each of these resources serves a different use case:
386
+
387
+ * `bigquery.Datapolicyv2DataPolicyIamPolicy`: Authoritative. Sets the IAM policy for the datapolicy and replaces any existing policy already attached.
388
+ * `bigquery.Datapolicyv2DataPolicyIamBinding`: 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 datapolicy are preserved.
389
+ * `bigquery.Datapolicyv2DataPolicyIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the datapolicy are preserved.
390
+
391
+ A data source can be used to retrieve policy data in advent you do not need creation
392
+
393
+ * `bigquery.Datapolicyv2DataPolicyIamPolicy`: Retrieves the IAM policy for the datapolicy
394
+
395
+ > **Note:** `bigquery.Datapolicyv2DataPolicyIamPolicy` **cannot** be used in conjunction with `bigquery.Datapolicyv2DataPolicyIamBinding` and `bigquery.Datapolicyv2DataPolicyIamMember` or they will fight over what your policy should be.
396
+
397
+ > **Note:** `bigquery.Datapolicyv2DataPolicyIamBinding` resources **can be** used in conjunction with `bigquery.Datapolicyv2DataPolicyIamMember` resources **only if** they do not grant privilege to the same role.
398
+
399
+ ## bigquery.Datapolicyv2DataPolicyIamPolicy
400
+
401
+ ```python
402
+ import pulumi
403
+ import pulumi_gcp as gcp
404
+
405
+ admin = gcp.organizations.get_iam_policy(bindings=[{
406
+ "role": "roles/viewer",
407
+ "members": ["user:jane@example.com"],
408
+ }])
409
+ policy = gcp.bigquery.Datapolicyv2DataPolicyIamPolicy("policy",
410
+ project=basic_data_policy["project"],
411
+ location=basic_data_policy["location"],
412
+ data_policy_id=basic_data_policy["dataPolicyId"],
413
+ policy_data=admin.policy_data)
414
+ ```
415
+
416
+ ## bigquery.Datapolicyv2DataPolicyIamBinding
417
+
418
+ ```python
419
+ import pulumi
420
+ import pulumi_gcp as gcp
421
+
422
+ binding = gcp.bigquery.Datapolicyv2DataPolicyIamBinding("binding",
423
+ project=basic_data_policy["project"],
424
+ location=basic_data_policy["location"],
425
+ data_policy_id=basic_data_policy["dataPolicyId"],
426
+ role="roles/viewer",
427
+ members=["user:jane@example.com"])
428
+ ```
429
+
430
+ ## bigquery.Datapolicyv2DataPolicyIamMember
431
+
432
+ ```python
433
+ import pulumi
434
+ import pulumi_gcp as gcp
435
+
436
+ member = gcp.bigquery.Datapolicyv2DataPolicyIamMember("member",
437
+ project=basic_data_policy["project"],
438
+ location=basic_data_policy["location"],
439
+ data_policy_id=basic_data_policy["dataPolicyId"],
440
+ role="roles/viewer",
441
+ member="user:jane@example.com")
442
+ ```
443
+
444
+ ## This resource supports User Project Overrides.
445
+
446
+ -
447
+
448
+ # IAM policy for BigQuery Data Policy V2 DataPolicy
449
+
450
+ Three different resources help you manage your IAM policy for BigQuery Data Policy V2 DataPolicy. Each of these resources serves a different use case:
451
+
452
+ * `bigquery.Datapolicyv2DataPolicyIamPolicy`: Authoritative. Sets the IAM policy for the datapolicy and replaces any existing policy already attached.
453
+ * `bigquery.Datapolicyv2DataPolicyIamBinding`: 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 datapolicy are preserved.
454
+ * `bigquery.Datapolicyv2DataPolicyIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the datapolicy are preserved.
455
+
456
+ A data source can be used to retrieve policy data in advent you do not need creation
457
+
458
+ * `bigquery.Datapolicyv2DataPolicyIamPolicy`: Retrieves the IAM policy for the datapolicy
459
+
460
+ > **Note:** `bigquery.Datapolicyv2DataPolicyIamPolicy` **cannot** be used in conjunction with `bigquery.Datapolicyv2DataPolicyIamBinding` and `bigquery.Datapolicyv2DataPolicyIamMember` or they will fight over what your policy should be.
461
+
462
+ > **Note:** `bigquery.Datapolicyv2DataPolicyIamBinding` resources **can be** used in conjunction with `bigquery.Datapolicyv2DataPolicyIamMember` resources **only if** they do not grant privilege to the same role.
463
+
464
+ ## bigquery.Datapolicyv2DataPolicyIamPolicy
465
+
466
+ ```python
467
+ import pulumi
468
+ import pulumi_gcp as gcp
469
+
470
+ admin = gcp.organizations.get_iam_policy(bindings=[{
471
+ "role": "roles/viewer",
472
+ "members": ["user:jane@example.com"],
473
+ }])
474
+ policy = gcp.bigquery.Datapolicyv2DataPolicyIamPolicy("policy",
475
+ project=basic_data_policy["project"],
476
+ location=basic_data_policy["location"],
477
+ data_policy_id=basic_data_policy["dataPolicyId"],
478
+ policy_data=admin.policy_data)
479
+ ```
480
+
481
+ ## bigquery.Datapolicyv2DataPolicyIamBinding
482
+
483
+ ```python
484
+ import pulumi
485
+ import pulumi_gcp as gcp
486
+
487
+ binding = gcp.bigquery.Datapolicyv2DataPolicyIamBinding("binding",
488
+ project=basic_data_policy["project"],
489
+ location=basic_data_policy["location"],
490
+ data_policy_id=basic_data_policy["dataPolicyId"],
491
+ role="roles/viewer",
492
+ members=["user:jane@example.com"])
493
+ ```
494
+
495
+ ## bigquery.Datapolicyv2DataPolicyIamMember
496
+
497
+ ```python
498
+ import pulumi
499
+ import pulumi_gcp as gcp
500
+
501
+ member = gcp.bigquery.Datapolicyv2DataPolicyIamMember("member",
502
+ project=basic_data_policy["project"],
503
+ location=basic_data_policy["location"],
504
+ data_policy_id=basic_data_policy["dataPolicyId"],
505
+ role="roles/viewer",
506
+ member="user:jane@example.com")
507
+ ```
508
+
509
+ ## Import
510
+
511
+ For all import syntaxes, the "resource in question" can take any of the following forms:
512
+
513
+ * projects/{{project}}/locations/{{location}}/dataPolicies/{{data_policy_id}}
514
+
515
+ * {{project}}/{{location}}/{{data_policy_id}}
516
+
517
+ * {{location}}/{{data_policy_id}}
518
+
519
+ * {{data_policy_id}}
520
+
521
+ Any variables not passed in the import command will be taken from the provider configuration.
522
+
523
+ BigQuery Data Policy V2 datapolicy IAM resources can be imported using the resource identifiers, role, and member.
524
+
525
+ IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
526
+
527
+ ```sh
528
+ $ pulumi import gcp:bigquery/datapolicyv2DataPolicyIamPolicy:Datapolicyv2DataPolicyIamPolicy editor "projects/{{project}}/locations/{{location}}/dataPolicies/{{data_policy_id}} roles/viewer user:jane@example.com"
529
+ ```
530
+
531
+ IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
532
+
533
+ ```sh
534
+ $ pulumi import gcp:bigquery/datapolicyv2DataPolicyIamPolicy:Datapolicyv2DataPolicyIamPolicy editor "projects/{{project}}/locations/{{location}}/dataPolicies/{{data_policy_id}} roles/viewer"
535
+ ```
536
+
537
+ IAM policy imports use the identifier of the resource in question, e.g.
538
+
539
+ ```sh
540
+ $ pulumi import gcp:bigquery/datapolicyv2DataPolicyIamPolicy:Datapolicyv2DataPolicyIamPolicy editor projects/{{project}}/locations/{{location}}/dataPolicies/{{data_policy_id}}
541
+ ```
542
+
543
+ -> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
544
+
545
+ full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
546
+
547
+ :param str resource_name: The name of the resource.
548
+ :param Datapolicyv2DataPolicyIamPolicyArgs args: The arguments to use to populate this resource's properties.
549
+ :param pulumi.ResourceOptions opts: Options for the resource.
550
+ """
551
+ ...
552
+ def __init__(__self__, resource_name: str, *args, **kwargs):
553
+ resource_args, opts = _utilities.get_resource_args_opts(Datapolicyv2DataPolicyIamPolicyArgs, pulumi.ResourceOptions, *args, **kwargs)
554
+ if resource_args is not None:
555
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
556
+ else:
557
+ __self__._internal_init(resource_name, *args, **kwargs)
558
+
559
+ def _internal_init(__self__,
560
+ resource_name: str,
561
+ opts: Optional[pulumi.ResourceOptions] = None,
562
+ data_policy_id: Optional[pulumi.Input[_builtins.str]] = None,
563
+ location: Optional[pulumi.Input[_builtins.str]] = None,
564
+ policy_data: Optional[pulumi.Input[_builtins.str]] = None,
565
+ project: Optional[pulumi.Input[_builtins.str]] = None,
566
+ __props__=None):
567
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
568
+ if not isinstance(opts, pulumi.ResourceOptions):
569
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
570
+ if opts.id is None:
571
+ if __props__ is not None:
572
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
573
+ __props__ = Datapolicyv2DataPolicyIamPolicyArgs.__new__(Datapolicyv2DataPolicyIamPolicyArgs)
574
+
575
+ if data_policy_id is None and not opts.urn:
576
+ raise TypeError("Missing required property 'data_policy_id'")
577
+ __props__.__dict__["data_policy_id"] = data_policy_id
578
+ __props__.__dict__["location"] = location
579
+ if policy_data is None and not opts.urn:
580
+ raise TypeError("Missing required property 'policy_data'")
581
+ __props__.__dict__["policy_data"] = policy_data
582
+ __props__.__dict__["project"] = project
583
+ __props__.__dict__["etag"] = None
584
+ super(Datapolicyv2DataPolicyIamPolicy, __self__).__init__(
585
+ 'gcp:bigquery/datapolicyv2DataPolicyIamPolicy:Datapolicyv2DataPolicyIamPolicy',
586
+ resource_name,
587
+ __props__,
588
+ opts)
589
+
590
+ @staticmethod
591
+ def get(resource_name: str,
592
+ id: pulumi.Input[str],
593
+ opts: Optional[pulumi.ResourceOptions] = None,
594
+ data_policy_id: Optional[pulumi.Input[_builtins.str]] = None,
595
+ etag: Optional[pulumi.Input[_builtins.str]] = None,
596
+ location: Optional[pulumi.Input[_builtins.str]] = None,
597
+ policy_data: Optional[pulumi.Input[_builtins.str]] = None,
598
+ project: Optional[pulumi.Input[_builtins.str]] = None) -> 'Datapolicyv2DataPolicyIamPolicy':
599
+ """
600
+ Get an existing Datapolicyv2DataPolicyIamPolicy resource's state with the given name, id, and optional extra
601
+ properties used to qualify the lookup.
602
+
603
+ :param str resource_name: The unique name of the resulting resource.
604
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
605
+ :param pulumi.ResourceOptions opts: Options for the resource.
606
+ :param pulumi.Input[_builtins.str] data_policy_id: Used to find the parent resource to bind the IAM policy to
607
+ :param pulumi.Input[_builtins.str] etag: (Computed) The etag of the IAM policy.
608
+ :param pulumi.Input[_builtins.str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. Used to find the parent resource to bind the IAM policy to. If not specified,
609
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
610
+ location is specified, it is taken from the provider configuration.
611
+ :param pulumi.Input[_builtins.str] policy_data: The policy data generated by
612
+ a `organizations_get_iam_policy` data source.
613
+ :param pulumi.Input[_builtins.str] project: The ID of the project in which the resource belongs.
614
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
615
+ """
616
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
617
+
618
+ __props__ = _Datapolicyv2DataPolicyIamPolicyState.__new__(_Datapolicyv2DataPolicyIamPolicyState)
619
+
620
+ __props__.__dict__["data_policy_id"] = data_policy_id
621
+ __props__.__dict__["etag"] = etag
622
+ __props__.__dict__["location"] = location
623
+ __props__.__dict__["policy_data"] = policy_data
624
+ __props__.__dict__["project"] = project
625
+ return Datapolicyv2DataPolicyIamPolicy(resource_name, opts=opts, __props__=__props__)
626
+
627
+ @_builtins.property
628
+ @pulumi.getter(name="dataPolicyId")
629
+ def data_policy_id(self) -> pulumi.Output[_builtins.str]:
630
+ """
631
+ Used to find the parent resource to bind the IAM policy to
632
+ """
633
+ return pulumi.get(self, "data_policy_id")
634
+
635
+ @_builtins.property
636
+ @pulumi.getter
637
+ def etag(self) -> pulumi.Output[_builtins.str]:
638
+ """
639
+ (Computed) The etag of the IAM policy.
640
+ """
641
+ return pulumi.get(self, "etag")
642
+
643
+ @_builtins.property
644
+ @pulumi.getter
645
+ def location(self) -> pulumi.Output[_builtins.str]:
646
+ """
647
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. Used to find the parent resource to bind the IAM policy to. If not specified,
648
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
649
+ location is specified, it is taken from the provider configuration.
650
+ """
651
+ return pulumi.get(self, "location")
652
+
653
+ @_builtins.property
654
+ @pulumi.getter(name="policyData")
655
+ def policy_data(self) -> pulumi.Output[_builtins.str]:
656
+ """
657
+ The policy data generated by
658
+ a `organizations_get_iam_policy` data source.
659
+ """
660
+ return pulumi.get(self, "policy_data")
661
+
662
+ @_builtins.property
663
+ @pulumi.getter
664
+ def project(self) -> pulumi.Output[_builtins.str]:
665
+ """
666
+ The ID of the project in which the resource belongs.
667
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
668
+ """
669
+ return pulumi.get(self, "project")
670
+