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

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