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
@@ -12,6 +12,8 @@ from .endpoint_policy import *
12
12
  from .gateway import *
13
13
  from .grpc_route import *
14
14
  from .http_route import *
15
+ from .lb_route_extension import *
16
+ from .lb_traffic_extension import *
15
17
  from .mesh import *
16
18
  from .service_binding import *
17
19
  from .tcp_route import *
@@ -72,6 +72,12 @@ __all__ = [
72
72
  'HttpRouteRuleMatchHeaderArgs',
73
73
  'HttpRouteRuleMatchHeaderRangeMatchArgs',
74
74
  'HttpRouteRuleMatchQueryParameterArgs',
75
+ 'LbRouteExtensionExtensionChainArgs',
76
+ 'LbRouteExtensionExtensionChainExtensionArgs',
77
+ 'LbRouteExtensionExtensionChainMatchConditionArgs',
78
+ 'LbTrafficExtensionExtensionChainArgs',
79
+ 'LbTrafficExtensionExtensionChainExtensionArgs',
80
+ 'LbTrafficExtensionExtensionChainMatchConditionArgs',
75
81
  'TcpRouteRuleArgs',
76
82
  'TcpRouteRuleActionArgs',
77
83
  'TcpRouteRuleActionDestinationArgs',
@@ -4272,6 +4278,454 @@ class HttpRouteRuleMatchQueryParameterArgs:
4272
4278
  pulumi.set(self, "regex_match", value)
4273
4279
 
4274
4280
 
4281
+ @pulumi.input_type
4282
+ class LbRouteExtensionExtensionChainArgs:
4283
+ def __init__(__self__, *,
4284
+ extensions: pulumi.Input[Sequence[pulumi.Input['LbRouteExtensionExtensionChainExtensionArgs']]],
4285
+ match_condition: pulumi.Input['LbRouteExtensionExtensionChainMatchConditionArgs'],
4286
+ name: pulumi.Input[str]):
4287
+ """
4288
+ :param pulumi.Input[Sequence[pulumi.Input['LbRouteExtensionExtensionChainExtensionArgs']]] extensions: A set of extensions to execute for the matching request.
4289
+ At least one extension is required. Up to 3 extensions can be defined for each extension chain for
4290
+ LbTrafficExtension resource. LbRouteExtension chains are limited to 1 extension per extension chain.
4291
+ Structure is documented below.
4292
+ :param pulumi.Input['LbRouteExtensionExtensionChainMatchConditionArgs'] match_condition: Conditions under which this chain is invoked for a request.
4293
+ Structure is documented below.
4294
+ :param pulumi.Input[str] name: The name for this extension chain. The name is logged as part of the HTTP request logs.
4295
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4296
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4297
+ and the last character must be a letter or a number.
4298
+ """
4299
+ pulumi.set(__self__, "extensions", extensions)
4300
+ pulumi.set(__self__, "match_condition", match_condition)
4301
+ pulumi.set(__self__, "name", name)
4302
+
4303
+ @property
4304
+ @pulumi.getter
4305
+ def extensions(self) -> pulumi.Input[Sequence[pulumi.Input['LbRouteExtensionExtensionChainExtensionArgs']]]:
4306
+ """
4307
+ A set of extensions to execute for the matching request.
4308
+ At least one extension is required. Up to 3 extensions can be defined for each extension chain for
4309
+ LbTrafficExtension resource. LbRouteExtension chains are limited to 1 extension per extension chain.
4310
+ Structure is documented below.
4311
+ """
4312
+ return pulumi.get(self, "extensions")
4313
+
4314
+ @extensions.setter
4315
+ def extensions(self, value: pulumi.Input[Sequence[pulumi.Input['LbRouteExtensionExtensionChainExtensionArgs']]]):
4316
+ pulumi.set(self, "extensions", value)
4317
+
4318
+ @property
4319
+ @pulumi.getter(name="matchCondition")
4320
+ def match_condition(self) -> pulumi.Input['LbRouteExtensionExtensionChainMatchConditionArgs']:
4321
+ """
4322
+ Conditions under which this chain is invoked for a request.
4323
+ Structure is documented below.
4324
+ """
4325
+ return pulumi.get(self, "match_condition")
4326
+
4327
+ @match_condition.setter
4328
+ def match_condition(self, value: pulumi.Input['LbRouteExtensionExtensionChainMatchConditionArgs']):
4329
+ pulumi.set(self, "match_condition", value)
4330
+
4331
+ @property
4332
+ @pulumi.getter
4333
+ def name(self) -> pulumi.Input[str]:
4334
+ """
4335
+ The name for this extension chain. The name is logged as part of the HTTP request logs.
4336
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4337
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4338
+ and the last character must be a letter or a number.
4339
+ """
4340
+ return pulumi.get(self, "name")
4341
+
4342
+ @name.setter
4343
+ def name(self, value: pulumi.Input[str]):
4344
+ pulumi.set(self, "name", value)
4345
+
4346
+
4347
+ @pulumi.input_type
4348
+ class LbRouteExtensionExtensionChainExtensionArgs:
4349
+ def __init__(__self__, *,
4350
+ name: pulumi.Input[str],
4351
+ service: pulumi.Input[str],
4352
+ authority: Optional[pulumi.Input[str]] = None,
4353
+ fail_open: Optional[pulumi.Input[bool]] = None,
4354
+ forward_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
4355
+ timeout: Optional[pulumi.Input[str]] = None):
4356
+ """
4357
+ :param pulumi.Input[str] name: The name for this extension. The name is logged as part of the HTTP request logs.
4358
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4359
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4360
+ and the last a letter or a number.
4361
+ :param pulumi.Input[str] service: The reference to the service that runs the extension. Must be a reference to a backend service
4362
+ :param pulumi.Input[str] authority: The :authority header in the gRPC request sent from Envoy to the extension service.
4363
+ :param pulumi.Input[bool] fail_open: Determines how the proxy behaves if the call to the extension fails or times out.
4364
+ When set to TRUE, request or response processing continues without error.
4365
+ Any subsequent extensions in the extension chain are also executed.
4366
+ When set to FALSE: * If response headers have not been delivered to the downstream client,
4367
+ a generic 500 error is returned to the client. The error response can be tailored by
4368
+ configuring a custom error response in the load balancer.
4369
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] forward_headers: List of the HTTP headers to forward to the extension (from the client or backend).
4370
+ If omitted, all headers are sent. Each element is a string indicating the header name.
4371
+
4372
+ - - -
4373
+ :param pulumi.Input[str] timeout: Specifies the timeout for each individual message on the stream. The timeout must be between 10-1000 milliseconds.
4374
+ A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
4375
+ """
4376
+ pulumi.set(__self__, "name", name)
4377
+ pulumi.set(__self__, "service", service)
4378
+ if authority is not None:
4379
+ pulumi.set(__self__, "authority", authority)
4380
+ if fail_open is not None:
4381
+ pulumi.set(__self__, "fail_open", fail_open)
4382
+ if forward_headers is not None:
4383
+ pulumi.set(__self__, "forward_headers", forward_headers)
4384
+ if timeout is not None:
4385
+ pulumi.set(__self__, "timeout", timeout)
4386
+
4387
+ @property
4388
+ @pulumi.getter
4389
+ def name(self) -> pulumi.Input[str]:
4390
+ """
4391
+ The name for this extension. The name is logged as part of the HTTP request logs.
4392
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4393
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4394
+ and the last a letter or a number.
4395
+ """
4396
+ return pulumi.get(self, "name")
4397
+
4398
+ @name.setter
4399
+ def name(self, value: pulumi.Input[str]):
4400
+ pulumi.set(self, "name", value)
4401
+
4402
+ @property
4403
+ @pulumi.getter
4404
+ def service(self) -> pulumi.Input[str]:
4405
+ """
4406
+ The reference to the service that runs the extension. Must be a reference to a backend service
4407
+ """
4408
+ return pulumi.get(self, "service")
4409
+
4410
+ @service.setter
4411
+ def service(self, value: pulumi.Input[str]):
4412
+ pulumi.set(self, "service", value)
4413
+
4414
+ @property
4415
+ @pulumi.getter
4416
+ def authority(self) -> Optional[pulumi.Input[str]]:
4417
+ """
4418
+ The :authority header in the gRPC request sent from Envoy to the extension service.
4419
+ """
4420
+ return pulumi.get(self, "authority")
4421
+
4422
+ @authority.setter
4423
+ def authority(self, value: Optional[pulumi.Input[str]]):
4424
+ pulumi.set(self, "authority", value)
4425
+
4426
+ @property
4427
+ @pulumi.getter(name="failOpen")
4428
+ def fail_open(self) -> Optional[pulumi.Input[bool]]:
4429
+ """
4430
+ Determines how the proxy behaves if the call to the extension fails or times out.
4431
+ When set to TRUE, request or response processing continues without error.
4432
+ Any subsequent extensions in the extension chain are also executed.
4433
+ When set to FALSE: * If response headers have not been delivered to the downstream client,
4434
+ a generic 500 error is returned to the client. The error response can be tailored by
4435
+ configuring a custom error response in the load balancer.
4436
+ """
4437
+ return pulumi.get(self, "fail_open")
4438
+
4439
+ @fail_open.setter
4440
+ def fail_open(self, value: Optional[pulumi.Input[bool]]):
4441
+ pulumi.set(self, "fail_open", value)
4442
+
4443
+ @property
4444
+ @pulumi.getter(name="forwardHeaders")
4445
+ def forward_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
4446
+ """
4447
+ List of the HTTP headers to forward to the extension (from the client or backend).
4448
+ If omitted, all headers are sent. Each element is a string indicating the header name.
4449
+
4450
+ - - -
4451
+ """
4452
+ return pulumi.get(self, "forward_headers")
4453
+
4454
+ @forward_headers.setter
4455
+ def forward_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
4456
+ pulumi.set(self, "forward_headers", value)
4457
+
4458
+ @property
4459
+ @pulumi.getter
4460
+ def timeout(self) -> Optional[pulumi.Input[str]]:
4461
+ """
4462
+ Specifies the timeout for each individual message on the stream. The timeout must be between 10-1000 milliseconds.
4463
+ A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
4464
+ """
4465
+ return pulumi.get(self, "timeout")
4466
+
4467
+ @timeout.setter
4468
+ def timeout(self, value: Optional[pulumi.Input[str]]):
4469
+ pulumi.set(self, "timeout", value)
4470
+
4471
+
4472
+ @pulumi.input_type
4473
+ class LbRouteExtensionExtensionChainMatchConditionArgs:
4474
+ def __init__(__self__, *,
4475
+ cel_expression: pulumi.Input[str]):
4476
+ """
4477
+ :param pulumi.Input[str] cel_expression: A Common Expression Language (CEL) expression that is used to match requests for which the extension chain is executed.
4478
+ """
4479
+ pulumi.set(__self__, "cel_expression", cel_expression)
4480
+
4481
+ @property
4482
+ @pulumi.getter(name="celExpression")
4483
+ def cel_expression(self) -> pulumi.Input[str]:
4484
+ """
4485
+ A Common Expression Language (CEL) expression that is used to match requests for which the extension chain is executed.
4486
+ """
4487
+ return pulumi.get(self, "cel_expression")
4488
+
4489
+ @cel_expression.setter
4490
+ def cel_expression(self, value: pulumi.Input[str]):
4491
+ pulumi.set(self, "cel_expression", value)
4492
+
4493
+
4494
+ @pulumi.input_type
4495
+ class LbTrafficExtensionExtensionChainArgs:
4496
+ def __init__(__self__, *,
4497
+ extensions: pulumi.Input[Sequence[pulumi.Input['LbTrafficExtensionExtensionChainExtensionArgs']]],
4498
+ match_condition: pulumi.Input['LbTrafficExtensionExtensionChainMatchConditionArgs'],
4499
+ name: pulumi.Input[str]):
4500
+ """
4501
+ :param pulumi.Input[Sequence[pulumi.Input['LbTrafficExtensionExtensionChainExtensionArgs']]] extensions: A set of extensions to execute for the matching request.
4502
+ At least one extension is required. Up to 3 extensions can be defined for each extension chain for
4503
+ LbTrafficExtension resource. LbRouteExtension chains are limited to 1 extension per extension chain.
4504
+ Structure is documented below.
4505
+ :param pulumi.Input['LbTrafficExtensionExtensionChainMatchConditionArgs'] match_condition: Conditions under which this chain is invoked for a request.
4506
+ Structure is documented below.
4507
+ :param pulumi.Input[str] name: The name for this extension chain. The name is logged as part of the HTTP request logs.
4508
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4509
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4510
+ and the last a letter or a number.
4511
+ """
4512
+ pulumi.set(__self__, "extensions", extensions)
4513
+ pulumi.set(__self__, "match_condition", match_condition)
4514
+ pulumi.set(__self__, "name", name)
4515
+
4516
+ @property
4517
+ @pulumi.getter
4518
+ def extensions(self) -> pulumi.Input[Sequence[pulumi.Input['LbTrafficExtensionExtensionChainExtensionArgs']]]:
4519
+ """
4520
+ A set of extensions to execute for the matching request.
4521
+ At least one extension is required. Up to 3 extensions can be defined for each extension chain for
4522
+ LbTrafficExtension resource. LbRouteExtension chains are limited to 1 extension per extension chain.
4523
+ Structure is documented below.
4524
+ """
4525
+ return pulumi.get(self, "extensions")
4526
+
4527
+ @extensions.setter
4528
+ def extensions(self, value: pulumi.Input[Sequence[pulumi.Input['LbTrafficExtensionExtensionChainExtensionArgs']]]):
4529
+ pulumi.set(self, "extensions", value)
4530
+
4531
+ @property
4532
+ @pulumi.getter(name="matchCondition")
4533
+ def match_condition(self) -> pulumi.Input['LbTrafficExtensionExtensionChainMatchConditionArgs']:
4534
+ """
4535
+ Conditions under which this chain is invoked for a request.
4536
+ Structure is documented below.
4537
+ """
4538
+ return pulumi.get(self, "match_condition")
4539
+
4540
+ @match_condition.setter
4541
+ def match_condition(self, value: pulumi.Input['LbTrafficExtensionExtensionChainMatchConditionArgs']):
4542
+ pulumi.set(self, "match_condition", value)
4543
+
4544
+ @property
4545
+ @pulumi.getter
4546
+ def name(self) -> pulumi.Input[str]:
4547
+ """
4548
+ The name for this extension chain. The name is logged as part of the HTTP request logs.
4549
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4550
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4551
+ and the last a letter or a number.
4552
+ """
4553
+ return pulumi.get(self, "name")
4554
+
4555
+ @name.setter
4556
+ def name(self, value: pulumi.Input[str]):
4557
+ pulumi.set(self, "name", value)
4558
+
4559
+
4560
+ @pulumi.input_type
4561
+ class LbTrafficExtensionExtensionChainExtensionArgs:
4562
+ def __init__(__self__, *,
4563
+ name: pulumi.Input[str],
4564
+ service: pulumi.Input[str],
4565
+ authority: Optional[pulumi.Input[str]] = None,
4566
+ fail_open: Optional[pulumi.Input[bool]] = None,
4567
+ forward_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
4568
+ supported_events: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
4569
+ timeout: Optional[pulumi.Input[str]] = None):
4570
+ """
4571
+ :param pulumi.Input[str] name: The name for this extension. The name is logged as part of the HTTP request logs.
4572
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4573
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4574
+ and the last a letter or a number.
4575
+ :param pulumi.Input[str] service: The reference to the service that runs the extension. Must be a reference to a backend service
4576
+ :param pulumi.Input[str] authority: The :authority header in the gRPC request sent from Envoy to the extension service.
4577
+ :param pulumi.Input[bool] fail_open: Determines how the proxy behaves if the call to the extension fails or times out.
4578
+ When set to TRUE, request or response processing continues without error.
4579
+ Any subsequent extensions in the extension chain are also executed.
4580
+ When set to FALSE: * If response headers have not been delivered to the downstream client,
4581
+ a generic 500 error is returned to the client. The error response can be tailored by
4582
+ configuring a custom error response in the load balancer.
4583
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] forward_headers: List of the HTTP headers to forward to the extension (from the client or backend).
4584
+ If omitted, all headers are sent. Each element is a string indicating the header name.
4585
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] supported_events: A set of events during request or response processing for which this extension is called.
4586
+ This field is required for the LbTrafficExtension resource. It's not relevant for the LbRouteExtension
4587
+ resource. Possible values:`EVENT_TYPE_UNSPECIFIED`, `REQUEST_HEADERS`, `REQUEST_BODY`, `RESPONSE_HEADERS`,
4588
+ `RESPONSE_BODY`, `RESPONSE_BODY` and `RESPONSE_BODY`.
4589
+
4590
+ - - -
4591
+ :param pulumi.Input[str] timeout: Specifies the timeout for each individual message on the stream. The timeout must be between 10-1000 milliseconds.
4592
+ A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
4593
+ """
4594
+ pulumi.set(__self__, "name", name)
4595
+ pulumi.set(__self__, "service", service)
4596
+ if authority is not None:
4597
+ pulumi.set(__self__, "authority", authority)
4598
+ if fail_open is not None:
4599
+ pulumi.set(__self__, "fail_open", fail_open)
4600
+ if forward_headers is not None:
4601
+ pulumi.set(__self__, "forward_headers", forward_headers)
4602
+ if supported_events is not None:
4603
+ pulumi.set(__self__, "supported_events", supported_events)
4604
+ if timeout is not None:
4605
+ pulumi.set(__self__, "timeout", timeout)
4606
+
4607
+ @property
4608
+ @pulumi.getter
4609
+ def name(self) -> pulumi.Input[str]:
4610
+ """
4611
+ The name for this extension. The name is logged as part of the HTTP request logs.
4612
+ The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens,
4613
+ and can have a maximum length of 63 characters. Additionally, the first character must be a letter
4614
+ and the last a letter or a number.
4615
+ """
4616
+ return pulumi.get(self, "name")
4617
+
4618
+ @name.setter
4619
+ def name(self, value: pulumi.Input[str]):
4620
+ pulumi.set(self, "name", value)
4621
+
4622
+ @property
4623
+ @pulumi.getter
4624
+ def service(self) -> pulumi.Input[str]:
4625
+ """
4626
+ The reference to the service that runs the extension. Must be a reference to a backend service
4627
+ """
4628
+ return pulumi.get(self, "service")
4629
+
4630
+ @service.setter
4631
+ def service(self, value: pulumi.Input[str]):
4632
+ pulumi.set(self, "service", value)
4633
+
4634
+ @property
4635
+ @pulumi.getter
4636
+ def authority(self) -> Optional[pulumi.Input[str]]:
4637
+ """
4638
+ The :authority header in the gRPC request sent from Envoy to the extension service.
4639
+ """
4640
+ return pulumi.get(self, "authority")
4641
+
4642
+ @authority.setter
4643
+ def authority(self, value: Optional[pulumi.Input[str]]):
4644
+ pulumi.set(self, "authority", value)
4645
+
4646
+ @property
4647
+ @pulumi.getter(name="failOpen")
4648
+ def fail_open(self) -> Optional[pulumi.Input[bool]]:
4649
+ """
4650
+ Determines how the proxy behaves if the call to the extension fails or times out.
4651
+ When set to TRUE, request or response processing continues without error.
4652
+ Any subsequent extensions in the extension chain are also executed.
4653
+ When set to FALSE: * If response headers have not been delivered to the downstream client,
4654
+ a generic 500 error is returned to the client. The error response can be tailored by
4655
+ configuring a custom error response in the load balancer.
4656
+ """
4657
+ return pulumi.get(self, "fail_open")
4658
+
4659
+ @fail_open.setter
4660
+ def fail_open(self, value: Optional[pulumi.Input[bool]]):
4661
+ pulumi.set(self, "fail_open", value)
4662
+
4663
+ @property
4664
+ @pulumi.getter(name="forwardHeaders")
4665
+ def forward_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
4666
+ """
4667
+ List of the HTTP headers to forward to the extension (from the client or backend).
4668
+ If omitted, all headers are sent. Each element is a string indicating the header name.
4669
+ """
4670
+ return pulumi.get(self, "forward_headers")
4671
+
4672
+ @forward_headers.setter
4673
+ def forward_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
4674
+ pulumi.set(self, "forward_headers", value)
4675
+
4676
+ @property
4677
+ @pulumi.getter(name="supportedEvents")
4678
+ def supported_events(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
4679
+ """
4680
+ A set of events during request or response processing for which this extension is called.
4681
+ This field is required for the LbTrafficExtension resource. It's not relevant for the LbRouteExtension
4682
+ resource. Possible values:`EVENT_TYPE_UNSPECIFIED`, `REQUEST_HEADERS`, `REQUEST_BODY`, `RESPONSE_HEADERS`,
4683
+ `RESPONSE_BODY`, `RESPONSE_BODY` and `RESPONSE_BODY`.
4684
+
4685
+ - - -
4686
+ """
4687
+ return pulumi.get(self, "supported_events")
4688
+
4689
+ @supported_events.setter
4690
+ def supported_events(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
4691
+ pulumi.set(self, "supported_events", value)
4692
+
4693
+ @property
4694
+ @pulumi.getter
4695
+ def timeout(self) -> Optional[pulumi.Input[str]]:
4696
+ """
4697
+ Specifies the timeout for each individual message on the stream. The timeout must be between 10-1000 milliseconds.
4698
+ A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
4699
+ """
4700
+ return pulumi.get(self, "timeout")
4701
+
4702
+ @timeout.setter
4703
+ def timeout(self, value: Optional[pulumi.Input[str]]):
4704
+ pulumi.set(self, "timeout", value)
4705
+
4706
+
4707
+ @pulumi.input_type
4708
+ class LbTrafficExtensionExtensionChainMatchConditionArgs:
4709
+ def __init__(__self__, *,
4710
+ cel_expression: pulumi.Input[str]):
4711
+ """
4712
+ :param pulumi.Input[str] cel_expression: A Common Expression Language (CEL) expression that is used to match requests for which the extension chain is executed.
4713
+ """
4714
+ pulumi.set(__self__, "cel_expression", cel_expression)
4715
+
4716
+ @property
4717
+ @pulumi.getter(name="celExpression")
4718
+ def cel_expression(self) -> pulumi.Input[str]:
4719
+ """
4720
+ A Common Expression Language (CEL) expression that is used to match requests for which the extension chain is executed.
4721
+ """
4722
+ return pulumi.get(self, "cel_expression")
4723
+
4724
+ @cel_expression.setter
4725
+ def cel_expression(self, value: pulumi.Input[str]):
4726
+ pulumi.set(self, "cel_expression", value)
4727
+
4728
+
4275
4729
  @pulumi.input_type
4276
4730
  class TcpRouteRuleArgs:
4277
4731
  def __init__(__self__, *,
@@ -798,7 +798,8 @@ class Gateway(pulumi.CustomResource):
798
798
  gateway_security_policy=default_gateway_security_policy.id,
799
799
  network=default_network.id,
800
800
  subnetwork=default_subnetwork.id,
801
- delete_swg_autogen_router_on_destroy=True)
801
+ delete_swg_autogen_router_on_destroy=True,
802
+ opts=pulumi.ResourceOptions(depends_on=[proxyonlysubnet]))
802
803
  ```
803
804
  ### Network Services Gateway Multiple Swp Same Network
804
805
 
@@ -854,7 +855,8 @@ class Gateway(pulumi.CustomResource):
854
855
  gateway_security_policy=default_gateway_security_policy.id,
855
856
  network=default_network.id,
856
857
  subnetwork=default_subnetwork.id,
857
- delete_swg_autogen_router_on_destroy=True)
858
+ delete_swg_autogen_router_on_destroy=True,
859
+ opts=pulumi.ResourceOptions(depends_on=[proxyonlysubnet]))
858
860
  gateway2 = gcp.networkservices.Gateway("gateway2",
859
861
  name="my-gateway2",
860
862
  location="us-south1",
@@ -866,7 +868,8 @@ class Gateway(pulumi.CustomResource):
866
868
  gateway_security_policy=default_gateway_security_policy.id,
867
869
  network=default_network.id,
868
870
  subnetwork=default_subnetwork.id,
869
- delete_swg_autogen_router_on_destroy=True)
871
+ delete_swg_autogen_router_on_destroy=True,
872
+ opts=pulumi.ResourceOptions(depends_on=[proxyonlysubnet]))
870
873
  ```
871
874
 
872
875
  ## Import
@@ -1035,7 +1038,8 @@ class Gateway(pulumi.CustomResource):
1035
1038
  gateway_security_policy=default_gateway_security_policy.id,
1036
1039
  network=default_network.id,
1037
1040
  subnetwork=default_subnetwork.id,
1038
- delete_swg_autogen_router_on_destroy=True)
1041
+ delete_swg_autogen_router_on_destroy=True,
1042
+ opts=pulumi.ResourceOptions(depends_on=[proxyonlysubnet]))
1039
1043
  ```
1040
1044
  ### Network Services Gateway Multiple Swp Same Network
1041
1045
 
@@ -1091,7 +1095,8 @@ class Gateway(pulumi.CustomResource):
1091
1095
  gateway_security_policy=default_gateway_security_policy.id,
1092
1096
  network=default_network.id,
1093
1097
  subnetwork=default_subnetwork.id,
1094
- delete_swg_autogen_router_on_destroy=True)
1098
+ delete_swg_autogen_router_on_destroy=True,
1099
+ opts=pulumi.ResourceOptions(depends_on=[proxyonlysubnet]))
1095
1100
  gateway2 = gcp.networkservices.Gateway("gateway2",
1096
1101
  name="my-gateway2",
1097
1102
  location="us-south1",
@@ -1103,7 +1108,8 @@ class Gateway(pulumi.CustomResource):
1103
1108
  gateway_security_policy=default_gateway_security_policy.id,
1104
1109
  network=default_network.id,
1105
1110
  subnetwork=default_subnetwork.id,
1106
- delete_swg_autogen_router_on_destroy=True)
1111
+ delete_swg_autogen_router_on_destroy=True,
1112
+ opts=pulumi.ResourceOptions(depends_on=[proxyonlysubnet]))
1107
1113
  ```
1108
1114
 
1109
1115
  ## Import