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
@@ -73,6 +73,12 @@ __all__ = [
73
73
  'HttpRouteRuleMatchHeader',
74
74
  'HttpRouteRuleMatchHeaderRangeMatch',
75
75
  'HttpRouteRuleMatchQueryParameter',
76
+ 'LbRouteExtensionExtensionChain',
77
+ 'LbRouteExtensionExtensionChainExtension',
78
+ 'LbRouteExtensionExtensionChainMatchCondition',
79
+ 'LbTrafficExtensionExtensionChain',
80
+ 'LbTrafficExtensionExtensionChainExtension',
81
+ 'LbTrafficExtensionExtensionChainMatchCondition',
76
82
  'TcpRouteRule',
77
83
  'TcpRouteRuleAction',
78
84
  'TcpRouteRuleActionDestination',
@@ -4497,6 +4503,478 @@ class HttpRouteRuleMatchQueryParameter(dict):
4497
4503
  return pulumi.get(self, "regex_match")
4498
4504
 
4499
4505
 
4506
+ @pulumi.output_type
4507
+ class LbRouteExtensionExtensionChain(dict):
4508
+ @staticmethod
4509
+ def __key_warning(key: str):
4510
+ suggest = None
4511
+ if key == "matchCondition":
4512
+ suggest = "match_condition"
4513
+
4514
+ if suggest:
4515
+ pulumi.log.warn(f"Key '{key}' not found in LbRouteExtensionExtensionChain. Access the value via the '{suggest}' property getter instead.")
4516
+
4517
+ def __getitem__(self, key: str) -> Any:
4518
+ LbRouteExtensionExtensionChain.__key_warning(key)
4519
+ return super().__getitem__(key)
4520
+
4521
+ def get(self, key: str, default = None) -> Any:
4522
+ LbRouteExtensionExtensionChain.__key_warning(key)
4523
+ return super().get(key, default)
4524
+
4525
+ def __init__(__self__, *,
4526
+ extensions: Sequence['outputs.LbRouteExtensionExtensionChainExtension'],
4527
+ match_condition: 'outputs.LbRouteExtensionExtensionChainMatchCondition',
4528
+ name: str):
4529
+ """
4530
+ :param Sequence['LbRouteExtensionExtensionChainExtensionArgs'] extensions: A set of extensions to execute for the matching request.
4531
+ At least one extension is required. Up to 3 extensions can be defined for each extension chain for
4532
+ LbTrafficExtension resource. LbRouteExtension chains are limited to 1 extension per extension chain.
4533
+ Structure is documented below.
4534
+ :param 'LbRouteExtensionExtensionChainMatchConditionArgs' match_condition: Conditions under which this chain is invoked for a request.
4535
+ Structure is documented below.
4536
+ :param str name: The name for this extension chain. The name is logged as part of the HTTP request logs.
4537
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4538
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4539
+ and the last character must be a letter or a number.
4540
+ """
4541
+ pulumi.set(__self__, "extensions", extensions)
4542
+ pulumi.set(__self__, "match_condition", match_condition)
4543
+ pulumi.set(__self__, "name", name)
4544
+
4545
+ @property
4546
+ @pulumi.getter
4547
+ def extensions(self) -> Sequence['outputs.LbRouteExtensionExtensionChainExtension']:
4548
+ """
4549
+ A set of extensions to execute for the matching request.
4550
+ At least one extension is required. Up to 3 extensions can be defined for each extension chain for
4551
+ LbTrafficExtension resource. LbRouteExtension chains are limited to 1 extension per extension chain.
4552
+ Structure is documented below.
4553
+ """
4554
+ return pulumi.get(self, "extensions")
4555
+
4556
+ @property
4557
+ @pulumi.getter(name="matchCondition")
4558
+ def match_condition(self) -> 'outputs.LbRouteExtensionExtensionChainMatchCondition':
4559
+ """
4560
+ Conditions under which this chain is invoked for a request.
4561
+ Structure is documented below.
4562
+ """
4563
+ return pulumi.get(self, "match_condition")
4564
+
4565
+ @property
4566
+ @pulumi.getter
4567
+ def name(self) -> str:
4568
+ """
4569
+ The name for this extension chain. The name is logged as part of the HTTP request logs.
4570
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4571
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4572
+ and the last character must be a letter or a number.
4573
+ """
4574
+ return pulumi.get(self, "name")
4575
+
4576
+
4577
+ @pulumi.output_type
4578
+ class LbRouteExtensionExtensionChainExtension(dict):
4579
+ @staticmethod
4580
+ def __key_warning(key: str):
4581
+ suggest = None
4582
+ if key == "failOpen":
4583
+ suggest = "fail_open"
4584
+ elif key == "forwardHeaders":
4585
+ suggest = "forward_headers"
4586
+
4587
+ if suggest:
4588
+ pulumi.log.warn(f"Key '{key}' not found in LbRouteExtensionExtensionChainExtension. Access the value via the '{suggest}' property getter instead.")
4589
+
4590
+ def __getitem__(self, key: str) -> Any:
4591
+ LbRouteExtensionExtensionChainExtension.__key_warning(key)
4592
+ return super().__getitem__(key)
4593
+
4594
+ def get(self, key: str, default = None) -> Any:
4595
+ LbRouteExtensionExtensionChainExtension.__key_warning(key)
4596
+ return super().get(key, default)
4597
+
4598
+ def __init__(__self__, *,
4599
+ name: str,
4600
+ service: str,
4601
+ authority: Optional[str] = None,
4602
+ fail_open: Optional[bool] = None,
4603
+ forward_headers: Optional[Sequence[str]] = None,
4604
+ timeout: Optional[str] = None):
4605
+ """
4606
+ :param str name: The name for this extension. The name is logged as part of the HTTP request logs.
4607
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4608
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4609
+ and the last a letter or a number.
4610
+ :param str service: The reference to the service that runs the extension. Must be a reference to a backend service
4611
+ :param str authority: The :authority header in the gRPC request sent from Envoy to the extension service.
4612
+ :param bool fail_open: Determines how the proxy behaves if the call to the extension fails or times out.
4613
+ When set to TRUE, request or response processing continues without error.
4614
+ Any subsequent extensions in the extension chain are also executed.
4615
+ When set to FALSE: * If response headers have not been delivered to the downstream client,
4616
+ a generic 500 error is returned to the client. The error response can be tailored by
4617
+ configuring a custom error response in the load balancer.
4618
+ :param Sequence[str] forward_headers: List of the HTTP headers to forward to the extension (from the client or backend).
4619
+ If omitted, all headers are sent. Each element is a string indicating the header name.
4620
+
4621
+ - - -
4622
+ :param str timeout: Specifies the timeout for each individual message on the stream. The timeout must be between 10-1000 milliseconds.
4623
+ A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
4624
+ """
4625
+ pulumi.set(__self__, "name", name)
4626
+ pulumi.set(__self__, "service", service)
4627
+ if authority is not None:
4628
+ pulumi.set(__self__, "authority", authority)
4629
+ if fail_open is not None:
4630
+ pulumi.set(__self__, "fail_open", fail_open)
4631
+ if forward_headers is not None:
4632
+ pulumi.set(__self__, "forward_headers", forward_headers)
4633
+ if timeout is not None:
4634
+ pulumi.set(__self__, "timeout", timeout)
4635
+
4636
+ @property
4637
+ @pulumi.getter
4638
+ def name(self) -> str:
4639
+ """
4640
+ The name for this extension. The name is logged as part of the HTTP request logs.
4641
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4642
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4643
+ and the last a letter or a number.
4644
+ """
4645
+ return pulumi.get(self, "name")
4646
+
4647
+ @property
4648
+ @pulumi.getter
4649
+ def service(self) -> str:
4650
+ """
4651
+ The reference to the service that runs the extension. Must be a reference to a backend service
4652
+ """
4653
+ return pulumi.get(self, "service")
4654
+
4655
+ @property
4656
+ @pulumi.getter
4657
+ def authority(self) -> Optional[str]:
4658
+ """
4659
+ The :authority header in the gRPC request sent from Envoy to the extension service.
4660
+ """
4661
+ return pulumi.get(self, "authority")
4662
+
4663
+ @property
4664
+ @pulumi.getter(name="failOpen")
4665
+ def fail_open(self) -> Optional[bool]:
4666
+ """
4667
+ Determines how the proxy behaves if the call to the extension fails or times out.
4668
+ When set to TRUE, request or response processing continues without error.
4669
+ Any subsequent extensions in the extension chain are also executed.
4670
+ When set to FALSE: * If response headers have not been delivered to the downstream client,
4671
+ a generic 500 error is returned to the client. The error response can be tailored by
4672
+ configuring a custom error response in the load balancer.
4673
+ """
4674
+ return pulumi.get(self, "fail_open")
4675
+
4676
+ @property
4677
+ @pulumi.getter(name="forwardHeaders")
4678
+ def forward_headers(self) -> Optional[Sequence[str]]:
4679
+ """
4680
+ List of the HTTP headers to forward to the extension (from the client or backend).
4681
+ If omitted, all headers are sent. Each element is a string indicating the header name.
4682
+
4683
+ - - -
4684
+ """
4685
+ return pulumi.get(self, "forward_headers")
4686
+
4687
+ @property
4688
+ @pulumi.getter
4689
+ def timeout(self) -> Optional[str]:
4690
+ """
4691
+ Specifies the timeout for each individual message on the stream. The timeout must be between 10-1000 milliseconds.
4692
+ A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
4693
+ """
4694
+ return pulumi.get(self, "timeout")
4695
+
4696
+
4697
+ @pulumi.output_type
4698
+ class LbRouteExtensionExtensionChainMatchCondition(dict):
4699
+ @staticmethod
4700
+ def __key_warning(key: str):
4701
+ suggest = None
4702
+ if key == "celExpression":
4703
+ suggest = "cel_expression"
4704
+
4705
+ if suggest:
4706
+ pulumi.log.warn(f"Key '{key}' not found in LbRouteExtensionExtensionChainMatchCondition. Access the value via the '{suggest}' property getter instead.")
4707
+
4708
+ def __getitem__(self, key: str) -> Any:
4709
+ LbRouteExtensionExtensionChainMatchCondition.__key_warning(key)
4710
+ return super().__getitem__(key)
4711
+
4712
+ def get(self, key: str, default = None) -> Any:
4713
+ LbRouteExtensionExtensionChainMatchCondition.__key_warning(key)
4714
+ return super().get(key, default)
4715
+
4716
+ def __init__(__self__, *,
4717
+ cel_expression: str):
4718
+ """
4719
+ :param str cel_expression: A Common Expression Language (CEL) expression that is used to match requests for which the extension chain is executed.
4720
+ """
4721
+ pulumi.set(__self__, "cel_expression", cel_expression)
4722
+
4723
+ @property
4724
+ @pulumi.getter(name="celExpression")
4725
+ def cel_expression(self) -> str:
4726
+ """
4727
+ A Common Expression Language (CEL) expression that is used to match requests for which the extension chain is executed.
4728
+ """
4729
+ return pulumi.get(self, "cel_expression")
4730
+
4731
+
4732
+ @pulumi.output_type
4733
+ class LbTrafficExtensionExtensionChain(dict):
4734
+ @staticmethod
4735
+ def __key_warning(key: str):
4736
+ suggest = None
4737
+ if key == "matchCondition":
4738
+ suggest = "match_condition"
4739
+
4740
+ if suggest:
4741
+ pulumi.log.warn(f"Key '{key}' not found in LbTrafficExtensionExtensionChain. Access the value via the '{suggest}' property getter instead.")
4742
+
4743
+ def __getitem__(self, key: str) -> Any:
4744
+ LbTrafficExtensionExtensionChain.__key_warning(key)
4745
+ return super().__getitem__(key)
4746
+
4747
+ def get(self, key: str, default = None) -> Any:
4748
+ LbTrafficExtensionExtensionChain.__key_warning(key)
4749
+ return super().get(key, default)
4750
+
4751
+ def __init__(__self__, *,
4752
+ extensions: Sequence['outputs.LbTrafficExtensionExtensionChainExtension'],
4753
+ match_condition: 'outputs.LbTrafficExtensionExtensionChainMatchCondition',
4754
+ name: str):
4755
+ """
4756
+ :param Sequence['LbTrafficExtensionExtensionChainExtensionArgs'] extensions: A set of extensions to execute for the matching request.
4757
+ At least one extension is required. Up to 3 extensions can be defined for each extension chain for
4758
+ LbTrafficExtension resource. LbRouteExtension chains are limited to 1 extension per extension chain.
4759
+ Structure is documented below.
4760
+ :param 'LbTrafficExtensionExtensionChainMatchConditionArgs' match_condition: Conditions under which this chain is invoked for a request.
4761
+ Structure is documented below.
4762
+ :param str name: The name for this extension chain. The name is logged as part of the HTTP request logs.
4763
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4764
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4765
+ and the last a letter or a number.
4766
+ """
4767
+ pulumi.set(__self__, "extensions", extensions)
4768
+ pulumi.set(__self__, "match_condition", match_condition)
4769
+ pulumi.set(__self__, "name", name)
4770
+
4771
+ @property
4772
+ @pulumi.getter
4773
+ def extensions(self) -> Sequence['outputs.LbTrafficExtensionExtensionChainExtension']:
4774
+ """
4775
+ A set of extensions to execute for the matching request.
4776
+ At least one extension is required. Up to 3 extensions can be defined for each extension chain for
4777
+ LbTrafficExtension resource. LbRouteExtension chains are limited to 1 extension per extension chain.
4778
+ Structure is documented below.
4779
+ """
4780
+ return pulumi.get(self, "extensions")
4781
+
4782
+ @property
4783
+ @pulumi.getter(name="matchCondition")
4784
+ def match_condition(self) -> 'outputs.LbTrafficExtensionExtensionChainMatchCondition':
4785
+ """
4786
+ Conditions under which this chain is invoked for a request.
4787
+ Structure is documented below.
4788
+ """
4789
+ return pulumi.get(self, "match_condition")
4790
+
4791
+ @property
4792
+ @pulumi.getter
4793
+ def name(self) -> str:
4794
+ """
4795
+ The name for this extension chain. The name is logged as part of the HTTP request logs.
4796
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4797
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4798
+ and the last a letter or a number.
4799
+ """
4800
+ return pulumi.get(self, "name")
4801
+
4802
+
4803
+ @pulumi.output_type
4804
+ class LbTrafficExtensionExtensionChainExtension(dict):
4805
+ @staticmethod
4806
+ def __key_warning(key: str):
4807
+ suggest = None
4808
+ if key == "failOpen":
4809
+ suggest = "fail_open"
4810
+ elif key == "forwardHeaders":
4811
+ suggest = "forward_headers"
4812
+ elif key == "supportedEvents":
4813
+ suggest = "supported_events"
4814
+
4815
+ if suggest:
4816
+ pulumi.log.warn(f"Key '{key}' not found in LbTrafficExtensionExtensionChainExtension. Access the value via the '{suggest}' property getter instead.")
4817
+
4818
+ def __getitem__(self, key: str) -> Any:
4819
+ LbTrafficExtensionExtensionChainExtension.__key_warning(key)
4820
+ return super().__getitem__(key)
4821
+
4822
+ def get(self, key: str, default = None) -> Any:
4823
+ LbTrafficExtensionExtensionChainExtension.__key_warning(key)
4824
+ return super().get(key, default)
4825
+
4826
+ def __init__(__self__, *,
4827
+ name: str,
4828
+ service: str,
4829
+ authority: Optional[str] = None,
4830
+ fail_open: Optional[bool] = None,
4831
+ forward_headers: Optional[Sequence[str]] = None,
4832
+ supported_events: Optional[Sequence[str]] = None,
4833
+ timeout: Optional[str] = None):
4834
+ """
4835
+ :param str name: The name for this extension. The name is logged as part of the HTTP request logs.
4836
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4837
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4838
+ and the last a letter or a number.
4839
+ :param str service: The reference to the service that runs the extension. Must be a reference to a backend service
4840
+ :param str authority: The :authority header in the gRPC request sent from Envoy to the extension service.
4841
+ :param bool fail_open: Determines how the proxy behaves if the call to the extension fails or times out.
4842
+ When set to TRUE, request or response processing continues without error.
4843
+ Any subsequent extensions in the extension chain are also executed.
4844
+ When set to FALSE: * If response headers have not been delivered to the downstream client,
4845
+ a generic 500 error is returned to the client. The error response can be tailored by
4846
+ configuring a custom error response in the load balancer.
4847
+ :param Sequence[str] forward_headers: List of the HTTP headers to forward to the extension (from the client or backend).
4848
+ If omitted, all headers are sent. Each element is a string indicating the header name.
4849
+ :param Sequence[str] supported_events: A set of events during request or response processing for which this extension is called.
4850
+ This field is required for the LbTrafficExtension resource. It's not relevant for the LbRouteExtension
4851
+ resource. Possible values:`EVENT_TYPE_UNSPECIFIED`, `REQUEST_HEADERS`, `REQUEST_BODY`, `RESPONSE_HEADERS`,
4852
+ `RESPONSE_BODY`, `RESPONSE_BODY` and `RESPONSE_BODY`.
4853
+
4854
+ - - -
4855
+ :param str timeout: Specifies the timeout for each individual message on the stream. The timeout must be between 10-1000 milliseconds.
4856
+ A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
4857
+ """
4858
+ pulumi.set(__self__, "name", name)
4859
+ pulumi.set(__self__, "service", service)
4860
+ if authority is not None:
4861
+ pulumi.set(__self__, "authority", authority)
4862
+ if fail_open is not None:
4863
+ pulumi.set(__self__, "fail_open", fail_open)
4864
+ if forward_headers is not None:
4865
+ pulumi.set(__self__, "forward_headers", forward_headers)
4866
+ if supported_events is not None:
4867
+ pulumi.set(__self__, "supported_events", supported_events)
4868
+ if timeout is not None:
4869
+ pulumi.set(__self__, "timeout", timeout)
4870
+
4871
+ @property
4872
+ @pulumi.getter
4873
+ def name(self) -> str:
4874
+ """
4875
+ The name for this extension. The name is logged as part of the HTTP request logs.
4876
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4877
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4878
+ and the last a letter or a number.
4879
+ """
4880
+ return pulumi.get(self, "name")
4881
+
4882
+ @property
4883
+ @pulumi.getter
4884
+ def service(self) -> str:
4885
+ """
4886
+ The reference to the service that runs the extension. Must be a reference to a backend service
4887
+ """
4888
+ return pulumi.get(self, "service")
4889
+
4890
+ @property
4891
+ @pulumi.getter
4892
+ def authority(self) -> Optional[str]:
4893
+ """
4894
+ The :authority header in the gRPC request sent from Envoy to the extension service.
4895
+ """
4896
+ return pulumi.get(self, "authority")
4897
+
4898
+ @property
4899
+ @pulumi.getter(name="failOpen")
4900
+ def fail_open(self) -> Optional[bool]:
4901
+ """
4902
+ Determines how the proxy behaves if the call to the extension fails or times out.
4903
+ When set to TRUE, request or response processing continues without error.
4904
+ Any subsequent extensions in the extension chain are also executed.
4905
+ When set to FALSE: * If response headers have not been delivered to the downstream client,
4906
+ a generic 500 error is returned to the client. The error response can be tailored by
4907
+ configuring a custom error response in the load balancer.
4908
+ """
4909
+ return pulumi.get(self, "fail_open")
4910
+
4911
+ @property
4912
+ @pulumi.getter(name="forwardHeaders")
4913
+ def forward_headers(self) -> Optional[Sequence[str]]:
4914
+ """
4915
+ List of the HTTP headers to forward to the extension (from the client or backend).
4916
+ If omitted, all headers are sent. Each element is a string indicating the header name.
4917
+ """
4918
+ return pulumi.get(self, "forward_headers")
4919
+
4920
+ @property
4921
+ @pulumi.getter(name="supportedEvents")
4922
+ def supported_events(self) -> Optional[Sequence[str]]:
4923
+ """
4924
+ A set of events during request or response processing for which this extension is called.
4925
+ This field is required for the LbTrafficExtension resource. It's not relevant for the LbRouteExtension
4926
+ resource. Possible values:`EVENT_TYPE_UNSPECIFIED`, `REQUEST_HEADERS`, `REQUEST_BODY`, `RESPONSE_HEADERS`,
4927
+ `RESPONSE_BODY`, `RESPONSE_BODY` and `RESPONSE_BODY`.
4928
+
4929
+ - - -
4930
+ """
4931
+ return pulumi.get(self, "supported_events")
4932
+
4933
+ @property
4934
+ @pulumi.getter
4935
+ def timeout(self) -> Optional[str]:
4936
+ """
4937
+ Specifies the timeout for each individual message on the stream. The timeout must be between 10-1000 milliseconds.
4938
+ A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
4939
+ """
4940
+ return pulumi.get(self, "timeout")
4941
+
4942
+
4943
+ @pulumi.output_type
4944
+ class LbTrafficExtensionExtensionChainMatchCondition(dict):
4945
+ @staticmethod
4946
+ def __key_warning(key: str):
4947
+ suggest = None
4948
+ if key == "celExpression":
4949
+ suggest = "cel_expression"
4950
+
4951
+ if suggest:
4952
+ pulumi.log.warn(f"Key '{key}' not found in LbTrafficExtensionExtensionChainMatchCondition. Access the value via the '{suggest}' property getter instead.")
4953
+
4954
+ def __getitem__(self, key: str) -> Any:
4955
+ LbTrafficExtensionExtensionChainMatchCondition.__key_warning(key)
4956
+ return super().__getitem__(key)
4957
+
4958
+ def get(self, key: str, default = None) -> Any:
4959
+ LbTrafficExtensionExtensionChainMatchCondition.__key_warning(key)
4960
+ return super().get(key, default)
4961
+
4962
+ def __init__(__self__, *,
4963
+ cel_expression: str):
4964
+ """
4965
+ :param str cel_expression: A Common Expression Language (CEL) expression that is used to match requests for which the extension chain is executed.
4966
+ """
4967
+ pulumi.set(__self__, "cel_expression", cel_expression)
4968
+
4969
+ @property
4970
+ @pulumi.getter(name="celExpression")
4971
+ def cel_expression(self) -> str:
4972
+ """
4973
+ A Common Expression Language (CEL) expression that is used to match requests for which the extension chain is executed.
4974
+ """
4975
+ return pulumi.get(self, "cel_expression")
4976
+
4977
+
4500
4978
  @pulumi.output_type
4501
4979
  class TcpRouteRule(dict):
4502
4980
  def __init__(__self__, *,
@@ -305,7 +305,7 @@ class InstanceIamBinding(pulumi.CustomResource):
305
305
 
306
306
  > **Note:** `notebooks.InstanceIamBinding` resources **can be** used in conjunction with `notebooks.InstanceIamMember` resources **only if** they do not grant privilege to the same role.
307
307
 
308
- ## google\\_notebooks\\_instance\\_iam\\_policy
308
+ ## notebooks.InstanceIamPolicy
309
309
 
310
310
  ```python
311
311
  import pulumi
@@ -322,7 +322,7 @@ class InstanceIamBinding(pulumi.CustomResource):
322
322
  policy_data=admin.policy_data)
323
323
  ```
324
324
 
325
- ## google\\_notebooks\\_instance\\_iam\\_binding
325
+ ## notebooks.InstanceIamBinding
326
326
 
327
327
  ```python
328
328
  import pulumi
@@ -336,7 +336,7 @@ class InstanceIamBinding(pulumi.CustomResource):
336
336
  members=["user:jane@example.com"])
337
337
  ```
338
338
 
339
- ## google\\_notebooks\\_instance\\_iam\\_member
339
+ ## notebooks.InstanceIamMember
340
340
 
341
341
  ```python
342
342
  import pulumi
@@ -350,7 +350,7 @@ class InstanceIamBinding(pulumi.CustomResource):
350
350
  member="user:jane@example.com")
351
351
  ```
352
352
 
353
- ## google\\_notebooks\\_instance\\_iam\\_policy
353
+ ## notebooks.InstanceIamPolicy
354
354
 
355
355
  ```python
356
356
  import pulumi
@@ -367,7 +367,7 @@ class InstanceIamBinding(pulumi.CustomResource):
367
367
  policy_data=admin.policy_data)
368
368
  ```
369
369
 
370
- ## google\\_notebooks\\_instance\\_iam\\_binding
370
+ ## notebooks.InstanceIamBinding
371
371
 
372
372
  ```python
373
373
  import pulumi
@@ -381,7 +381,7 @@ class InstanceIamBinding(pulumi.CustomResource):
381
381
  members=["user:jane@example.com"])
382
382
  ```
383
383
 
384
- ## google\\_notebooks\\_instance\\_iam\\_member
384
+ ## notebooks.InstanceIamMember
385
385
 
386
386
  ```python
387
387
  import pulumi
@@ -475,7 +475,7 @@ class InstanceIamBinding(pulumi.CustomResource):
475
475
 
476
476
  > **Note:** `notebooks.InstanceIamBinding` resources **can be** used in conjunction with `notebooks.InstanceIamMember` resources **only if** they do not grant privilege to the same role.
477
477
 
478
- ## google\\_notebooks\\_instance\\_iam\\_policy
478
+ ## notebooks.InstanceIamPolicy
479
479
 
480
480
  ```python
481
481
  import pulumi
@@ -492,7 +492,7 @@ class InstanceIamBinding(pulumi.CustomResource):
492
492
  policy_data=admin.policy_data)
493
493
  ```
494
494
 
495
- ## google\\_notebooks\\_instance\\_iam\\_binding
495
+ ## notebooks.InstanceIamBinding
496
496
 
497
497
  ```python
498
498
  import pulumi
@@ -506,7 +506,7 @@ class InstanceIamBinding(pulumi.CustomResource):
506
506
  members=["user:jane@example.com"])
507
507
  ```
508
508
 
509
- ## google\\_notebooks\\_instance\\_iam\\_member
509
+ ## notebooks.InstanceIamMember
510
510
 
511
511
  ```python
512
512
  import pulumi
@@ -520,7 +520,7 @@ class InstanceIamBinding(pulumi.CustomResource):
520
520
  member="user:jane@example.com")
521
521
  ```
522
522
 
523
- ## google\\_notebooks\\_instance\\_iam\\_policy
523
+ ## notebooks.InstanceIamPolicy
524
524
 
525
525
  ```python
526
526
  import pulumi
@@ -537,7 +537,7 @@ class InstanceIamBinding(pulumi.CustomResource):
537
537
  policy_data=admin.policy_data)
538
538
  ```
539
539
 
540
- ## google\\_notebooks\\_instance\\_iam\\_binding
540
+ ## notebooks.InstanceIamBinding
541
541
 
542
542
  ```python
543
543
  import pulumi
@@ -551,7 +551,7 @@ class InstanceIamBinding(pulumi.CustomResource):
551
551
  members=["user:jane@example.com"])
552
552
  ```
553
553
 
554
- ## google\\_notebooks\\_instance\\_iam\\_member
554
+ ## notebooks.InstanceIamMember
555
555
 
556
556
  ```python
557
557
  import pulumi