pulumi-gcp 7.24.0a1716510380__py3-none-any.whl → 7.25.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (467) hide show
  1. pulumi_gcp/__init__.py +104 -0
  2. pulumi_gcp/accesscontextmanager/access_policy_iam_binding.py +12 -12
  3. pulumi_gcp/accesscontextmanager/access_policy_iam_member.py +12 -12
  4. pulumi_gcp/accesscontextmanager/access_policy_iam_policy.py +12 -12
  5. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +0 -64
  6. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +0 -70
  7. pulumi_gcp/alloydb/backup.py +50 -42
  8. pulumi_gcp/alloydb/cluster.py +56 -48
  9. pulumi_gcp/alloydb/instance.py +50 -42
  10. pulumi_gcp/alloydb/user.py +32 -24
  11. pulumi_gcp/apigateway/api_config.py +0 -114
  12. pulumi_gcp/apigateway/api_config_iam_binding.py +8 -8
  13. pulumi_gcp/apigateway/api_config_iam_member.py +8 -8
  14. pulumi_gcp/apigateway/api_config_iam_policy.py +8 -8
  15. pulumi_gcp/apigateway/api_iam_binding.py +8 -8
  16. pulumi_gcp/apigateway/api_iam_member.py +8 -8
  17. pulumi_gcp/apigateway/api_iam_policy.py +8 -8
  18. pulumi_gcp/apigateway/gateway.py +0 -44
  19. pulumi_gcp/apigateway/gateway_iam_binding.py +8 -8
  20. pulumi_gcp/apigateway/gateway_iam_member.py +8 -8
  21. pulumi_gcp/apigateway/gateway_iam_policy.py +8 -8
  22. pulumi_gcp/apigee/addons_config.py +14 -4
  23. pulumi_gcp/apigee/endpoint_attachment.py +4 -2
  24. pulumi_gcp/apigee/env_group.py +4 -2
  25. pulumi_gcp/apigee/environment.py +4 -2
  26. pulumi_gcp/apigee/environment_iam_binding.py +12 -12
  27. pulumi_gcp/apigee/environment_iam_member.py +12 -12
  28. pulumi_gcp/apigee/environment_iam_policy.py +12 -12
  29. pulumi_gcp/apigee/instance.py +22 -8
  30. pulumi_gcp/apigee/keystores_aliases_self_signed_cert.py +26 -10
  31. pulumi_gcp/apigee/nat_address.py +10 -2
  32. pulumi_gcp/apigee/organization.py +18 -6
  33. pulumi_gcp/apigee/sync_authorization.py +8 -4
  34. pulumi_gcp/apigee/target_server.py +26 -10
  35. pulumi_gcp/appengine/_inputs.py +18 -0
  36. pulumi_gcp/appengine/domain_mapping.py +1 -1
  37. pulumi_gcp/appengine/outputs.py +16 -0
  38. pulumi_gcp/apphub/service.py +40 -20
  39. pulumi_gcp/apphub/service_project_attachment.py +16 -8
  40. pulumi_gcp/apphub/workload.py +0 -418
  41. pulumi_gcp/applicationintegration/auth_config.py +4 -2
  42. pulumi_gcp/artifactregistry/repository.py +14 -12
  43. pulumi_gcp/artifactregistry/repository_iam_binding.py +12 -12
  44. pulumi_gcp/artifactregistry/repository_iam_member.py +12 -12
  45. pulumi_gcp/artifactregistry/repository_iam_policy.py +12 -12
  46. pulumi_gcp/backupdisasterrecovery/management_server.py +4 -2
  47. pulumi_gcp/bigquery/_inputs.py +286 -2
  48. pulumi_gcp/bigquery/connection.py +126 -0
  49. pulumi_gcp/bigquery/connection_iam_binding.py +12 -12
  50. pulumi_gcp/bigquery/connection_iam_member.py +12 -12
  51. pulumi_gcp/bigquery/connection_iam_policy.py +12 -12
  52. pulumi_gcp/bigquery/data_transfer_config.py +8 -4
  53. pulumi_gcp/bigquery/dataset_iam_binding.py +12 -12
  54. pulumi_gcp/bigquery/dataset_iam_member.py +12 -12
  55. pulumi_gcp/bigquery/dataset_iam_policy.py +12 -12
  56. pulumi_gcp/bigquery/iam_binding.py +12 -12
  57. pulumi_gcp/bigquery/iam_member.py +12 -12
  58. pulumi_gcp/bigquery/iam_policy.py +12 -12
  59. pulumi_gcp/bigquery/job.py +22 -16
  60. pulumi_gcp/bigquery/outputs.py +289 -2
  61. pulumi_gcp/bigquery/routine.py +2 -2
  62. pulumi_gcp/bigquery/table.py +77 -35
  63. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_binding.py +12 -12
  64. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_member.py +12 -12
  65. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_policy.py +12 -12
  66. pulumi_gcp/bigqueryanalyticshub/listing_iam_binding.py +12 -12
  67. pulumi_gcp/bigqueryanalyticshub/listing_iam_member.py +12 -12
  68. pulumi_gcp/bigqueryanalyticshub/listing_iam_policy.py +12 -12
  69. pulumi_gcp/bigquerydatapolicy/data_policy_iam_binding.py +12 -12
  70. pulumi_gcp/bigquerydatapolicy/data_policy_iam_member.py +12 -12
  71. pulumi_gcp/bigquerydatapolicy/data_policy_iam_policy.py +12 -12
  72. pulumi_gcp/bigtable/instance_iam_binding.py +12 -12
  73. pulumi_gcp/bigtable/instance_iam_member.py +12 -12
  74. pulumi_gcp/bigtable/instance_iam_policy.py +12 -12
  75. pulumi_gcp/bigtable/table_iam_binding.py +12 -12
  76. pulumi_gcp/bigtable/table_iam_member.py +12 -12
  77. pulumi_gcp/bigtable/table_iam_policy.py +12 -12
  78. pulumi_gcp/billing/account_iam_binding.py +12 -12
  79. pulumi_gcp/billing/account_iam_member.py +12 -12
  80. pulumi_gcp/billing/account_iam_policy.py +12 -12
  81. pulumi_gcp/billing/project_info.py +4 -4
  82. pulumi_gcp/binaryauthorization/attestor_iam_binding.py +12 -12
  83. pulumi_gcp/binaryauthorization/attestor_iam_member.py +12 -12
  84. pulumi_gcp/binaryauthorization/attestor_iam_policy.py +12 -12
  85. pulumi_gcp/certificateauthority/authority.py +10 -2
  86. pulumi_gcp/certificateauthority/ca_pool_iam_binding.py +12 -12
  87. pulumi_gcp/certificateauthority/ca_pool_iam_member.py +12 -12
  88. pulumi_gcp/certificateauthority/ca_pool_iam_policy.py +12 -12
  89. pulumi_gcp/certificateauthority/certificate.py +8 -4
  90. pulumi_gcp/certificateauthority/certificate_template_iam_binding.py +12 -12
  91. pulumi_gcp/certificateauthority/certificate_template_iam_member.py +12 -12
  92. pulumi_gcp/certificateauthority/certificate_template_iam_policy.py +12 -12
  93. pulumi_gcp/certificatemanager/certificate.py +84 -80
  94. pulumi_gcp/certificatemanager/certificate_issuance_config.py +32 -30
  95. pulumi_gcp/cloudasset/__init__.py +1 -0
  96. pulumi_gcp/cloudasset/get_search_all_resources.py +197 -0
  97. pulumi_gcp/cloudasset/outputs.py +184 -0
  98. pulumi_gcp/cloudbuild/bitbucket_server_config.py +12 -6
  99. pulumi_gcp/cloudbuild/trigger.py +22 -14
  100. pulumi_gcp/cloudbuild/worker_pool.py +12 -6
  101. pulumi_gcp/cloudbuildv2/connection.py +10 -2
  102. pulumi_gcp/cloudbuildv2/connection_iam_binding.py +12 -12
  103. pulumi_gcp/cloudbuildv2/connection_iam_member.py +12 -12
  104. pulumi_gcp/cloudbuildv2/connection_iam_policy.py +12 -12
  105. pulumi_gcp/cloudbuildv2/repository.py +10 -2
  106. pulumi_gcp/cloudfunctions/function_iam_binding.py +12 -12
  107. pulumi_gcp/cloudfunctions/function_iam_member.py +12 -12
  108. pulumi_gcp/cloudfunctions/function_iam_policy.py +12 -12
  109. pulumi_gcp/cloudfunctionsv2/function.py +110 -66
  110. pulumi_gcp/cloudfunctionsv2/function_iam_binding.py +12 -12
  111. pulumi_gcp/cloudfunctionsv2/function_iam_member.py +12 -12
  112. pulumi_gcp/cloudfunctionsv2/function_iam_policy.py +12 -12
  113. pulumi_gcp/cloudids/endpoint.py +4 -2
  114. pulumi_gcp/cloudrun/_inputs.py +80 -4
  115. pulumi_gcp/cloudrun/iam_binding.py +12 -12
  116. pulumi_gcp/cloudrun/iam_member.py +12 -12
  117. pulumi_gcp/cloudrun/iam_policy.py +12 -12
  118. pulumi_gcp/cloudrun/outputs.py +137 -4
  119. pulumi_gcp/cloudrunv2/job.py +32 -20
  120. pulumi_gcp/cloudrunv2/job_iam_binding.py +12 -12
  121. pulumi_gcp/cloudrunv2/job_iam_member.py +12 -12
  122. pulumi_gcp/cloudrunv2/job_iam_policy.py +12 -12
  123. pulumi_gcp/cloudrunv2/service.py +28 -20
  124. pulumi_gcp/cloudrunv2/service_iam_binding.py +12 -12
  125. pulumi_gcp/cloudrunv2/service_iam_member.py +12 -12
  126. pulumi_gcp/cloudrunv2/service_iam_policy.py +12 -12
  127. pulumi_gcp/cloudtasks/queue_iam_binding.py +12 -12
  128. pulumi_gcp/cloudtasks/queue_iam_member.py +12 -12
  129. pulumi_gcp/cloudtasks/queue_iam_policy.py +12 -12
  130. pulumi_gcp/composer/user_workloads_secret.py +4 -4
  131. pulumi_gcp/compute/__init__.py +2 -0
  132. pulumi_gcp/compute/_inputs.py +805 -182
  133. pulumi_gcp/compute/disk_iam_binding.py +12 -12
  134. pulumi_gcp/compute/disk_iam_member.py +12 -12
  135. pulumi_gcp/compute/disk_iam_policy.py +12 -12
  136. pulumi_gcp/compute/forwarding_rule.py +231 -823
  137. pulumi_gcp/compute/get_network_endpoint_group.py +2 -2
  138. pulumi_gcp/compute/get_region_network_endpoint_group.py +2 -2
  139. pulumi_gcp/compute/get_router_nat.py +11 -1
  140. pulumi_gcp/compute/get_snapshot.py +2 -0
  141. pulumi_gcp/compute/get_subnetworks.py +157 -0
  142. pulumi_gcp/compute/global_forwarding_rule.py +0 -766
  143. pulumi_gcp/compute/image_iam_binding.py +12 -12
  144. pulumi_gcp/compute/image_iam_member.py +12 -12
  145. pulumi_gcp/compute/image_iam_policy.py +12 -12
  146. pulumi_gcp/compute/instance_group.py +0 -100
  147. pulumi_gcp/compute/instance_group_membership.py +2 -2
  148. pulumi_gcp/compute/instance_iam_binding.py +12 -12
  149. pulumi_gcp/compute/instance_iam_member.py +12 -12
  150. pulumi_gcp/compute/instance_iam_policy.py +12 -12
  151. pulumi_gcp/compute/interconnect.py +1683 -0
  152. pulumi_gcp/compute/interconnect_attachment.py +82 -0
  153. pulumi_gcp/compute/machine_image_iam_binding.py +8 -8
  154. pulumi_gcp/compute/machine_image_iam_member.py +8 -8
  155. pulumi_gcp/compute/machine_image_iam_policy.py +8 -8
  156. pulumi_gcp/compute/network_endpoint.py +2 -2
  157. pulumi_gcp/compute/network_endpoint_list.py +2 -2
  158. pulumi_gcp/compute/outputs.py +1022 -161
  159. pulumi_gcp/compute/packet_mirroring.py +4 -2
  160. pulumi_gcp/compute/region_disk_iam_binding.py +12 -12
  161. pulumi_gcp/compute/region_disk_iam_member.py +12 -12
  162. pulumi_gcp/compute/region_disk_iam_policy.py +12 -12
  163. pulumi_gcp/compute/region_security_policy_rule.py +4 -2
  164. pulumi_gcp/compute/region_ssl_certificate.py +0 -188
  165. pulumi_gcp/compute/region_ssl_policy.py +39 -40
  166. pulumi_gcp/compute/route.py +10 -2
  167. pulumi_gcp/compute/router_nat.py +68 -0
  168. pulumi_gcp/compute/security_policy_rule.py +55 -1
  169. pulumi_gcp/compute/snapshot_iam_binding.py +12 -12
  170. pulumi_gcp/compute/snapshot_iam_member.py +12 -12
  171. pulumi_gcp/compute/snapshot_iam_policy.py +12 -12
  172. pulumi_gcp/compute/ssl_certificate.py +0 -166
  173. pulumi_gcp/compute/subnetwork_iam_binding.py +12 -12
  174. pulumi_gcp/compute/subnetwork_iam_member.py +12 -12
  175. pulumi_gcp/compute/subnetwork_iam_policy.py +12 -12
  176. pulumi_gcp/compute/target_instance.py +8 -6
  177. pulumi_gcp/compute/target_pool.py +21 -21
  178. pulumi_gcp/compute/vpn_gateway.py +12 -2
  179. pulumi_gcp/compute/vpn_tunnel.py +26 -16
  180. pulumi_gcp/container/_inputs.py +562 -2
  181. pulumi_gcp/container/outputs.py +1110 -55
  182. pulumi_gcp/containeranalysis/note_iam_binding.py +12 -12
  183. pulumi_gcp/containeranalysis/note_iam_member.py +12 -12
  184. pulumi_gcp/containeranalysis/note_iam_policy.py +12 -12
  185. pulumi_gcp/databasemigrationservice/connection_profile.py +38 -22
  186. pulumi_gcp/datacatalog/entry_group_iam_binding.py +12 -12
  187. pulumi_gcp/datacatalog/entry_group_iam_member.py +12 -12
  188. pulumi_gcp/datacatalog/entry_group_iam_policy.py +12 -12
  189. pulumi_gcp/datacatalog/policy_tag.py +4 -2
  190. pulumi_gcp/datacatalog/policy_tag_iam_binding.py +12 -12
  191. pulumi_gcp/datacatalog/policy_tag_iam_member.py +12 -12
  192. pulumi_gcp/datacatalog/policy_tag_iam_policy.py +12 -12
  193. pulumi_gcp/datacatalog/tag_template_iam_binding.py +12 -12
  194. pulumi_gcp/datacatalog/tag_template_iam_member.py +12 -12
  195. pulumi_gcp/datacatalog/tag_template_iam_policy.py +12 -12
  196. pulumi_gcp/datacatalog/taxonomy_iam_binding.py +12 -12
  197. pulumi_gcp/datacatalog/taxonomy_iam_member.py +12 -12
  198. pulumi_gcp/datacatalog/taxonomy_iam_policy.py +12 -12
  199. pulumi_gcp/datafusion/instance.py +14 -12
  200. pulumi_gcp/dataloss/_inputs.py +420 -13
  201. pulumi_gcp/dataloss/outputs.py +439 -13
  202. pulumi_gcp/dataplex/__init__.py +10 -0
  203. pulumi_gcp/dataplex/_inputs.py +160 -0
  204. pulumi_gcp/dataplex/aspect_type.py +1077 -0
  205. pulumi_gcp/dataplex/aspect_type_iam_binding.py +765 -0
  206. pulumi_gcp/dataplex/aspect_type_iam_member.py +765 -0
  207. pulumi_gcp/dataplex/aspect_type_iam_policy.py +604 -0
  208. pulumi_gcp/dataplex/asset.py +4 -2
  209. pulumi_gcp/dataplex/asset_iam_binding.py +12 -12
  210. pulumi_gcp/dataplex/asset_iam_member.py +12 -12
  211. pulumi_gcp/dataplex/asset_iam_policy.py +12 -12
  212. pulumi_gcp/dataplex/datascan.py +16 -14
  213. pulumi_gcp/dataplex/datascan_iam_binding.py +12 -12
  214. pulumi_gcp/dataplex/datascan_iam_member.py +12 -12
  215. pulumi_gcp/dataplex/datascan_iam_policy.py +12 -12
  216. pulumi_gcp/dataplex/entry_group.py +722 -0
  217. pulumi_gcp/dataplex/entry_group_iam_binding.py +765 -0
  218. pulumi_gcp/dataplex/entry_group_iam_member.py +765 -0
  219. pulumi_gcp/dataplex/entry_group_iam_policy.py +604 -0
  220. pulumi_gcp/dataplex/get_aspect_type_iam_policy.py +164 -0
  221. pulumi_gcp/dataplex/get_entry_group_iam_policy.py +164 -0
  222. pulumi_gcp/dataplex/lake_iam_binding.py +12 -12
  223. pulumi_gcp/dataplex/lake_iam_member.py +12 -12
  224. pulumi_gcp/dataplex/lake_iam_policy.py +12 -12
  225. pulumi_gcp/dataplex/outputs.py +112 -0
  226. pulumi_gcp/dataplex/task.py +16 -16
  227. pulumi_gcp/dataplex/task_iam_binding.py +12 -12
  228. pulumi_gcp/dataplex/task_iam_member.py +12 -12
  229. pulumi_gcp/dataplex/task_iam_policy.py +12 -12
  230. pulumi_gcp/dataplex/zone_iam_binding.py +12 -12
  231. pulumi_gcp/dataplex/zone_iam_member.py +12 -12
  232. pulumi_gcp/dataplex/zone_iam_policy.py +12 -12
  233. pulumi_gcp/dataproc/_inputs.py +70 -0
  234. pulumi_gcp/dataproc/autoscaling_policy_iam_binding.py +12 -12
  235. pulumi_gcp/dataproc/autoscaling_policy_iam_member.py +12 -12
  236. pulumi_gcp/dataproc/autoscaling_policy_iam_policy.py +12 -12
  237. pulumi_gcp/dataproc/cluster_iam_binding.py +12 -12
  238. pulumi_gcp/dataproc/cluster_iam_member.py +12 -12
  239. pulumi_gcp/dataproc/cluster_iam_policy.py +12 -12
  240. pulumi_gcp/dataproc/get_metastore_federation_iam_policy.py +26 -2
  241. pulumi_gcp/dataproc/job_iam_binding.py +12 -12
  242. pulumi_gcp/dataproc/job_iam_member.py +12 -12
  243. pulumi_gcp/dataproc/job_iam_policy.py +12 -12
  244. pulumi_gcp/dataproc/metastore_federation.py +4 -0
  245. pulumi_gcp/dataproc/metastore_federation_iam_binding.py +208 -0
  246. pulumi_gcp/dataproc/metastore_federation_iam_member.py +208 -0
  247. pulumi_gcp/dataproc/metastore_federation_iam_policy.py +208 -0
  248. pulumi_gcp/dataproc/metastore_service_iam_binding.py +12 -12
  249. pulumi_gcp/dataproc/metastore_service_iam_member.py +12 -12
  250. pulumi_gcp/dataproc/metastore_service_iam_policy.py +12 -12
  251. pulumi_gcp/dataproc/outputs.py +62 -0
  252. pulumi_gcp/datastore/data_store_index.py +4 -2
  253. pulumi_gcp/datastream/_inputs.py +1789 -820
  254. pulumi_gcp/datastream/connection_profile.py +210 -3
  255. pulumi_gcp/datastream/outputs.py +864 -5
  256. pulumi_gcp/datastream/private_connection.py +47 -0
  257. pulumi_gcp/datastream/stream.py +231 -4
  258. pulumi_gcp/diagflow/cx_test_case.py +4 -4
  259. pulumi_gcp/diagflow/entity_type.py +4 -2
  260. pulumi_gcp/diagflow/fulfillment.py +4 -2
  261. pulumi_gcp/diagflow/intent.py +8 -4
  262. pulumi_gcp/dns/dns_managed_zone_iam_binding.py +12 -12
  263. pulumi_gcp/dns/dns_managed_zone_iam_member.py +12 -12
  264. pulumi_gcp/dns/dns_managed_zone_iam_policy.py +12 -12
  265. pulumi_gcp/dns/get_managed_zone.py +3 -3
  266. pulumi_gcp/dns/managed_zone.py +7 -7
  267. pulumi_gcp/dns/outputs.py +2 -2
  268. pulumi_gcp/edgecontainer/node_pool.py +4 -2
  269. pulumi_gcp/edgecontainer/vpn_connection.py +4 -2
  270. pulumi_gcp/endpoints/service_iam_binding.py +12 -12
  271. pulumi_gcp/endpoints/service_iam_member.py +12 -12
  272. pulumi_gcp/endpoints/service_iam_policy.py +12 -12
  273. pulumi_gcp/eventarc/channel.py +4 -2
  274. pulumi_gcp/eventarc/google_channel_config.py +4 -2
  275. pulumi_gcp/firebase/app_check_app_attest_config.py +16 -8
  276. pulumi_gcp/firebase/app_check_debug_token.py +8 -4
  277. pulumi_gcp/firebase/app_check_device_check_config.py +8 -4
  278. pulumi_gcp/firebase/app_check_play_integrity_config.py +16 -8
  279. pulumi_gcp/firebase/app_check_recaptcha_enterprise_config.py +8 -4
  280. pulumi_gcp/firebase/app_check_recaptcha_v3_config.py +8 -4
  281. pulumi_gcp/firebase/app_check_service_config.py +12 -6
  282. pulumi_gcp/firebase/database_instance.py +4 -2
  283. pulumi_gcp/firebaserules/release.py +0 -98
  284. pulumi_gcp/firestore/database.py +24 -20
  285. pulumi_gcp/firestore/document.py +24 -12
  286. pulumi_gcp/firestore/field.py +4 -4
  287. pulumi_gcp/folder/access_approval_settings.py +4 -2
  288. pulumi_gcp/folder/iam_audit_config.py +23 -23
  289. pulumi_gcp/folder/iam_member.py +16 -16
  290. pulumi_gcp/folder/iam_policy.py +16 -16
  291. pulumi_gcp/gkebackup/backup_plan_iam_binding.py +12 -12
  292. pulumi_gcp/gkebackup/backup_plan_iam_member.py +12 -12
  293. pulumi_gcp/gkebackup/backup_plan_iam_policy.py +12 -12
  294. pulumi_gcp/gkehub/feature_iam_binding.py +12 -12
  295. pulumi_gcp/gkehub/feature_iam_member.py +12 -12
  296. pulumi_gcp/gkehub/feature_iam_policy.py +12 -12
  297. pulumi_gcp/gkehub/membership_binding.py +20 -10
  298. pulumi_gcp/gkehub/membership_iam_binding.py +12 -12
  299. pulumi_gcp/gkehub/membership_iam_member.py +12 -12
  300. pulumi_gcp/gkehub/membership_iam_policy.py +12 -12
  301. pulumi_gcp/gkehub/membership_rbac_role_binding.py +12 -8
  302. pulumi_gcp/gkehub/namespace.py +8 -6
  303. pulumi_gcp/gkehub/scope_iam_binding.py +12 -12
  304. pulumi_gcp/gkehub/scope_iam_member.py +12 -12
  305. pulumi_gcp/gkehub/scope_iam_policy.py +12 -12
  306. pulumi_gcp/gkehub/scope_rbac_role_binding.py +8 -6
  307. pulumi_gcp/healthcare/consent_store_iam_binding.py +12 -12
  308. pulumi_gcp/healthcare/consent_store_iam_member.py +12 -12
  309. pulumi_gcp/healthcare/consent_store_iam_policy.py +12 -12
  310. pulumi_gcp/healthcare/dataset_iam_binding.py +12 -12
  311. pulumi_gcp/healthcare/dataset_iam_member.py +12 -12
  312. pulumi_gcp/healthcare/dataset_iam_policy.py +12 -12
  313. pulumi_gcp/healthcare/dicom_store_iam_binding.py +12 -12
  314. pulumi_gcp/healthcare/dicom_store_iam_member.py +12 -12
  315. pulumi_gcp/healthcare/dicom_store_iam_policy.py +12 -12
  316. pulumi_gcp/healthcare/fhir_store_iam_binding.py +12 -12
  317. pulumi_gcp/healthcare/fhir_store_iam_member.py +12 -12
  318. pulumi_gcp/healthcare/fhir_store_iam_policy.py +12 -12
  319. pulumi_gcp/healthcare/hl7_store_iam_binding.py +12 -12
  320. pulumi_gcp/healthcare/hl7_store_iam_member.py +12 -12
  321. pulumi_gcp/healthcare/hl7_store_iam_policy.py +12 -12
  322. pulumi_gcp/iap/app_engine_service_iam_binding.py +12 -12
  323. pulumi_gcp/iap/app_engine_service_iam_member.py +12 -12
  324. pulumi_gcp/iap/app_engine_service_iam_policy.py +12 -12
  325. pulumi_gcp/iap/app_engine_version_iam_binding.py +12 -12
  326. pulumi_gcp/iap/app_engine_version_iam_member.py +12 -12
  327. pulumi_gcp/iap/app_engine_version_iam_policy.py +12 -12
  328. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  329. pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +12 -12
  330. pulumi_gcp/iap/tunnel_dest_group_iam_member.py +12 -12
  331. pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +12 -12
  332. pulumi_gcp/iap/tunnel_iam_binding.py +12 -12
  333. pulumi_gcp/iap/tunnel_iam_member.py +12 -12
  334. pulumi_gcp/iap/tunnel_iam_policy.py +12 -12
  335. pulumi_gcp/iap/tunnel_instance_iam_binding.py +12 -12
  336. pulumi_gcp/iap/tunnel_instance_iam_member.py +12 -12
  337. pulumi_gcp/iap/tunnel_instance_iam_policy.py +12 -12
  338. pulumi_gcp/iap/web_backend_service_iam_binding.py +12 -12
  339. pulumi_gcp/iap/web_backend_service_iam_member.py +12 -12
  340. pulumi_gcp/iap/web_backend_service_iam_policy.py +12 -12
  341. pulumi_gcp/iap/web_iam_binding.py +12 -12
  342. pulumi_gcp/iap/web_iam_member.py +12 -12
  343. pulumi_gcp/iap/web_iam_policy.py +12 -12
  344. pulumi_gcp/iap/web_region_backend_service_iam_binding.py +12 -12
  345. pulumi_gcp/iap/web_region_backend_service_iam_member.py +12 -12
  346. pulumi_gcp/iap/web_region_backend_service_iam_policy.py +12 -12
  347. pulumi_gcp/iap/web_type_app_enging_iam_binding.py +12 -12
  348. pulumi_gcp/iap/web_type_app_enging_iam_member.py +12 -12
  349. pulumi_gcp/iap/web_type_app_enging_iam_policy.py +12 -12
  350. pulumi_gcp/iap/web_type_compute_iam_binding.py +12 -12
  351. pulumi_gcp/iap/web_type_compute_iam_member.py +12 -12
  352. pulumi_gcp/iap/web_type_compute_iam_policy.py +12 -12
  353. pulumi_gcp/integrationconnectors/connection.py +4 -2
  354. pulumi_gcp/integrationconnectors/managed_zone.py +26 -14
  355. pulumi_gcp/kms/__init__.py +2 -0
  356. pulumi_gcp/kms/autokey_config.py +366 -0
  357. pulumi_gcp/kms/key_handle.py +548 -0
  358. pulumi_gcp/kms/key_ring_iam_binding.py +12 -12
  359. pulumi_gcp/kms/key_ring_iam_member.py +12 -12
  360. pulumi_gcp/kms/key_ring_iam_policy.py +12 -12
  361. pulumi_gcp/logging/folder_settings.py +12 -10
  362. pulumi_gcp/logging/linked_dataset.py +4 -2
  363. pulumi_gcp/logging/organization_settings.py +12 -10
  364. pulumi_gcp/logging/project_bucket_config.py +4 -2
  365. pulumi_gcp/looker/instance.py +12 -10
  366. pulumi_gcp/netapp/storage_pool.py +7 -7
  367. pulumi_gcp/netapp/volume.py +4 -4
  368. pulumi_gcp/netapp/volume_replication.py +4 -2
  369. pulumi_gcp/netapp/volume_snapshot.py +4 -2
  370. pulumi_gcp/networkconnectivity/internal_range.py +14 -12
  371. pulumi_gcp/networksecurity/gateway_security_policy.py +20 -8
  372. pulumi_gcp/networksecurity/tls_inspection_policy.py +437 -5
  373. pulumi_gcp/networkservices/__init__.py +2 -0
  374. pulumi_gcp/networkservices/_inputs.py +454 -0
  375. pulumi_gcp/networkservices/gateway.py +12 -6
  376. pulumi_gcp/networkservices/lb_route_extension.py +663 -0
  377. pulumi_gcp/networkservices/lb_traffic_extension.py +669 -0
  378. pulumi_gcp/networkservices/outputs.py +478 -0
  379. pulumi_gcp/notebooks/instance_iam_binding.py +12 -12
  380. pulumi_gcp/notebooks/instance_iam_member.py +12 -12
  381. pulumi_gcp/notebooks/instance_iam_policy.py +12 -12
  382. pulumi_gcp/notebooks/runtime_iam_binding.py +12 -12
  383. pulumi_gcp/notebooks/runtime_iam_member.py +12 -12
  384. pulumi_gcp/notebooks/runtime_iam_policy.py +12 -12
  385. pulumi_gcp/organizations/access_approval_settings.py +4 -2
  386. pulumi_gcp/organizations/iam_member.py +16 -16
  387. pulumi_gcp/organizations/iam_policy.py +16 -16
  388. pulumi_gcp/orgpolicy/policy.py +2 -2
  389. pulumi_gcp/parallelstore/instance.py +20 -18
  390. pulumi_gcp/projects/access_approval_settings.py +4 -2
  391. pulumi_gcp/projects/iam_audit_config.py +23 -23
  392. pulumi_gcp/projects/iam_binding.py +23 -23
  393. pulumi_gcp/projects/iam_member.py +23 -23
  394. pulumi_gcp/projects/iam_policy.py +16 -16
  395. pulumi_gcp/projects/service.py +2 -43
  396. pulumi_gcp/pubsub/_inputs.py +16 -0
  397. pulumi_gcp/pubsub/outputs.py +25 -0
  398. pulumi_gcp/pubsub/schema.py +4 -2
  399. pulumi_gcp/pubsub/schema_iam_binding.py +12 -12
  400. pulumi_gcp/pubsub/schema_iam_member.py +12 -12
  401. pulumi_gcp/pubsub/schema_iam_policy.py +12 -12
  402. pulumi_gcp/pubsub/subscription.py +102 -66
  403. pulumi_gcp/pubsub/subscription_iam_binding.py +12 -12
  404. pulumi_gcp/pubsub/subscription_iam_member.py +12 -12
  405. pulumi_gcp/pubsub/subscription_iam_policy.py +12 -12
  406. pulumi_gcp/pubsub/topic.py +4 -2
  407. pulumi_gcp/pubsub/topic_iam_binding.py +12 -12
  408. pulumi_gcp/pubsub/topic_iam_member.py +12 -12
  409. pulumi_gcp/pubsub/topic_iam_policy.py +12 -12
  410. pulumi_gcp/pulumi-plugin.json +1 -1
  411. pulumi_gcp/redis/cluster.py +30 -28
  412. pulumi_gcp/redis/instance.py +4 -2
  413. pulumi_gcp/secretmanager/secret.py +4 -2
  414. pulumi_gcp/secretmanager/secret_iam_binding.py +12 -12
  415. pulumi_gcp/secretmanager/secret_iam_member.py +12 -12
  416. pulumi_gcp/secretmanager/secret_iam_policy.py +12 -12
  417. pulumi_gcp/securesourcemanager/instance.py +20 -8
  418. pulumi_gcp/securitycenter/instance_iam_binding.py +14 -12
  419. pulumi_gcp/securitycenter/instance_iam_member.py +14 -12
  420. pulumi_gcp/securitycenter/instance_iam_policy.py +14 -12
  421. pulumi_gcp/serviceaccount/key.py +2 -2
  422. pulumi_gcp/servicedirectory/namespace_iam_binding.py +8 -8
  423. pulumi_gcp/servicedirectory/namespace_iam_member.py +8 -8
  424. pulumi_gcp/servicedirectory/namespace_iam_policy.py +8 -8
  425. pulumi_gcp/servicedirectory/service_iam_binding.py +8 -8
  426. pulumi_gcp/servicedirectory/service_iam_member.py +8 -8
  427. pulumi_gcp/servicedirectory/service_iam_policy.py +8 -8
  428. pulumi_gcp/sourcerepo/repository_iam_binding.py +12 -12
  429. pulumi_gcp/sourcerepo/repository_iam_member.py +12 -12
  430. pulumi_gcp/sourcerepo/repository_iam_policy.py +12 -12
  431. pulumi_gcp/spanner/database_iam_binding.py +12 -12
  432. pulumi_gcp/spanner/database_iam_member.py +12 -12
  433. pulumi_gcp/spanner/database_iam_policy.py +12 -12
  434. pulumi_gcp/spanner/instance_iam_binding.py +12 -12
  435. pulumi_gcp/spanner/instance_iam_member.py +12 -12
  436. pulumi_gcp/spanner/instance_iam_policy.py +12 -12
  437. pulumi_gcp/sql/database_instance.py +4 -2
  438. pulumi_gcp/sql/user.py +4 -4
  439. pulumi_gcp/storage/_inputs.py +12 -10
  440. pulumi_gcp/storage/bucket.py +44 -0
  441. pulumi_gcp/storage/bucket_iam_binding.py +12 -12
  442. pulumi_gcp/storage/bucket_iam_member.py +12 -12
  443. pulumi_gcp/storage/bucket_iam_policy.py +12 -12
  444. pulumi_gcp/storage/get_project_service_account.py +4 -2
  445. pulumi_gcp/storage/insights_report_config.py +12 -10
  446. pulumi_gcp/storage/notification.py +18 -16
  447. pulumi_gcp/storage/outputs.py +12 -10
  448. pulumi_gcp/storage/transfer_agent_pool.py +4 -2
  449. pulumi_gcp/storage/transfer_job.py +14 -4
  450. pulumi_gcp/tags/tag_key_iam_binding.py +12 -12
  451. pulumi_gcp/tags/tag_key_iam_member.py +12 -12
  452. pulumi_gcp/tags/tag_key_iam_policy.py +12 -12
  453. pulumi_gcp/tags/tag_value_iam_binding.py +12 -12
  454. pulumi_gcp/tags/tag_value_iam_member.py +12 -12
  455. pulumi_gcp/tags/tag_value_iam_policy.py +12 -12
  456. pulumi_gcp/tpu/_inputs.py +2 -2
  457. pulumi_gcp/tpu/outputs.py +2 -2
  458. pulumi_gcp/tpu/v2_vm.py +10 -6
  459. pulumi_gcp/vertex/ai_endpoint.py +24 -22
  460. pulumi_gcp/vertex/ai_index_endpoint.py +20 -18
  461. pulumi_gcp/vertex/ai_tensorboard.py +14 -12
  462. pulumi_gcp/vmwareengine/external_address.py +4 -2
  463. pulumi_gcp/vmwareengine/network.py +8 -4
  464. {pulumi_gcp-7.24.0a1716510380.dist-info → pulumi_gcp-7.25.0.dist-info}/METADATA +1 -1
  465. {pulumi_gcp-7.24.0a1716510380.dist-info → pulumi_gcp-7.25.0.dist-info}/RECORD +467 -450
  466. {pulumi_gcp-7.24.0a1716510380.dist-info → pulumi_gcp-7.25.0.dist-info}/WHEEL +0 -0
  467. {pulumi_gcp-7.24.0a1716510380.dist-info → pulumi_gcp-7.25.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,604 @@
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 pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+
12
+ __all__ = ['AspectTypeIamPolicyArgs', 'AspectTypeIamPolicy']
13
+
14
+ @pulumi.input_type
15
+ class AspectTypeIamPolicyArgs:
16
+ def __init__(__self__, *,
17
+ aspect_type_id: pulumi.Input[str],
18
+ policy_data: pulumi.Input[str],
19
+ location: Optional[pulumi.Input[str]] = None,
20
+ project: Optional[pulumi.Input[str]] = None):
21
+ """
22
+ The set of arguments for constructing a AspectTypeIamPolicy resource.
23
+ :param pulumi.Input[str] policy_data: The policy data generated by
24
+ a `organizations_get_iam_policy` data source.
25
+ :param pulumi.Input[str] location: The location where aspect type will be created in.
26
+ Used to find the parent resource to bind the IAM policy to
27
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
28
+ 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.
29
+ """
30
+ pulumi.set(__self__, "aspect_type_id", aspect_type_id)
31
+ pulumi.set(__self__, "policy_data", policy_data)
32
+ if location is not None:
33
+ pulumi.set(__self__, "location", location)
34
+ if project is not None:
35
+ pulumi.set(__self__, "project", project)
36
+
37
+ @property
38
+ @pulumi.getter(name="aspectTypeId")
39
+ def aspect_type_id(self) -> pulumi.Input[str]:
40
+ return pulumi.get(self, "aspect_type_id")
41
+
42
+ @aspect_type_id.setter
43
+ def aspect_type_id(self, value: pulumi.Input[str]):
44
+ pulumi.set(self, "aspect_type_id", value)
45
+
46
+ @property
47
+ @pulumi.getter(name="policyData")
48
+ def policy_data(self) -> pulumi.Input[str]:
49
+ """
50
+ The policy data generated by
51
+ a `organizations_get_iam_policy` data source.
52
+ """
53
+ return pulumi.get(self, "policy_data")
54
+
55
+ @policy_data.setter
56
+ def policy_data(self, value: pulumi.Input[str]):
57
+ pulumi.set(self, "policy_data", value)
58
+
59
+ @property
60
+ @pulumi.getter
61
+ def location(self) -> Optional[pulumi.Input[str]]:
62
+ """
63
+ The location where aspect type will be created in.
64
+ Used to find the parent resource to bind the IAM policy to
65
+ """
66
+ return pulumi.get(self, "location")
67
+
68
+ @location.setter
69
+ def location(self, value: Optional[pulumi.Input[str]]):
70
+ pulumi.set(self, "location", value)
71
+
72
+ @property
73
+ @pulumi.getter
74
+ def project(self) -> Optional[pulumi.Input[str]]:
75
+ """
76
+ The ID of the project in which the resource belongs.
77
+ 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.
78
+ """
79
+ return pulumi.get(self, "project")
80
+
81
+ @project.setter
82
+ def project(self, value: Optional[pulumi.Input[str]]):
83
+ pulumi.set(self, "project", value)
84
+
85
+
86
+ @pulumi.input_type
87
+ class _AspectTypeIamPolicyState:
88
+ def __init__(__self__, *,
89
+ aspect_type_id: Optional[pulumi.Input[str]] = None,
90
+ etag: Optional[pulumi.Input[str]] = None,
91
+ location: Optional[pulumi.Input[str]] = None,
92
+ policy_data: Optional[pulumi.Input[str]] = None,
93
+ project: Optional[pulumi.Input[str]] = None):
94
+ """
95
+ Input properties used for looking up and filtering AspectTypeIamPolicy resources.
96
+ :param pulumi.Input[str] etag: (Computed) The etag of the IAM policy.
97
+ :param pulumi.Input[str] location: The location where aspect type will be created in.
98
+ Used to find the parent resource to bind the IAM policy to
99
+ :param pulumi.Input[str] policy_data: The policy data generated by
100
+ a `organizations_get_iam_policy` data source.
101
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
102
+ 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.
103
+ """
104
+ if aspect_type_id is not None:
105
+ pulumi.set(__self__, "aspect_type_id", aspect_type_id)
106
+ if etag is not None:
107
+ pulumi.set(__self__, "etag", etag)
108
+ if location is not None:
109
+ pulumi.set(__self__, "location", location)
110
+ if policy_data is not None:
111
+ pulumi.set(__self__, "policy_data", policy_data)
112
+ if project is not None:
113
+ pulumi.set(__self__, "project", project)
114
+
115
+ @property
116
+ @pulumi.getter(name="aspectTypeId")
117
+ def aspect_type_id(self) -> Optional[pulumi.Input[str]]:
118
+ return pulumi.get(self, "aspect_type_id")
119
+
120
+ @aspect_type_id.setter
121
+ def aspect_type_id(self, value: Optional[pulumi.Input[str]]):
122
+ pulumi.set(self, "aspect_type_id", value)
123
+
124
+ @property
125
+ @pulumi.getter
126
+ def etag(self) -> Optional[pulumi.Input[str]]:
127
+ """
128
+ (Computed) The etag of the IAM policy.
129
+ """
130
+ return pulumi.get(self, "etag")
131
+
132
+ @etag.setter
133
+ def etag(self, value: Optional[pulumi.Input[str]]):
134
+ pulumi.set(self, "etag", value)
135
+
136
+ @property
137
+ @pulumi.getter
138
+ def location(self) -> Optional[pulumi.Input[str]]:
139
+ """
140
+ The location where aspect type will be created in.
141
+ Used to find the parent resource to bind the IAM policy to
142
+ """
143
+ return pulumi.get(self, "location")
144
+
145
+ @location.setter
146
+ def location(self, value: Optional[pulumi.Input[str]]):
147
+ pulumi.set(self, "location", value)
148
+
149
+ @property
150
+ @pulumi.getter(name="policyData")
151
+ def policy_data(self) -> Optional[pulumi.Input[str]]:
152
+ """
153
+ The policy data generated by
154
+ a `organizations_get_iam_policy` data source.
155
+ """
156
+ return pulumi.get(self, "policy_data")
157
+
158
+ @policy_data.setter
159
+ def policy_data(self, value: Optional[pulumi.Input[str]]):
160
+ pulumi.set(self, "policy_data", value)
161
+
162
+ @property
163
+ @pulumi.getter
164
+ def project(self) -> Optional[pulumi.Input[str]]:
165
+ """
166
+ The ID of the project in which the resource belongs.
167
+ 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.
168
+ """
169
+ return pulumi.get(self, "project")
170
+
171
+ @project.setter
172
+ def project(self, value: Optional[pulumi.Input[str]]):
173
+ pulumi.set(self, "project", value)
174
+
175
+
176
+ class AspectTypeIamPolicy(pulumi.CustomResource):
177
+ @overload
178
+ def __init__(__self__,
179
+ resource_name: str,
180
+ opts: Optional[pulumi.ResourceOptions] = None,
181
+ aspect_type_id: Optional[pulumi.Input[str]] = None,
182
+ location: Optional[pulumi.Input[str]] = None,
183
+ policy_data: Optional[pulumi.Input[str]] = None,
184
+ project: Optional[pulumi.Input[str]] = None,
185
+ __props__=None):
186
+ """
187
+ Three different resources help you manage your IAM policy for Dataplex AspectType. Each of these resources serves a different use case:
188
+
189
+ * `dataplex.AspectTypeIamPolicy`: Authoritative. Sets the IAM policy for the aspecttype and replaces any existing policy already attached.
190
+ * `dataplex.AspectTypeIamBinding`: 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 aspecttype are preserved.
191
+ * `dataplex.AspectTypeIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the aspecttype are preserved.
192
+
193
+ A data source can be used to retrieve policy data in advent you do not need creation
194
+
195
+ * `dataplex.AspectTypeIamPolicy`: Retrieves the IAM policy for the aspecttype
196
+
197
+ > **Note:** `dataplex.AspectTypeIamPolicy` **cannot** be used in conjunction with `dataplex.AspectTypeIamBinding` and `dataplex.AspectTypeIamMember` or they will fight over what your policy should be.
198
+
199
+ > **Note:** `dataplex.AspectTypeIamBinding` resources **can be** used in conjunction with `dataplex.AspectTypeIamMember` resources **only if** they do not grant privilege to the same role.
200
+
201
+ ## dataplex.AspectTypeIamPolicy
202
+
203
+ ```python
204
+ import pulumi
205
+ import pulumi_gcp as gcp
206
+
207
+ admin = gcp.organizations.get_iam_policy(bindings=[gcp.organizations.GetIAMPolicyBindingArgs(
208
+ role="roles/viewer",
209
+ members=["user:jane@example.com"],
210
+ )])
211
+ policy = gcp.dataplex.AspectTypeIamPolicy("policy",
212
+ project=test_aspect_type_basic["project"],
213
+ location=test_aspect_type_basic["location"],
214
+ aspect_type_id=test_aspect_type_basic["aspectTypeId"],
215
+ policy_data=admin.policy_data)
216
+ ```
217
+
218
+ ## dataplex.AspectTypeIamBinding
219
+
220
+ ```python
221
+ import pulumi
222
+ import pulumi_gcp as gcp
223
+
224
+ binding = gcp.dataplex.AspectTypeIamBinding("binding",
225
+ project=test_aspect_type_basic["project"],
226
+ location=test_aspect_type_basic["location"],
227
+ aspect_type_id=test_aspect_type_basic["aspectTypeId"],
228
+ role="roles/viewer",
229
+ members=["user:jane@example.com"])
230
+ ```
231
+
232
+ ## dataplex.AspectTypeIamMember
233
+
234
+ ```python
235
+ import pulumi
236
+ import pulumi_gcp as gcp
237
+
238
+ member = gcp.dataplex.AspectTypeIamMember("member",
239
+ project=test_aspect_type_basic["project"],
240
+ location=test_aspect_type_basic["location"],
241
+ aspect_type_id=test_aspect_type_basic["aspectTypeId"],
242
+ role="roles/viewer",
243
+ member="user:jane@example.com")
244
+ ```
245
+
246
+ ## dataplex.AspectTypeIamPolicy
247
+
248
+ ```python
249
+ import pulumi
250
+ import pulumi_gcp as gcp
251
+
252
+ admin = gcp.organizations.get_iam_policy(bindings=[gcp.organizations.GetIAMPolicyBindingArgs(
253
+ role="roles/viewer",
254
+ members=["user:jane@example.com"],
255
+ )])
256
+ policy = gcp.dataplex.AspectTypeIamPolicy("policy",
257
+ project=test_aspect_type_basic["project"],
258
+ location=test_aspect_type_basic["location"],
259
+ aspect_type_id=test_aspect_type_basic["aspectTypeId"],
260
+ policy_data=admin.policy_data)
261
+ ```
262
+
263
+ ## dataplex.AspectTypeIamBinding
264
+
265
+ ```python
266
+ import pulumi
267
+ import pulumi_gcp as gcp
268
+
269
+ binding = gcp.dataplex.AspectTypeIamBinding("binding",
270
+ project=test_aspect_type_basic["project"],
271
+ location=test_aspect_type_basic["location"],
272
+ aspect_type_id=test_aspect_type_basic["aspectTypeId"],
273
+ role="roles/viewer",
274
+ members=["user:jane@example.com"])
275
+ ```
276
+
277
+ ## dataplex.AspectTypeIamMember
278
+
279
+ ```python
280
+ import pulumi
281
+ import pulumi_gcp as gcp
282
+
283
+ member = gcp.dataplex.AspectTypeIamMember("member",
284
+ project=test_aspect_type_basic["project"],
285
+ location=test_aspect_type_basic["location"],
286
+ aspect_type_id=test_aspect_type_basic["aspectTypeId"],
287
+ role="roles/viewer",
288
+ member="user:jane@example.com")
289
+ ```
290
+
291
+ ## Import
292
+
293
+ For all import syntaxes, the "resource in question" can take any of the following forms:
294
+
295
+ * projects/{{project}}/locations/{{location}}/aspectTypes/{{aspect_type_id}}
296
+
297
+ * {{project}}/{{location}}/{{aspect_type_id}}
298
+
299
+ * {{location}}/{{aspect_type_id}}
300
+
301
+ * {{aspect_type_id}}
302
+
303
+ Any variables not passed in the import command will be taken from the provider configuration.
304
+
305
+ Dataplex aspecttype IAM resources can be imported using the resource identifiers, role, and member.
306
+
307
+ IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
308
+
309
+ ```sh
310
+ $ pulumi import gcp:dataplex/aspectTypeIamPolicy:AspectTypeIamPolicy editor "projects/{{project}}/locations/{{location}}/aspectTypes/{{aspect_type_id}} roles/viewer user:jane@example.com"
311
+ ```
312
+
313
+ IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
314
+
315
+ ```sh
316
+ $ pulumi import gcp:dataplex/aspectTypeIamPolicy:AspectTypeIamPolicy editor "projects/{{project}}/locations/{{location}}/aspectTypes/{{aspect_type_id}} roles/viewer"
317
+ ```
318
+
319
+ IAM policy imports use the identifier of the resource in question, e.g.
320
+
321
+ ```sh
322
+ $ pulumi import gcp:dataplex/aspectTypeIamPolicy:AspectTypeIamPolicy editor projects/{{project}}/locations/{{location}}/aspectTypes/{{aspect_type_id}}
323
+ ```
324
+
325
+ -> **Custom Roles**: If you're importing a IAM resource with a custom role, make sure to use the
326
+
327
+ full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
328
+
329
+ :param str resource_name: The name of the resource.
330
+ :param pulumi.ResourceOptions opts: Options for the resource.
331
+ :param pulumi.Input[str] location: The location where aspect type will be created in.
332
+ Used to find the parent resource to bind the IAM policy to
333
+ :param pulumi.Input[str] policy_data: The policy data generated by
334
+ a `organizations_get_iam_policy` data source.
335
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
336
+ 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.
337
+ """
338
+ ...
339
+ @overload
340
+ def __init__(__self__,
341
+ resource_name: str,
342
+ args: AspectTypeIamPolicyArgs,
343
+ opts: Optional[pulumi.ResourceOptions] = None):
344
+ """
345
+ Three different resources help you manage your IAM policy for Dataplex AspectType. Each of these resources serves a different use case:
346
+
347
+ * `dataplex.AspectTypeIamPolicy`: Authoritative. Sets the IAM policy for the aspecttype and replaces any existing policy already attached.
348
+ * `dataplex.AspectTypeIamBinding`: 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 aspecttype are preserved.
349
+ * `dataplex.AspectTypeIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the aspecttype are preserved.
350
+
351
+ A data source can be used to retrieve policy data in advent you do not need creation
352
+
353
+ * `dataplex.AspectTypeIamPolicy`: Retrieves the IAM policy for the aspecttype
354
+
355
+ > **Note:** `dataplex.AspectTypeIamPolicy` **cannot** be used in conjunction with `dataplex.AspectTypeIamBinding` and `dataplex.AspectTypeIamMember` or they will fight over what your policy should be.
356
+
357
+ > **Note:** `dataplex.AspectTypeIamBinding` resources **can be** used in conjunction with `dataplex.AspectTypeIamMember` resources **only if** they do not grant privilege to the same role.
358
+
359
+ ## dataplex.AspectTypeIamPolicy
360
+
361
+ ```python
362
+ import pulumi
363
+ import pulumi_gcp as gcp
364
+
365
+ admin = gcp.organizations.get_iam_policy(bindings=[gcp.organizations.GetIAMPolicyBindingArgs(
366
+ role="roles/viewer",
367
+ members=["user:jane@example.com"],
368
+ )])
369
+ policy = gcp.dataplex.AspectTypeIamPolicy("policy",
370
+ project=test_aspect_type_basic["project"],
371
+ location=test_aspect_type_basic["location"],
372
+ aspect_type_id=test_aspect_type_basic["aspectTypeId"],
373
+ policy_data=admin.policy_data)
374
+ ```
375
+
376
+ ## dataplex.AspectTypeIamBinding
377
+
378
+ ```python
379
+ import pulumi
380
+ import pulumi_gcp as gcp
381
+
382
+ binding = gcp.dataplex.AspectTypeIamBinding("binding",
383
+ project=test_aspect_type_basic["project"],
384
+ location=test_aspect_type_basic["location"],
385
+ aspect_type_id=test_aspect_type_basic["aspectTypeId"],
386
+ role="roles/viewer",
387
+ members=["user:jane@example.com"])
388
+ ```
389
+
390
+ ## dataplex.AspectTypeIamMember
391
+
392
+ ```python
393
+ import pulumi
394
+ import pulumi_gcp as gcp
395
+
396
+ member = gcp.dataplex.AspectTypeIamMember("member",
397
+ project=test_aspect_type_basic["project"],
398
+ location=test_aspect_type_basic["location"],
399
+ aspect_type_id=test_aspect_type_basic["aspectTypeId"],
400
+ role="roles/viewer",
401
+ member="user:jane@example.com")
402
+ ```
403
+
404
+ ## dataplex.AspectTypeIamPolicy
405
+
406
+ ```python
407
+ import pulumi
408
+ import pulumi_gcp as gcp
409
+
410
+ admin = gcp.organizations.get_iam_policy(bindings=[gcp.organizations.GetIAMPolicyBindingArgs(
411
+ role="roles/viewer",
412
+ members=["user:jane@example.com"],
413
+ )])
414
+ policy = gcp.dataplex.AspectTypeIamPolicy("policy",
415
+ project=test_aspect_type_basic["project"],
416
+ location=test_aspect_type_basic["location"],
417
+ aspect_type_id=test_aspect_type_basic["aspectTypeId"],
418
+ policy_data=admin.policy_data)
419
+ ```
420
+
421
+ ## dataplex.AspectTypeIamBinding
422
+
423
+ ```python
424
+ import pulumi
425
+ import pulumi_gcp as gcp
426
+
427
+ binding = gcp.dataplex.AspectTypeIamBinding("binding",
428
+ project=test_aspect_type_basic["project"],
429
+ location=test_aspect_type_basic["location"],
430
+ aspect_type_id=test_aspect_type_basic["aspectTypeId"],
431
+ role="roles/viewer",
432
+ members=["user:jane@example.com"])
433
+ ```
434
+
435
+ ## dataplex.AspectTypeIamMember
436
+
437
+ ```python
438
+ import pulumi
439
+ import pulumi_gcp as gcp
440
+
441
+ member = gcp.dataplex.AspectTypeIamMember("member",
442
+ project=test_aspect_type_basic["project"],
443
+ location=test_aspect_type_basic["location"],
444
+ aspect_type_id=test_aspect_type_basic["aspectTypeId"],
445
+ role="roles/viewer",
446
+ member="user:jane@example.com")
447
+ ```
448
+
449
+ ## Import
450
+
451
+ For all import syntaxes, the "resource in question" can take any of the following forms:
452
+
453
+ * projects/{{project}}/locations/{{location}}/aspectTypes/{{aspect_type_id}}
454
+
455
+ * {{project}}/{{location}}/{{aspect_type_id}}
456
+
457
+ * {{location}}/{{aspect_type_id}}
458
+
459
+ * {{aspect_type_id}}
460
+
461
+ Any variables not passed in the import command will be taken from the provider configuration.
462
+
463
+ Dataplex aspecttype IAM resources can be imported using the resource identifiers, role, and member.
464
+
465
+ IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
466
+
467
+ ```sh
468
+ $ pulumi import gcp:dataplex/aspectTypeIamPolicy:AspectTypeIamPolicy editor "projects/{{project}}/locations/{{location}}/aspectTypes/{{aspect_type_id}} roles/viewer user:jane@example.com"
469
+ ```
470
+
471
+ IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
472
+
473
+ ```sh
474
+ $ pulumi import gcp:dataplex/aspectTypeIamPolicy:AspectTypeIamPolicy editor "projects/{{project}}/locations/{{location}}/aspectTypes/{{aspect_type_id}} roles/viewer"
475
+ ```
476
+
477
+ IAM policy imports use the identifier of the resource in question, e.g.
478
+
479
+ ```sh
480
+ $ pulumi import gcp:dataplex/aspectTypeIamPolicy:AspectTypeIamPolicy editor projects/{{project}}/locations/{{location}}/aspectTypes/{{aspect_type_id}}
481
+ ```
482
+
483
+ -> **Custom Roles**: If you're importing a IAM resource with a custom role, make sure to use the
484
+
485
+ full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
486
+
487
+ :param str resource_name: The name of the resource.
488
+ :param AspectTypeIamPolicyArgs args: The arguments to use to populate this resource's properties.
489
+ :param pulumi.ResourceOptions opts: Options for the resource.
490
+ """
491
+ ...
492
+ def __init__(__self__, resource_name: str, *args, **kwargs):
493
+ resource_args, opts = _utilities.get_resource_args_opts(AspectTypeIamPolicyArgs, pulumi.ResourceOptions, *args, **kwargs)
494
+ if resource_args is not None:
495
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
496
+ else:
497
+ __self__._internal_init(resource_name, *args, **kwargs)
498
+
499
+ def _internal_init(__self__,
500
+ resource_name: str,
501
+ opts: Optional[pulumi.ResourceOptions] = None,
502
+ aspect_type_id: Optional[pulumi.Input[str]] = None,
503
+ location: Optional[pulumi.Input[str]] = None,
504
+ policy_data: Optional[pulumi.Input[str]] = None,
505
+ project: Optional[pulumi.Input[str]] = None,
506
+ __props__=None):
507
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
508
+ if not isinstance(opts, pulumi.ResourceOptions):
509
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
510
+ if opts.id is None:
511
+ if __props__ is not None:
512
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
513
+ __props__ = AspectTypeIamPolicyArgs.__new__(AspectTypeIamPolicyArgs)
514
+
515
+ if aspect_type_id is None and not opts.urn:
516
+ raise TypeError("Missing required property 'aspect_type_id'")
517
+ __props__.__dict__["aspect_type_id"] = aspect_type_id
518
+ __props__.__dict__["location"] = location
519
+ if policy_data is None and not opts.urn:
520
+ raise TypeError("Missing required property 'policy_data'")
521
+ __props__.__dict__["policy_data"] = policy_data
522
+ __props__.__dict__["project"] = project
523
+ __props__.__dict__["etag"] = None
524
+ super(AspectTypeIamPolicy, __self__).__init__(
525
+ 'gcp:dataplex/aspectTypeIamPolicy:AspectTypeIamPolicy',
526
+ resource_name,
527
+ __props__,
528
+ opts)
529
+
530
+ @staticmethod
531
+ def get(resource_name: str,
532
+ id: pulumi.Input[str],
533
+ opts: Optional[pulumi.ResourceOptions] = None,
534
+ aspect_type_id: Optional[pulumi.Input[str]] = None,
535
+ etag: Optional[pulumi.Input[str]] = None,
536
+ location: Optional[pulumi.Input[str]] = None,
537
+ policy_data: Optional[pulumi.Input[str]] = None,
538
+ project: Optional[pulumi.Input[str]] = None) -> 'AspectTypeIamPolicy':
539
+ """
540
+ Get an existing AspectTypeIamPolicy resource's state with the given name, id, and optional extra
541
+ properties used to qualify the lookup.
542
+
543
+ :param str resource_name: The unique name of the resulting resource.
544
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
545
+ :param pulumi.ResourceOptions opts: Options for the resource.
546
+ :param pulumi.Input[str] etag: (Computed) The etag of the IAM policy.
547
+ :param pulumi.Input[str] location: The location where aspect type will be created in.
548
+ Used to find the parent resource to bind the IAM policy to
549
+ :param pulumi.Input[str] policy_data: The policy data generated by
550
+ a `organizations_get_iam_policy` data source.
551
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
552
+ 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.
553
+ """
554
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
555
+
556
+ __props__ = _AspectTypeIamPolicyState.__new__(_AspectTypeIamPolicyState)
557
+
558
+ __props__.__dict__["aspect_type_id"] = aspect_type_id
559
+ __props__.__dict__["etag"] = etag
560
+ __props__.__dict__["location"] = location
561
+ __props__.__dict__["policy_data"] = policy_data
562
+ __props__.__dict__["project"] = project
563
+ return AspectTypeIamPolicy(resource_name, opts=opts, __props__=__props__)
564
+
565
+ @property
566
+ @pulumi.getter(name="aspectTypeId")
567
+ def aspect_type_id(self) -> pulumi.Output[str]:
568
+ return pulumi.get(self, "aspect_type_id")
569
+
570
+ @property
571
+ @pulumi.getter
572
+ def etag(self) -> pulumi.Output[str]:
573
+ """
574
+ (Computed) The etag of the IAM policy.
575
+ """
576
+ return pulumi.get(self, "etag")
577
+
578
+ @property
579
+ @pulumi.getter
580
+ def location(self) -> pulumi.Output[str]:
581
+ """
582
+ The location where aspect type will be created in.
583
+ Used to find the parent resource to bind the IAM policy to
584
+ """
585
+ return pulumi.get(self, "location")
586
+
587
+ @property
588
+ @pulumi.getter(name="policyData")
589
+ def policy_data(self) -> pulumi.Output[str]:
590
+ """
591
+ The policy data generated by
592
+ a `organizations_get_iam_policy` data source.
593
+ """
594
+ return pulumi.get(self, "policy_data")
595
+
596
+ @property
597
+ @pulumi.getter
598
+ def project(self) -> pulumi.Output[str]:
599
+ """
600
+ The ID of the project in which the resource belongs.
601
+ 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.
602
+ """
603
+ return pulumi.get(self, "project")
604
+
@@ -559,7 +559,8 @@ class Asset(pulumi.CustomResource):
559
559
  "env": "foo",
560
560
  "my-asset": "exists",
561
561
  },
562
- project="my-project-name")
562
+ project="my-project-name",
563
+ opts=pulumi.ResourceOptions(depends_on=[basic_bucket]))
563
564
  ```
564
565
 
565
566
  ## Import
@@ -654,7 +655,8 @@ class Asset(pulumi.CustomResource):
654
655
  "env": "foo",
655
656
  "my-asset": "exists",
656
657
  },
657
- project="my-project-name")
658
+ project="my-project-name",
659
+ opts=pulumi.ResourceOptions(depends_on=[basic_bucket]))
658
660
  ```
659
661
 
660
662
  ## Import