pulumi-gcp 7.0.0a1699651384__py3-none-any.whl → 7.1.0__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (678) hide show
  1. pulumi_gcp/__init__.py +118 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +546 -71
  3. pulumi_gcp/accesscontextmanager/access_level.py +18 -2
  4. pulumi_gcp/accesscontextmanager/access_level_condition.py +57 -3
  5. pulumi_gcp/accesscontextmanager/access_levels.py +18 -2
  6. pulumi_gcp/accesscontextmanager/access_policy.py +18 -2
  7. pulumi_gcp/accesscontextmanager/authorized_orgs_desc.py +18 -2
  8. pulumi_gcp/accesscontextmanager/egress_policy.py +18 -2
  9. pulumi_gcp/accesscontextmanager/gcp_user_access_binding.py +18 -2
  10. pulumi_gcp/accesscontextmanager/ingress_policy.py +18 -2
  11. pulumi_gcp/accesscontextmanager/outputs.py +643 -71
  12. pulumi_gcp/accesscontextmanager/service_perimeter.py +18 -2
  13. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +18 -2
  14. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +18 -2
  15. pulumi_gcp/accesscontextmanager/service_perimeter_resource.py +18 -2
  16. pulumi_gcp/accesscontextmanager/service_perimeters.py +18 -2
  17. pulumi_gcp/activedirectory/domain.py +22 -10
  18. pulumi_gcp/activedirectory/domain_trust.py +18 -2
  19. pulumi_gcp/activedirectory/peering.py +4 -8
  20. pulumi_gcp/alloydb/__init__.py +1 -0
  21. pulumi_gcp/alloydb/_inputs.py +93 -0
  22. pulumi_gcp/alloydb/backup.py +22 -10
  23. pulumi_gcp/alloydb/cluster.py +283 -11
  24. pulumi_gcp/alloydb/instance.py +241 -40
  25. pulumi_gcp/alloydb/outputs.py +130 -0
  26. pulumi_gcp/alloydb/user.py +609 -0
  27. pulumi_gcp/apigateway/api.py +22 -10
  28. pulumi_gcp/apigateway/api_config.py +22 -10
  29. pulumi_gcp/apigateway/gateway.py +22 -10
  30. pulumi_gcp/apigee/addons_config.py +18 -2
  31. pulumi_gcp/apigee/endpoint_attachment.py +18 -2
  32. pulumi_gcp/apigee/env_group.py +18 -2
  33. pulumi_gcp/apigee/env_group_attachment.py +18 -2
  34. pulumi_gcp/apigee/env_keystore.py +18 -2
  35. pulumi_gcp/apigee/env_references.py +18 -2
  36. pulumi_gcp/apigee/environment.py +96 -5
  37. pulumi_gcp/apigee/flowhook.py +18 -2
  38. pulumi_gcp/apigee/instance.py +18 -2
  39. pulumi_gcp/apigee/instance_attachment.py +18 -2
  40. pulumi_gcp/apigee/keystores_aliases_key_cert_file.py +18 -2
  41. pulumi_gcp/apigee/keystores_aliases_pkcs12.py +18 -2
  42. pulumi_gcp/apigee/keystores_aliases_self_signed_cert.py +18 -2
  43. pulumi_gcp/apigee/nat_address.py +18 -2
  44. pulumi_gcp/apigee/organization.py +18 -2
  45. pulumi_gcp/apigee/sharedflow.py +18 -2
  46. pulumi_gcp/apigee/sharedflow_deployment.py +18 -2
  47. pulumi_gcp/apigee/sync_authorization.py +18 -2
  48. pulumi_gcp/apigee/target_server.py +18 -2
  49. pulumi_gcp/appengine/application.py +20 -4
  50. pulumi_gcp/appengine/application_url_dispatch_rules.py +18 -2
  51. pulumi_gcp/appengine/domain_mapping.py +18 -2
  52. pulumi_gcp/appengine/engine_split_traffic.py +18 -2
  53. pulumi_gcp/appengine/firewall_rule.py +18 -2
  54. pulumi_gcp/appengine/flexible_app_version.py +18 -2
  55. pulumi_gcp/appengine/service_network_settings.py +18 -2
  56. pulumi_gcp/appengine/standard_app_version.py +18 -2
  57. pulumi_gcp/artifactregistry/_inputs.py +4 -4
  58. pulumi_gcp/artifactregistry/outputs.py +4 -4
  59. pulumi_gcp/artifactregistry/repository.py +24 -12
  60. pulumi_gcp/artifactregistry/vpcsc_config.py +18 -2
  61. pulumi_gcp/assuredworkloads/_inputs.py +178 -4
  62. pulumi_gcp/assuredworkloads/outputs.py +217 -5
  63. pulumi_gcp/assuredworkloads/workload.py +474 -63
  64. pulumi_gcp/backupdisasterrecovery/__init__.py +1 -0
  65. pulumi_gcp/backupdisasterrecovery/get_management_server.py +152 -0
  66. pulumi_gcp/backupdisasterrecovery/management_server.py +18 -2
  67. pulumi_gcp/backupdisasterrecovery/outputs.py +40 -0
  68. pulumi_gcp/beyondcorp/app_connection.py +22 -10
  69. pulumi_gcp/beyondcorp/app_connector.py +22 -10
  70. pulumi_gcp/beyondcorp/app_gateway.py +22 -10
  71. pulumi_gcp/biglake/catalog.py +18 -2
  72. pulumi_gcp/biglake/database.py +18 -2
  73. pulumi_gcp/biglake/table.py +18 -2
  74. pulumi_gcp/bigquery/__init__.py +1 -0
  75. pulumi_gcp/bigquery/_inputs.py +94 -8
  76. pulumi_gcp/bigquery/app_profile.py +18 -2
  77. pulumi_gcp/bigquery/bi_reservation.py +18 -2
  78. pulumi_gcp/bigquery/capacity_commitment.py +25 -9
  79. pulumi_gcp/bigquery/connection.py +56 -2
  80. pulumi_gcp/bigquery/data_transfer_config.py +18 -2
  81. pulumi_gcp/bigquery/dataset.py +22 -10
  82. pulumi_gcp/bigquery/dataset_iam_binding.py +10 -38
  83. pulumi_gcp/bigquery/dataset_iam_member.py +10 -38
  84. pulumi_gcp/bigquery/dataset_iam_policy.py +10 -38
  85. pulumi_gcp/bigquery/get_dataset.py +315 -0
  86. pulumi_gcp/bigquery/job.py +26 -10
  87. pulumi_gcp/bigquery/outputs.py +275 -9
  88. pulumi_gcp/bigquery/reservation.py +18 -2
  89. pulumi_gcp/bigquery/reservation_assignment.py +18 -2
  90. pulumi_gcp/bigquery/routine.py +18 -2
  91. pulumi_gcp/bigquery/table.py +171 -17
  92. pulumi_gcp/bigqueryanalyticshub/data_exchange.py +18 -2
  93. pulumi_gcp/bigqueryanalyticshub/listing.py +18 -2
  94. pulumi_gcp/bigquerydatapolicy/data_policy.py +18 -2
  95. pulumi_gcp/bigtable/instance.py +30 -10
  96. pulumi_gcp/bigtable/instance_iam_binding.py +12 -20
  97. pulumi_gcp/bigtable/instance_iam_member.py +12 -20
  98. pulumi_gcp/bigtable/instance_iam_policy.py +12 -20
  99. pulumi_gcp/bigtable/table.py +18 -6
  100. pulumi_gcp/bigtable/table_iam_binding.py +12 -20
  101. pulumi_gcp/bigtable/table_iam_member.py +12 -20
  102. pulumi_gcp/bigtable/table_iam_policy.py +12 -20
  103. pulumi_gcp/billing/account_iam_binding.py +12 -20
  104. pulumi_gcp/billing/account_iam_member.py +12 -20
  105. pulumi_gcp/billing/account_iam_policy.py +12 -20
  106. pulumi_gcp/billing/budget.py +18 -2
  107. pulumi_gcp/billing/project_info.py +18 -2
  108. pulumi_gcp/billing/sub_account.py +18 -2
  109. pulumi_gcp/binaryauthorization/attestor.py +18 -2
  110. pulumi_gcp/binaryauthorization/policy.py +18 -2
  111. pulumi_gcp/certificateauthority/authority.py +22 -10
  112. pulumi_gcp/certificateauthority/ca_pool.py +22 -10
  113. pulumi_gcp/certificateauthority/certificate.py +22 -10
  114. pulumi_gcp/certificateauthority/certificate_template.py +22 -10
  115. pulumi_gcp/certificatemanager/certificate.py +223 -31
  116. pulumi_gcp/certificatemanager/certificate_issuance_config.py +22 -10
  117. pulumi_gcp/certificatemanager/certificate_map.py +22 -10
  118. pulumi_gcp/certificatemanager/certificate_map_entry.py +22 -10
  119. pulumi_gcp/certificatemanager/dns_authorization.py +22 -10
  120. pulumi_gcp/certificatemanager/trust_config.py +22 -10
  121. pulumi_gcp/cloudasset/folder_feed.py +18 -2
  122. pulumi_gcp/cloudasset/organization_feed.py +18 -2
  123. pulumi_gcp/cloudasset/project_feed.py +18 -2
  124. pulumi_gcp/cloudbuild/bitbucket_server_config.py +18 -2
  125. pulumi_gcp/cloudbuild/trigger.py +18 -2
  126. pulumi_gcp/cloudbuild/worker_pool.py +18 -2
  127. pulumi_gcp/cloudbuildv2/connection.py +18 -2
  128. pulumi_gcp/cloudbuildv2/repository.py +18 -2
  129. pulumi_gcp/clouddeploy/delivery_pipeline.py +22 -10
  130. pulumi_gcp/clouddeploy/target.py +22 -10
  131. pulumi_gcp/cloudfunctions/function.py +26 -14
  132. pulumi_gcp/cloudfunctions/get_function.py +3 -0
  133. pulumi_gcp/cloudfunctionsv2/function.py +22 -10
  134. pulumi_gcp/cloudidentity/__init__.py +1 -0
  135. pulumi_gcp/cloudidentity/_inputs.py +119 -0
  136. pulumi_gcp/cloudidentity/get_group_lookup.py +128 -0
  137. pulumi_gcp/cloudidentity/group.py +50 -2
  138. pulumi_gcp/cloudidentity/group_membership.py +18 -2
  139. pulumi_gcp/cloudidentity/outputs.py +156 -0
  140. pulumi_gcp/cloudids/endpoint.py +18 -2
  141. pulumi_gcp/cloudrun/_inputs.py +12 -0
  142. pulumi_gcp/cloudrun/domain_mapping.py +18 -2
  143. pulumi_gcp/cloudrun/outputs.py +12 -0
  144. pulumi_gcp/cloudrun/service.py +18 -2
  145. pulumi_gcp/cloudrunv2/__init__.py +2 -0
  146. pulumi_gcp/cloudrunv2/get_job.py +394 -0
  147. pulumi_gcp/cloudrunv2/get_service.py +454 -0
  148. pulumi_gcp/cloudrunv2/job.py +40 -27
  149. pulumi_gcp/cloudrunv2/outputs.py +1687 -0
  150. pulumi_gcp/cloudrunv2/service.py +40 -27
  151. pulumi_gcp/cloudscheduler/job.py +18 -2
  152. pulumi_gcp/cloudtasks/queue.py +18 -2
  153. pulumi_gcp/composer/_inputs.py +17 -0
  154. pulumi_gcp/composer/environment.py +68 -5
  155. pulumi_gcp/composer/get_environment.py +13 -3
  156. pulumi_gcp/composer/outputs.py +26 -0
  157. pulumi_gcp/compute/__init__.py +2 -0
  158. pulumi_gcp/compute/_inputs.py +158 -4
  159. pulumi_gcp/compute/address.py +38 -18
  160. pulumi_gcp/compute/attached_disk.py +18 -2
  161. pulumi_gcp/compute/autoscaler.py +18 -2
  162. pulumi_gcp/compute/backend_bucket.py +18 -2
  163. pulumi_gcp/compute/backend_service.py +32 -16
  164. pulumi_gcp/compute/disk.py +22 -10
  165. pulumi_gcp/compute/disk_resource_policy_attachment.py +18 -2
  166. pulumi_gcp/compute/external_vpn_gateway.py +22 -10
  167. pulumi_gcp/compute/firewall.py +18 -2
  168. pulumi_gcp/compute/firewall_policy_association.py +18 -2
  169. pulumi_gcp/compute/firewall_policy_rule.py +18 -2
  170. pulumi_gcp/compute/forwarding_rule.py +377 -276
  171. pulumi_gcp/compute/get_disk.py +3 -0
  172. pulumi_gcp/compute/get_forwarding_rule.py +11 -1
  173. pulumi_gcp/compute/get_image.py +3 -0
  174. pulumi_gcp/compute/get_network.py +14 -1
  175. pulumi_gcp/compute/get_networks.py +130 -0
  176. pulumi_gcp/compute/get_subnetwork.py +14 -1
  177. pulumi_gcp/compute/global_address.py +18 -2
  178. pulumi_gcp/compute/global_forwarding_rule.py +127 -108
  179. pulumi_gcp/compute/global_network_endpoint.py +18 -2
  180. pulumi_gcp/compute/global_network_endpoint_group.py +18 -2
  181. pulumi_gcp/compute/ha_vpn_gateway.py +18 -2
  182. pulumi_gcp/compute/health_check.py +18 -2
  183. pulumi_gcp/compute/http_health_check.py +18 -2
  184. pulumi_gcp/compute/https_health_check.py +18 -2
  185. pulumi_gcp/compute/image.py +22 -10
  186. pulumi_gcp/compute/instance.py +44 -36
  187. pulumi_gcp/compute/instance_group.py +24 -8
  188. pulumi_gcp/compute/instance_group_manager.py +26 -10
  189. pulumi_gcp/compute/instance_group_named_port.py +18 -2
  190. pulumi_gcp/compute/instance_settings.py +387 -0
  191. pulumi_gcp/compute/instance_template.py +29 -21
  192. pulumi_gcp/compute/interconnect_attachment.py +18 -2
  193. pulumi_gcp/compute/machine_image.py +18 -2
  194. pulumi_gcp/compute/managed_ssl_certificate.py +18 -2
  195. pulumi_gcp/compute/manged_ssl_certificate.py +18 -2
  196. pulumi_gcp/compute/network.py +18 -2
  197. pulumi_gcp/compute/network_attachment.py +156 -2
  198. pulumi_gcp/compute/network_edge_security_service.py +18 -2
  199. pulumi_gcp/compute/network_endpoint.py +18 -2
  200. pulumi_gcp/compute/network_endpoint_group.py +32 -16
  201. pulumi_gcp/compute/network_endpoint_list.py +18 -2
  202. pulumi_gcp/compute/network_firewall_policy.py +18 -2
  203. pulumi_gcp/compute/network_firewall_policy_association.py +18 -2
  204. pulumi_gcp/compute/network_firewall_policy_rule.py +18 -2
  205. pulumi_gcp/compute/network_peering.py +20 -4
  206. pulumi_gcp/compute/network_peering_routes_config.py +18 -2
  207. pulumi_gcp/compute/node_group.py +129 -2
  208. pulumi_gcp/compute/node_template.py +18 -2
  209. pulumi_gcp/compute/organization_security_policy.py +18 -2
  210. pulumi_gcp/compute/organization_security_policy_association.py +18 -2
  211. pulumi_gcp/compute/organization_security_policy_rule.py +18 -2
  212. pulumi_gcp/compute/outputs.py +230 -7
  213. pulumi_gcp/compute/packet_mirroring.py +18 -2
  214. pulumi_gcp/compute/per_instance_config.py +18 -2
  215. pulumi_gcp/compute/project_default_network_tier.py +20 -4
  216. pulumi_gcp/compute/project_metadata.py +20 -4
  217. pulumi_gcp/compute/project_metadata_item.py +20 -4
  218. pulumi_gcp/compute/public_advertised_prefix.py +18 -2
  219. pulumi_gcp/compute/public_delegated_prefix.py +18 -2
  220. pulumi_gcp/compute/region_autoscaler.py +18 -2
  221. pulumi_gcp/compute/region_backend_service.py +18 -2
  222. pulumi_gcp/compute/region_commitment.py +18 -2
  223. pulumi_gcp/compute/region_disk.py +22 -10
  224. pulumi_gcp/compute/region_disk_resource_policy_attachment.py +18 -2
  225. pulumi_gcp/compute/region_health_check.py +18 -2
  226. pulumi_gcp/compute/region_instance_group_manager.py +20 -4
  227. pulumi_gcp/compute/region_instance_template.py +29 -21
  228. pulumi_gcp/compute/region_network_endpoint_group.py +18 -2
  229. pulumi_gcp/compute/region_network_firewall_policy.py +18 -2
  230. pulumi_gcp/compute/region_network_firewall_policy_association.py +18 -2
  231. pulumi_gcp/compute/region_network_firewall_policy_rule.py +18 -2
  232. pulumi_gcp/compute/region_per_instance_config.py +18 -2
  233. pulumi_gcp/compute/region_security_policy.py +18 -2
  234. pulumi_gcp/compute/region_security_policy_rule.py +18 -2
  235. pulumi_gcp/compute/region_ssl_certificate.py +18 -2
  236. pulumi_gcp/compute/region_ssl_policy.py +18 -2
  237. pulumi_gcp/compute/region_target_http_proxy.py +18 -2
  238. pulumi_gcp/compute/region_target_https_proxy.py +18 -2
  239. pulumi_gcp/compute/region_target_tcp_proxy.py +18 -2
  240. pulumi_gcp/compute/region_url_map.py +18 -2
  241. pulumi_gcp/compute/reservation.py +18 -2
  242. pulumi_gcp/compute/resource_policy.py +18 -2
  243. pulumi_gcp/compute/route.py +18 -2
  244. pulumi_gcp/compute/router.py +18 -2
  245. pulumi_gcp/compute/router_interface.py +22 -6
  246. pulumi_gcp/compute/router_nat.py +18 -2
  247. pulumi_gcp/compute/router_peer.py +18 -2
  248. pulumi_gcp/compute/security_policy.py +52 -4
  249. pulumi_gcp/compute/security_scan_config.py +18 -2
  250. pulumi_gcp/compute/service_attachment.py +18 -2
  251. pulumi_gcp/compute/shared_vpc_host_project.py +20 -4
  252. pulumi_gcp/compute/shared_vpc_service_project.py +20 -4
  253. pulumi_gcp/compute/snapshot.py +22 -10
  254. pulumi_gcp/compute/ssl_certificate.py +18 -2
  255. pulumi_gcp/compute/ssl_policy.py +18 -2
  256. pulumi_gcp/compute/subnetwork.py +109 -2
  257. pulumi_gcp/compute/target_grpc_proxy.py +18 -2
  258. pulumi_gcp/compute/target_http_proxy.py +18 -2
  259. pulumi_gcp/compute/target_https_proxy.py +181 -16
  260. pulumi_gcp/compute/target_instance.py +18 -2
  261. pulumi_gcp/compute/target_pool.py +18 -2
  262. pulumi_gcp/compute/target_ssl_proxy.py +18 -2
  263. pulumi_gcp/compute/target_tcp_proxy.py +18 -2
  264. pulumi_gcp/compute/url_map.py +18 -2
  265. pulumi_gcp/compute/vpn_gateway.py +18 -2
  266. pulumi_gcp/compute/vpn_tunnel.py +18 -2
  267. pulumi_gcp/config/vars.py +12 -0
  268. pulumi_gcp/container/_inputs.py +299 -54
  269. pulumi_gcp/container/attached_cluster.py +18 -2
  270. pulumi_gcp/container/aws_cluster.py +24 -2
  271. pulumi_gcp/container/aws_node_pool.py +18 -2
  272. pulumi_gcp/container/azure_client.py +18 -2
  273. pulumi_gcp/container/azure_cluster.py +24 -2
  274. pulumi_gcp/container/azure_node_pool.py +18 -2
  275. pulumi_gcp/container/cluster.py +92 -29
  276. pulumi_gcp/container/get_cluster.py +11 -1
  277. pulumi_gcp/container/node_pool.py +22 -6
  278. pulumi_gcp/container/outputs.py +384 -52
  279. pulumi_gcp/containeranalysis/note.py +18 -2
  280. pulumi_gcp/containeranalysis/occurence.py +18 -2
  281. pulumi_gcp/databasemigrationservice/__init__.py +1 -0
  282. pulumi_gcp/databasemigrationservice/_inputs.py +465 -0
  283. pulumi_gcp/databasemigrationservice/connection_profile.py +122 -12
  284. pulumi_gcp/databasemigrationservice/outputs.py +466 -0
  285. pulumi_gcp/databasemigrationservice/private_connection.py +672 -0
  286. pulumi_gcp/datacatalog/entry.py +18 -2
  287. pulumi_gcp/datacatalog/entry_group.py +18 -2
  288. pulumi_gcp/datacatalog/policy_tag.py +18 -2
  289. pulumi_gcp/datacatalog/tag.py +18 -2
  290. pulumi_gcp/datacatalog/tag_template.py +18 -2
  291. pulumi_gcp/datacatalog/taxonomy.py +18 -2
  292. pulumi_gcp/dataflow/job.py +24 -12
  293. pulumi_gcp/dataflow/pipeline.py +18 -2
  294. pulumi_gcp/dataform/_inputs.py +78 -21
  295. pulumi_gcp/dataform/outputs.py +86 -20
  296. pulumi_gcp/dataform/repository.py +140 -9
  297. pulumi_gcp/dataform/repository_release_config.py +18 -2
  298. pulumi_gcp/dataform/repository_workflow_config.py +20 -4
  299. pulumi_gcp/datafusion/instance.py +22 -10
  300. pulumi_gcp/dataloss/prevention_deidentify_template.py +18 -2
  301. pulumi_gcp/dataloss/prevention_inspect_template.py +18 -2
  302. pulumi_gcp/dataloss/prevention_job_trigger.py +18 -2
  303. pulumi_gcp/dataloss/prevention_stored_info_type.py +18 -2
  304. pulumi_gcp/dataplex/asset.py +22 -10
  305. pulumi_gcp/dataplex/datascan.py +22 -10
  306. pulumi_gcp/dataplex/lake.py +22 -10
  307. pulumi_gcp/dataplex/task.py +22 -10
  308. pulumi_gcp/dataplex/zone.py +22 -10
  309. pulumi_gcp/dataproc/_inputs.py +148 -0
  310. pulumi_gcp/dataproc/autoscaling_policy.py +18 -2
  311. pulumi_gcp/dataproc/cluster.py +2 -2
  312. pulumi_gcp/dataproc/cluster_iam_binding.py +12 -20
  313. pulumi_gcp/dataproc/cluster_iam_member.py +12 -20
  314. pulumi_gcp/dataproc/cluster_iam_policy.py +12 -20
  315. pulumi_gcp/dataproc/job.py +20 -8
  316. pulumi_gcp/dataproc/job_iam_binding.py +12 -20
  317. pulumi_gcp/dataproc/job_iam_member.py +12 -20
  318. pulumi_gcp/dataproc/job_iam_policy.py +12 -20
  319. pulumi_gcp/dataproc/metastore_federation.py +22 -10
  320. pulumi_gcp/dataproc/metastore_service.py +22 -10
  321. pulumi_gcp/dataproc/outputs.py +175 -0
  322. pulumi_gcp/dataproc/workflow_template.py +18 -2
  323. pulumi_gcp/datastore/data_store_index.py +18 -2
  324. pulumi_gcp/datastream/connection_profile.py +22 -10
  325. pulumi_gcp/datastream/private_connection.py +22 -10
  326. pulumi_gcp/datastream/stream.py +22 -10
  327. pulumi_gcp/deploymentmanager/deployment.py +18 -2
  328. pulumi_gcp/diagflow/_inputs.py +626 -4
  329. pulumi_gcp/diagflow/agent.py +18 -2
  330. pulumi_gcp/diagflow/cx_agent.py +288 -21
  331. pulumi_gcp/diagflow/cx_entity_type.py +18 -2
  332. pulumi_gcp/diagflow/cx_environment.py +18 -2
  333. pulumi_gcp/diagflow/cx_flow.py +309 -4
  334. pulumi_gcp/diagflow/cx_intent.py +165 -10
  335. pulumi_gcp/diagflow/cx_page.py +109 -4
  336. pulumi_gcp/diagflow/cx_security_settings.py +18 -2
  337. pulumi_gcp/diagflow/cx_test_case.py +18 -2
  338. pulumi_gcp/diagflow/cx_version.py +18 -2
  339. pulumi_gcp/diagflow/cx_webhook.py +18 -2
  340. pulumi_gcp/diagflow/entity_type.py +18 -2
  341. pulumi_gcp/diagflow/fulfillment.py +18 -2
  342. pulumi_gcp/diagflow/intent.py +18 -2
  343. pulumi_gcp/diagflow/outputs.py +722 -5
  344. pulumi_gcp/dns/get_keys.py +16 -2
  345. pulumi_gcp/dns/managed_zone.py +22 -10
  346. pulumi_gcp/dns/policy.py +18 -2
  347. pulumi_gcp/dns/record_set.py +24 -8
  348. pulumi_gcp/dns/response_policy.py +18 -2
  349. pulumi_gcp/dns/response_policy_rule.py +18 -2
  350. pulumi_gcp/edgecontainer/__init__.py +12 -0
  351. pulumi_gcp/edgecontainer/_inputs.py +1171 -0
  352. pulumi_gcp/edgecontainer/cluster.py +1539 -0
  353. pulumi_gcp/edgecontainer/node_pool.py +1062 -0
  354. pulumi_gcp/edgecontainer/outputs.py +1204 -0
  355. pulumi_gcp/edgecontainer/vpn_connection.py +918 -0
  356. pulumi_gcp/edgenetwork/network.py +18 -2
  357. pulumi_gcp/edgenetwork/subnet.py +18 -2
  358. pulumi_gcp/essentialcontacts/contact.py +18 -2
  359. pulumi_gcp/essentialcontacts/document_ai_processor.py +18 -2
  360. pulumi_gcp/essentialcontacts/document_ai_processor_default_version.py +18 -2
  361. pulumi_gcp/essentialcontacts/document_ai_warehouse_document_schema.py +18 -2
  362. pulumi_gcp/eventarc/channel.py +18 -2
  363. pulumi_gcp/eventarc/google_channel_config.py +18 -2
  364. pulumi_gcp/eventarc/trigger.py +22 -10
  365. pulumi_gcp/filestore/backup.py +22 -10
  366. pulumi_gcp/filestore/instance.py +22 -10
  367. pulumi_gcp/filestore/snapshot.py +22 -10
  368. pulumi_gcp/firebase/__init__.py +1 -0
  369. pulumi_gcp/firebase/_inputs.py +878 -0
  370. pulumi_gcp/firebase/android_app.py +18 -2
  371. pulumi_gcp/firebase/apple_app.py +18 -2
  372. pulumi_gcp/firebase/database_instance.py +18 -2
  373. pulumi_gcp/firebase/extensions_instance.py +18 -2
  374. pulumi_gcp/firebase/hosting_channel.py +22 -10
  375. pulumi_gcp/firebase/hosting_custom_domain.py +1274 -0
  376. pulumi_gcp/firebase/hosting_release.py +18 -2
  377. pulumi_gcp/firebase/hosting_site.py +18 -2
  378. pulumi_gcp/firebase/hosting_version.py +18 -2
  379. pulumi_gcp/firebase/outputs.py +905 -0
  380. pulumi_gcp/firebase/project.py +18 -2
  381. pulumi_gcp/firebase/storage_bucket.py +18 -2
  382. pulumi_gcp/firebase/web_app.py +18 -2
  383. pulumi_gcp/firebaserules/release.py +18 -2
  384. pulumi_gcp/firebaserules/ruleset.py +18 -2
  385. pulumi_gcp/firestore/__init__.py +1 -0
  386. pulumi_gcp/firestore/_inputs.py +35 -2
  387. pulumi_gcp/firestore/backup_schedule.py +547 -0
  388. pulumi_gcp/firestore/database.py +24 -4
  389. pulumi_gcp/firestore/document.py +22 -2
  390. pulumi_gcp/firestore/field.py +27 -13
  391. pulumi_gcp/firestore/index.py +140 -21
  392. pulumi_gcp/firestore/outputs.py +31 -2
  393. pulumi_gcp/folder/access_approval_settings.py +18 -2
  394. pulumi_gcp/folder/iam_audit_config.py +10 -58
  395. pulumi_gcp/folder/iam_member.py +10 -58
  396. pulumi_gcp/folder/iam_policy.py +10 -58
  397. pulumi_gcp/folder/organization_policy.py +22 -6
  398. pulumi_gcp/gkebackup/backup_plan.py +22 -10
  399. pulumi_gcp/gkebackup/restore_plan.py +22 -10
  400. pulumi_gcp/gkebackup/restore_plan_iam_binding.py +18 -2
  401. pulumi_gcp/gkebackup/restore_plan_iam_member.py +18 -2
  402. pulumi_gcp/gkebackup/restore_plan_iam_policy.py +18 -2
  403. pulumi_gcp/gkehub/__init__.py +1 -0
  404. pulumi_gcp/gkehub/_inputs.py +431 -0
  405. pulumi_gcp/gkehub/feature.py +76 -10
  406. pulumi_gcp/gkehub/feature_membership.py +22 -2
  407. pulumi_gcp/gkehub/fleet.py +432 -0
  408. pulumi_gcp/gkehub/get_membership_iam_policy.py +24 -3
  409. pulumi_gcp/gkehub/membership.py +120 -16
  410. pulumi_gcp/gkehub/membership_binding.py +22 -10
  411. pulumi_gcp/gkehub/membership_iam_binding.py +67 -0
  412. pulumi_gcp/gkehub/membership_iam_member.py +67 -0
  413. pulumi_gcp/gkehub/membership_iam_policy.py +67 -0
  414. pulumi_gcp/gkehub/membership_rbac_role_binding.py +18 -2
  415. pulumi_gcp/gkehub/namespace.py +22 -10
  416. pulumi_gcp/gkehub/outputs.py +432 -1
  417. pulumi_gcp/gkehub/scope.py +22 -10
  418. pulumi_gcp/gkehub/scope_rbac_role_binding.py +22 -10
  419. pulumi_gcp/gkeonprem/_inputs.py +17 -31
  420. pulumi_gcp/gkeonprem/bare_metal_admin_cluster.py +148 -132
  421. pulumi_gcp/gkeonprem/bare_metal_cluster.py +260 -246
  422. pulumi_gcp/gkeonprem/bare_metal_node_pool.py +30 -18
  423. pulumi_gcp/gkeonprem/outputs.py +17 -31
  424. pulumi_gcp/gkeonprem/v_mware_cluster.py +287 -230
  425. pulumi_gcp/gkeonprem/v_mware_node_pool.py +30 -18
  426. pulumi_gcp/healthcare/consent_store.py +22 -10
  427. pulumi_gcp/healthcare/dataset.py +18 -2
  428. pulumi_gcp/healthcare/dataset_iam_binding.py +10 -38
  429. pulumi_gcp/healthcare/dataset_iam_member.py +10 -38
  430. pulumi_gcp/healthcare/dataset_iam_policy.py +10 -38
  431. pulumi_gcp/healthcare/dicom_store.py +22 -10
  432. pulumi_gcp/healthcare/dicom_store_iam_binding.py +10 -30
  433. pulumi_gcp/healthcare/dicom_store_iam_member.py +10 -30
  434. pulumi_gcp/healthcare/dicom_store_iam_policy.py +10 -30
  435. pulumi_gcp/healthcare/fhir_store.py +22 -10
  436. pulumi_gcp/healthcare/fhir_store_iam_binding.py +10 -30
  437. pulumi_gcp/healthcare/fhir_store_iam_member.py +10 -30
  438. pulumi_gcp/healthcare/fhir_store_iam_policy.py +10 -30
  439. pulumi_gcp/healthcare/hl7_store.py +22 -10
  440. pulumi_gcp/healthcare/hl7_store_iam_binding.py +10 -30
  441. pulumi_gcp/healthcare/hl7_store_iam_member.py +10 -30
  442. pulumi_gcp/healthcare/hl7_store_iam_policy.py +10 -30
  443. pulumi_gcp/iam/_inputs.py +20 -0
  444. pulumi_gcp/iam/access_boundary_policy.py +18 -2
  445. pulumi_gcp/iam/deny_policy.py +18 -2
  446. pulumi_gcp/iam/outputs.py +20 -0
  447. pulumi_gcp/iam/workforce_pool.py +18 -2
  448. pulumi_gcp/iam/workforce_pool_provider.py +18 -2
  449. pulumi_gcp/iam/workload_identity_pool.py +18 -2
  450. pulumi_gcp/iam/workload_identity_pool_provider.py +18 -2
  451. pulumi_gcp/iap/brand.py +18 -2
  452. pulumi_gcp/iap/client.py +18 -2
  453. pulumi_gcp/identityplatform/_inputs.py +92 -0
  454. pulumi_gcp/identityplatform/config.py +91 -5
  455. pulumi_gcp/identityplatform/default_supported_idp_config.py +18 -2
  456. pulumi_gcp/identityplatform/inbound_saml_config.py +18 -2
  457. pulumi_gcp/identityplatform/oauth_idp_config.py +18 -2
  458. pulumi_gcp/identityplatform/outputs.py +129 -0
  459. pulumi_gcp/identityplatform/project_default_config.py +18 -2
  460. pulumi_gcp/identityplatform/tenant.py +18 -2
  461. pulumi_gcp/identityplatform/tenant_default_supported_idp_config.py +18 -2
  462. pulumi_gcp/identityplatform/tenant_inbound_saml_config.py +18 -2
  463. pulumi_gcp/identityplatform/tenant_oauth_idp_config.py +18 -2
  464. pulumi_gcp/integrationconnectors/__init__.py +10 -0
  465. pulumi_gcp/integrationconnectors/_inputs.py +2518 -0
  466. pulumi_gcp/integrationconnectors/connection.py +1921 -0
  467. pulumi_gcp/integrationconnectors/outputs.py +2780 -0
  468. pulumi_gcp/kms/crypto_key.py +22 -10
  469. pulumi_gcp/kms/crypto_key_iam_binding.py +10 -30
  470. pulumi_gcp/kms/crypto_key_iam_member.py +10 -30
  471. pulumi_gcp/kms/crypto_key_iam_policy.py +10 -30
  472. pulumi_gcp/kms/crypto_key_version.py +18 -2
  473. pulumi_gcp/kms/key_ring.py +18 -2
  474. pulumi_gcp/kms/key_ring_iam_binding.py +10 -30
  475. pulumi_gcp/kms/key_ring_iam_member.py +10 -30
  476. pulumi_gcp/kms/key_ring_iam_policy.py +10 -30
  477. pulumi_gcp/kms/key_ring_import_job.py +18 -2
  478. pulumi_gcp/logging/_inputs.py +160 -0
  479. pulumi_gcp/logging/billing_account_bucket_config.py +61 -26
  480. pulumi_gcp/logging/billing_account_exclusion.py +20 -4
  481. pulumi_gcp/logging/billing_account_sink.py +20 -4
  482. pulumi_gcp/logging/folder_bucket_config.py +75 -4
  483. pulumi_gcp/logging/folder_exclusion.py +20 -4
  484. pulumi_gcp/logging/folder_sink.py +20 -4
  485. pulumi_gcp/logging/linked_dataset.py +18 -2
  486. pulumi_gcp/logging/log_view.py +18 -2
  487. pulumi_gcp/logging/metric.py +18 -2
  488. pulumi_gcp/logging/organization_bucket_config.py +75 -4
  489. pulumi_gcp/logging/organization_exclusion.py +20 -4
  490. pulumi_gcp/logging/organization_sink.py +20 -4
  491. pulumi_gcp/logging/outputs.py +196 -0
  492. pulumi_gcp/logging/project_bucket_config.py +59 -134
  493. pulumi_gcp/logging/project_exclusion.py +20 -4
  494. pulumi_gcp/logging/project_sink.py +95 -18
  495. pulumi_gcp/looker/instance.py +18 -2
  496. pulumi_gcp/memcache/instance.py +22 -10
  497. pulumi_gcp/ml/engine_model.py +22 -10
  498. pulumi_gcp/monitoring/_inputs.py +127 -13
  499. pulumi_gcp/monitoring/alert_policy.py +64 -2
  500. pulumi_gcp/monitoring/custom_service.py +18 -2
  501. pulumi_gcp/monitoring/dashboard.py +18 -2
  502. pulumi_gcp/monitoring/generic_service.py +18 -2
  503. pulumi_gcp/monitoring/group.py +18 -2
  504. pulumi_gcp/monitoring/metric_descriptor.py +18 -2
  505. pulumi_gcp/monitoring/monitored_project.py +18 -2
  506. pulumi_gcp/monitoring/notification_channel.py +18 -2
  507. pulumi_gcp/monitoring/outputs.py +158 -13
  508. pulumi_gcp/monitoring/slo.py +18 -2
  509. pulumi_gcp/monitoring/uptime_check_config.py +92 -9
  510. pulumi_gcp/networkconnectivity/__init__.py +1 -0
  511. pulumi_gcp/networkconnectivity/_inputs.py +185 -0
  512. pulumi_gcp/networkconnectivity/hub.py +22 -10
  513. pulumi_gcp/networkconnectivity/outputs.py +189 -0
  514. pulumi_gcp/networkconnectivity/policy_based_route.py +1003 -0
  515. pulumi_gcp/networkconnectivity/service_connection_policy.py +22 -10
  516. pulumi_gcp/networkconnectivity/spoke.py +22 -10
  517. pulumi_gcp/networkmanagement/connectivity_test.py +22 -10
  518. pulumi_gcp/networksecurity/address_group.py +22 -10
  519. pulumi_gcp/networksecurity/authorization_policy.py +22 -10
  520. pulumi_gcp/networksecurity/client_tls_policy.py +22 -10
  521. pulumi_gcp/networksecurity/gateway_security_policy.py +18 -2
  522. pulumi_gcp/networksecurity/gateway_security_policy_rule.py +18 -2
  523. pulumi_gcp/networksecurity/server_tls_policy.py +92 -10
  524. pulumi_gcp/networksecurity/tls_inspection_policy.py +18 -2
  525. pulumi_gcp/networksecurity/url_list.py +18 -2
  526. pulumi_gcp/networkservices/edge_cache_keyset.py +22 -10
  527. pulumi_gcp/networkservices/edge_cache_origin.py +22 -10
  528. pulumi_gcp/networkservices/edge_cache_service.py +22 -10
  529. pulumi_gcp/networkservices/endpoint_policy.py +22 -10
  530. pulumi_gcp/networkservices/gateway.py +22 -10
  531. pulumi_gcp/networkservices/grpc_route.py +22 -10
  532. pulumi_gcp/networkservices/http_route.py +22 -10
  533. pulumi_gcp/networkservices/mesh.py +22 -10
  534. pulumi_gcp/networkservices/service_binding.py +22 -10
  535. pulumi_gcp/networkservices/tcp_route.py +22 -10
  536. pulumi_gcp/networkservices/tls_route.py +18 -2
  537. pulumi_gcp/notebooks/environment.py +18 -2
  538. pulumi_gcp/notebooks/instance.py +22 -10
  539. pulumi_gcp/notebooks/location.py +18 -2
  540. pulumi_gcp/notebooks/runtime.py +18 -2
  541. pulumi_gcp/organizations/access_approval_settings.py +18 -2
  542. pulumi_gcp/organizations/folder.py +22 -6
  543. pulumi_gcp/organizations/iam_member.py +10 -58
  544. pulumi_gcp/organizations/iam_policy.py +10 -58
  545. pulumi_gcp/organizations/policy.py +22 -4
  546. pulumi_gcp/organizations/project.py +24 -12
  547. pulumi_gcp/orgpolicy/custom_constraint.py +50 -22
  548. pulumi_gcp/orgpolicy/policy.py +18 -2
  549. pulumi_gcp/osconfig/guest_policies.py +18 -2
  550. pulumi_gcp/osconfig/os_policy_assignment.py +18 -2
  551. pulumi_gcp/osconfig/patch_deployment.py +18 -2
  552. pulumi_gcp/oslogin/ssh_public_key.py +18 -2
  553. pulumi_gcp/projects/access_approval_settings.py +18 -2
  554. pulumi_gcp/projects/api_key.py +18 -2
  555. pulumi_gcp/projects/iam_audit_config.py +10 -58
  556. pulumi_gcp/projects/iam_binding.py +10 -58
  557. pulumi_gcp/projects/iam_custom_role.py +18 -2
  558. pulumi_gcp/projects/iam_member.py +10 -58
  559. pulumi_gcp/projects/iam_policy.py +10 -58
  560. pulumi_gcp/projects/organization_policy.py +24 -8
  561. pulumi_gcp/projects/service.py +22 -4
  562. pulumi_gcp/projects/usage_export_bucket.py +20 -4
  563. pulumi_gcp/provider.py +60 -0
  564. pulumi_gcp/pubsub/__init__.py +4 -0
  565. pulumi_gcp/pubsub/_inputs.py +80 -0
  566. pulumi_gcp/pubsub/get_schema_iam_policy.py +147 -0
  567. pulumi_gcp/pubsub/lite_reservation.py +18 -2
  568. pulumi_gcp/pubsub/lite_subscription.py +18 -2
  569. pulumi_gcp/pubsub/lite_topic.py +18 -2
  570. pulumi_gcp/pubsub/outputs.py +56 -0
  571. pulumi_gcp/pubsub/schema.py +18 -2
  572. pulumi_gcp/pubsub/schema_iam_binding.py +601 -0
  573. pulumi_gcp/pubsub/schema_iam_member.py +601 -0
  574. pulumi_gcp/pubsub/schema_iam_policy.py +523 -0
  575. pulumi_gcp/pubsub/subscription.py +22 -10
  576. pulumi_gcp/pubsub/subscription_iam_binding.py +12 -20
  577. pulumi_gcp/pubsub/subscription_iam_member.py +12 -20
  578. pulumi_gcp/pubsub/subscription_iam_policy.py +12 -20
  579. pulumi_gcp/pubsub/topic.py +36 -17
  580. pulumi_gcp/recaptcha/enterprise_key.py +22 -10
  581. pulumi_gcp/redis/cluster.py +42 -18
  582. pulumi_gcp/redis/instance.py +22 -58
  583. pulumi_gcp/resourcemanager/lien.py +18 -2
  584. pulumi_gcp/runtimeconfig/config.py +26 -6
  585. pulumi_gcp/runtimeconfig/variable.py +26 -6
  586. pulumi_gcp/secretmanager/__init__.py +1 -0
  587. pulumi_gcp/secretmanager/get_secrets.py +133 -0
  588. pulumi_gcp/secretmanager/outputs.py +354 -0
  589. pulumi_gcp/secretmanager/secret.py +36 -10
  590. pulumi_gcp/secretmanager/secret_version.py +18 -2
  591. pulumi_gcp/securitycenter/folder_custom_module.py +18 -2
  592. pulumi_gcp/securitycenter/instance_iam_binding.py +18 -2
  593. pulumi_gcp/securitycenter/instance_iam_member.py +18 -2
  594. pulumi_gcp/securitycenter/instance_iam_policy.py +18 -2
  595. pulumi_gcp/securitycenter/mute_config.py +18 -2
  596. pulumi_gcp/securitycenter/notification_config.py +18 -2
  597. pulumi_gcp/securitycenter/organization_custom_module.py +18 -2
  598. pulumi_gcp/securitycenter/project_custom_module.py +18 -2
  599. pulumi_gcp/securitycenter/source.py +18 -2
  600. pulumi_gcp/securitycenter/source_iam_binding.py +18 -2
  601. pulumi_gcp/securitycenter/source_iam_member.py +18 -2
  602. pulumi_gcp/securitycenter/source_iam_policy.py +18 -2
  603. pulumi_gcp/serviceaccount/account.py +20 -4
  604. pulumi_gcp/serviceaccount/iam_binding.py +2 -30
  605. pulumi_gcp/serviceaccount/iam_member.py +2 -30
  606. pulumi_gcp/serviceaccount/iam_policy.py +2 -30
  607. pulumi_gcp/servicedirectory/endpoint.py +18 -2
  608. pulumi_gcp/servicedirectory/namespace.py +22 -10
  609. pulumi_gcp/servicedirectory/service.py +18 -2
  610. pulumi_gcp/servicenetworking/connection.py +22 -6
  611. pulumi_gcp/servicenetworking/peered_dns_domain.py +18 -6
  612. pulumi_gcp/serviceusage/consumer_quota_override.py +18 -2
  613. pulumi_gcp/sourcerepo/repository.py +18 -2
  614. pulumi_gcp/spanner/_inputs.py +142 -0
  615. pulumi_gcp/spanner/database.py +18 -2
  616. pulumi_gcp/spanner/database_iam_binding.py +10 -26
  617. pulumi_gcp/spanner/database_iam_member.py +10 -26
  618. pulumi_gcp/spanner/database_iam_policy.py +10 -26
  619. pulumi_gcp/spanner/get_instance.py +12 -1
  620. pulumi_gcp/spanner/instance.py +99 -10
  621. pulumi_gcp/spanner/instance_iam_binding.py +10 -26
  622. pulumi_gcp/spanner/instance_iam_member.py +10 -26
  623. pulumi_gcp/spanner/instance_iam_policy.py +10 -26
  624. pulumi_gcp/spanner/outputs.py +236 -0
  625. pulumi_gcp/sql/_inputs.py +27 -7
  626. pulumi_gcp/sql/database.py +18 -2
  627. pulumi_gcp/sql/database_instance.py +24 -8
  628. pulumi_gcp/sql/outputs.py +41 -9
  629. pulumi_gcp/sql/source_representation_instance.py +25 -9
  630. pulumi_gcp/sql/user.py +38 -8
  631. pulumi_gcp/storage/_inputs.py +59 -1
  632. pulumi_gcp/storage/bucket.py +69 -6
  633. pulumi_gcp/storage/bucket_access_control.py +18 -2
  634. pulumi_gcp/storage/bucket_object.py +47 -0
  635. pulumi_gcp/storage/default_object_access_control.py +18 -2
  636. pulumi_gcp/storage/get_bucket.py +11 -1
  637. pulumi_gcp/storage/get_bucket_object.py +11 -1
  638. pulumi_gcp/storage/get_bucket_object_content.py +11 -1
  639. pulumi_gcp/storage/hmac_key.py +18 -2
  640. pulumi_gcp/storage/insights_report_config.py +18 -2
  641. pulumi_gcp/storage/notification.py +20 -4
  642. pulumi_gcp/storage/object_access_control.py +18 -2
  643. pulumi_gcp/storage/outputs.py +129 -2
  644. pulumi_gcp/storage/transfer_agent_pool.py +18 -2
  645. pulumi_gcp/storage/transfer_job.py +20 -4
  646. pulumi_gcp/tags/location_tag_binding.py +35 -19
  647. pulumi_gcp/tags/tag_binding.py +18 -2
  648. pulumi_gcp/tags/tag_key.py +18 -2
  649. pulumi_gcp/tags/tag_value.py +18 -2
  650. pulumi_gcp/tpu/_inputs.py +450 -0
  651. pulumi_gcp/tpu/node.py +22 -10
  652. pulumi_gcp/tpu/outputs.py +477 -0
  653. pulumi_gcp/tpu/v2_vm.py +906 -38
  654. pulumi_gcp/vertex/_inputs.py +39 -0
  655. pulumi_gcp/vertex/ai_dataset.py +4 -8
  656. pulumi_gcp/vertex/ai_endpoint.py +22 -10
  657. pulumi_gcp/vertex/ai_feature_store.py +22 -10
  658. pulumi_gcp/vertex/ai_feature_store_entity_type.py +22 -10
  659. pulumi_gcp/vertex/ai_feature_store_entity_type_feature.py +22 -10
  660. pulumi_gcp/vertex/ai_index.py +22 -10
  661. pulumi_gcp/vertex/ai_index_endpoint.py +116 -10
  662. pulumi_gcp/vertex/ai_metadata_store.py +18 -2
  663. pulumi_gcp/vertex/ai_tensorboard.py +22 -10
  664. pulumi_gcp/vertex/outputs.py +50 -0
  665. pulumi_gcp/vmwareengine/cluster.py +18 -2
  666. pulumi_gcp/vmwareengine/network.py +18 -2
  667. pulumi_gcp/vmwareengine/private_cloud.py +18 -2
  668. pulumi_gcp/vpcaccess/connector.py +18 -2
  669. pulumi_gcp/workflows/workflow.py +159 -11
  670. pulumi_gcp/workstations/_inputs.py +23 -0
  671. pulumi_gcp/workstations/outputs.py +19 -0
  672. pulumi_gcp/workstations/workstation.py +22 -10
  673. pulumi_gcp/workstations/workstation_cluster.py +142 -10
  674. pulumi_gcp/workstations/workstation_config.py +24 -12
  675. {pulumi_gcp-7.0.0a1699651384.dist-info → pulumi_gcp-7.1.0.dist-info}/METADATA +1 -1
  676. {pulumi_gcp-7.0.0a1699651384.dist-info → pulumi_gcp-7.1.0.dist-info}/RECORD +678 -650
  677. {pulumi_gcp-7.0.0a1699651384.dist-info → pulumi_gcp-7.1.0.dist-info}/WHEEL +0 -0
  678. {pulumi_gcp-7.0.0a1699651384.dist-info → pulumi_gcp-7.1.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1171 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+
12
+ __all__ = [
13
+ 'ClusterAuthorizationArgs',
14
+ 'ClusterAuthorizationAdminUsersArgs',
15
+ 'ClusterControlPlaneArgs',
16
+ 'ClusterControlPlaneEncryptionArgs',
17
+ 'ClusterControlPlaneEncryptionKmsStatusArgs',
18
+ 'ClusterControlPlaneLocalArgs',
19
+ 'ClusterControlPlaneRemoteArgs',
20
+ 'ClusterFleetArgs',
21
+ 'ClusterMaintenanceEventArgs',
22
+ 'ClusterMaintenancePolicyArgs',
23
+ 'ClusterMaintenancePolicyWindowArgs',
24
+ 'ClusterMaintenancePolicyWindowRecurringWindowArgs',
25
+ 'ClusterMaintenancePolicyWindowRecurringWindowWindowArgs',
26
+ 'ClusterNetworkingArgs',
27
+ 'ClusterSystemAddonsConfigArgs',
28
+ 'ClusterSystemAddonsConfigIngressArgs',
29
+ 'NodePoolLocalDiskEncryptionArgs',
30
+ 'NodePoolNodeConfigArgs',
31
+ 'VpnConnectionDetailArgs',
32
+ 'VpnConnectionDetailCloudRouterArgs',
33
+ 'VpnConnectionDetailCloudVpnArgs',
34
+ 'VpnConnectionVpcProjectArgs',
35
+ ]
36
+
37
+ @pulumi.input_type
38
+ class ClusterAuthorizationArgs:
39
+ def __init__(__self__, *,
40
+ admin_users: pulumi.Input['ClusterAuthorizationAdminUsersArgs']):
41
+ """
42
+ :param pulumi.Input['ClusterAuthorizationAdminUsersArgs'] admin_users: User that will be granted the cluster-admin role on the cluster, providing
43
+ full access to the cluster. Currently, this is a singular field, but will
44
+ be expanded to allow multiple admins in the future.
45
+ Structure is documented below.
46
+ """
47
+ pulumi.set(__self__, "admin_users", admin_users)
48
+
49
+ @property
50
+ @pulumi.getter(name="adminUsers")
51
+ def admin_users(self) -> pulumi.Input['ClusterAuthorizationAdminUsersArgs']:
52
+ """
53
+ User that will be granted the cluster-admin role on the cluster, providing
54
+ full access to the cluster. Currently, this is a singular field, but will
55
+ be expanded to allow multiple admins in the future.
56
+ Structure is documented below.
57
+ """
58
+ return pulumi.get(self, "admin_users")
59
+
60
+ @admin_users.setter
61
+ def admin_users(self, value: pulumi.Input['ClusterAuthorizationAdminUsersArgs']):
62
+ pulumi.set(self, "admin_users", value)
63
+
64
+
65
+ @pulumi.input_type
66
+ class ClusterAuthorizationAdminUsersArgs:
67
+ def __init__(__self__, *,
68
+ username: pulumi.Input[str]):
69
+ """
70
+ :param pulumi.Input[str] username: An active Google username.
71
+
72
+ - - -
73
+ """
74
+ pulumi.set(__self__, "username", username)
75
+
76
+ @property
77
+ @pulumi.getter
78
+ def username(self) -> pulumi.Input[str]:
79
+ """
80
+ An active Google username.
81
+
82
+ - - -
83
+ """
84
+ return pulumi.get(self, "username")
85
+
86
+ @username.setter
87
+ def username(self, value: pulumi.Input[str]):
88
+ pulumi.set(self, "username", value)
89
+
90
+
91
+ @pulumi.input_type
92
+ class ClusterControlPlaneArgs:
93
+ def __init__(__self__, *,
94
+ local: Optional[pulumi.Input['ClusterControlPlaneLocalArgs']] = None,
95
+ remote: Optional[pulumi.Input['ClusterControlPlaneRemoteArgs']] = None):
96
+ """
97
+ :param pulumi.Input['ClusterControlPlaneLocalArgs'] local: Local control plane configuration.
98
+ Structure is documented below.
99
+ :param pulumi.Input['ClusterControlPlaneRemoteArgs'] remote: Remote control plane configuration.
100
+ Structure is documented below.
101
+ """
102
+ if local is not None:
103
+ pulumi.set(__self__, "local", local)
104
+ if remote is not None:
105
+ pulumi.set(__self__, "remote", remote)
106
+
107
+ @property
108
+ @pulumi.getter
109
+ def local(self) -> Optional[pulumi.Input['ClusterControlPlaneLocalArgs']]:
110
+ """
111
+ Local control plane configuration.
112
+ Structure is documented below.
113
+ """
114
+ return pulumi.get(self, "local")
115
+
116
+ @local.setter
117
+ def local(self, value: Optional[pulumi.Input['ClusterControlPlaneLocalArgs']]):
118
+ pulumi.set(self, "local", value)
119
+
120
+ @property
121
+ @pulumi.getter
122
+ def remote(self) -> Optional[pulumi.Input['ClusterControlPlaneRemoteArgs']]:
123
+ """
124
+ Remote control plane configuration.
125
+ Structure is documented below.
126
+ """
127
+ return pulumi.get(self, "remote")
128
+
129
+ @remote.setter
130
+ def remote(self, value: Optional[pulumi.Input['ClusterControlPlaneRemoteArgs']]):
131
+ pulumi.set(self, "remote", value)
132
+
133
+
134
+ @pulumi.input_type
135
+ class ClusterControlPlaneEncryptionArgs:
136
+ def __init__(__self__, *,
137
+ kms_key: Optional[pulumi.Input[str]] = None,
138
+ kms_key_active_version: Optional[pulumi.Input[str]] = None,
139
+ kms_key_state: Optional[pulumi.Input[str]] = None,
140
+ kms_statuses: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterControlPlaneEncryptionKmsStatusArgs']]]] = None):
141
+ """
142
+ :param pulumi.Input[str] kms_key: The Cloud KMS CryptoKey e.g.
143
+ projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey}
144
+ to use for protecting control plane disks. If not specified, a
145
+ Google-managed key will be used instead.
146
+ :param pulumi.Input[str] kms_key_active_version: (Output)
147
+ The Cloud KMS CryptoKeyVersion currently in use for protecting control
148
+ plane disks. Only applicable if kms_key is set.
149
+ :param pulumi.Input[str] kms_key_state: (Output)
150
+ Availability of the Cloud KMS CryptoKey. If not `KEY_AVAILABLE`, then
151
+ nodes may go offline as they cannot access their local data. This can be
152
+ caused by a lack of permissions to use the key, or if the key is disabled
153
+ or deleted.
154
+ :param pulumi.Input[Sequence[pulumi.Input['ClusterControlPlaneEncryptionKmsStatusArgs']]] kms_statuses: (Output)
155
+ Error status returned by Cloud KMS when using this key. This field may be
156
+ populated only if `kms_key_state` is not `KMS_KEY_STATE_KEY_AVAILABLE`.
157
+ If populated, this field contains the error status reported by Cloud KMS.
158
+ Structure is documented below.
159
+
160
+
161
+ <a name="nested_kms_status"></a>The `kms_status` block contains:
162
+ """
163
+ if kms_key is not None:
164
+ pulumi.set(__self__, "kms_key", kms_key)
165
+ if kms_key_active_version is not None:
166
+ pulumi.set(__self__, "kms_key_active_version", kms_key_active_version)
167
+ if kms_key_state is not None:
168
+ pulumi.set(__self__, "kms_key_state", kms_key_state)
169
+ if kms_statuses is not None:
170
+ pulumi.set(__self__, "kms_statuses", kms_statuses)
171
+
172
+ @property
173
+ @pulumi.getter(name="kmsKey")
174
+ def kms_key(self) -> Optional[pulumi.Input[str]]:
175
+ """
176
+ The Cloud KMS CryptoKey e.g.
177
+ projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey}
178
+ to use for protecting control plane disks. If not specified, a
179
+ Google-managed key will be used instead.
180
+ """
181
+ return pulumi.get(self, "kms_key")
182
+
183
+ @kms_key.setter
184
+ def kms_key(self, value: Optional[pulumi.Input[str]]):
185
+ pulumi.set(self, "kms_key", value)
186
+
187
+ @property
188
+ @pulumi.getter(name="kmsKeyActiveVersion")
189
+ def kms_key_active_version(self) -> Optional[pulumi.Input[str]]:
190
+ """
191
+ (Output)
192
+ The Cloud KMS CryptoKeyVersion currently in use for protecting control
193
+ plane disks. Only applicable if kms_key is set.
194
+ """
195
+ return pulumi.get(self, "kms_key_active_version")
196
+
197
+ @kms_key_active_version.setter
198
+ def kms_key_active_version(self, value: Optional[pulumi.Input[str]]):
199
+ pulumi.set(self, "kms_key_active_version", value)
200
+
201
+ @property
202
+ @pulumi.getter(name="kmsKeyState")
203
+ def kms_key_state(self) -> Optional[pulumi.Input[str]]:
204
+ """
205
+ (Output)
206
+ Availability of the Cloud KMS CryptoKey. If not `KEY_AVAILABLE`, then
207
+ nodes may go offline as they cannot access their local data. This can be
208
+ caused by a lack of permissions to use the key, or if the key is disabled
209
+ or deleted.
210
+ """
211
+ return pulumi.get(self, "kms_key_state")
212
+
213
+ @kms_key_state.setter
214
+ def kms_key_state(self, value: Optional[pulumi.Input[str]]):
215
+ pulumi.set(self, "kms_key_state", value)
216
+
217
+ @property
218
+ @pulumi.getter(name="kmsStatuses")
219
+ def kms_statuses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClusterControlPlaneEncryptionKmsStatusArgs']]]]:
220
+ """
221
+ (Output)
222
+ Error status returned by Cloud KMS when using this key. This field may be
223
+ populated only if `kms_key_state` is not `KMS_KEY_STATE_KEY_AVAILABLE`.
224
+ If populated, this field contains the error status reported by Cloud KMS.
225
+ Structure is documented below.
226
+
227
+
228
+ <a name="nested_kms_status"></a>The `kms_status` block contains:
229
+ """
230
+ return pulumi.get(self, "kms_statuses")
231
+
232
+ @kms_statuses.setter
233
+ def kms_statuses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterControlPlaneEncryptionKmsStatusArgs']]]]):
234
+ pulumi.set(self, "kms_statuses", value)
235
+
236
+
237
+ @pulumi.input_type
238
+ class ClusterControlPlaneEncryptionKmsStatusArgs:
239
+ def __init__(__self__, *,
240
+ code: Optional[pulumi.Input[int]] = None,
241
+ message: Optional[pulumi.Input[str]] = None):
242
+ """
243
+ :param pulumi.Input[int] code: (Output)
244
+ The status code, which should be an enum value of google.rpc.Code.
245
+ :param pulumi.Input[str] message: (Output)
246
+ A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
247
+ """
248
+ if code is not None:
249
+ pulumi.set(__self__, "code", code)
250
+ if message is not None:
251
+ pulumi.set(__self__, "message", message)
252
+
253
+ @property
254
+ @pulumi.getter
255
+ def code(self) -> Optional[pulumi.Input[int]]:
256
+ """
257
+ (Output)
258
+ The status code, which should be an enum value of google.rpc.Code.
259
+ """
260
+ return pulumi.get(self, "code")
261
+
262
+ @code.setter
263
+ def code(self, value: Optional[pulumi.Input[int]]):
264
+ pulumi.set(self, "code", value)
265
+
266
+ @property
267
+ @pulumi.getter
268
+ def message(self) -> Optional[pulumi.Input[str]]:
269
+ """
270
+ (Output)
271
+ A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
272
+ """
273
+ return pulumi.get(self, "message")
274
+
275
+ @message.setter
276
+ def message(self, value: Optional[pulumi.Input[str]]):
277
+ pulumi.set(self, "message", value)
278
+
279
+
280
+ @pulumi.input_type
281
+ class ClusterControlPlaneLocalArgs:
282
+ def __init__(__self__, *,
283
+ machine_filter: Optional[pulumi.Input[str]] = None,
284
+ node_count: Optional[pulumi.Input[int]] = None,
285
+ node_location: Optional[pulumi.Input[str]] = None,
286
+ shared_deployment_policy: Optional[pulumi.Input[str]] = None):
287
+ """
288
+ :param pulumi.Input[str] machine_filter: Only machines matching this filter will be allowed to host control
289
+ plane nodes. The filtering language accepts strings like "name=<name>",
290
+ and is documented here: [AIP-160](https://google.aip.dev/160).
291
+ :param pulumi.Input[int] node_count: The number of nodes to serve as replicas of the Control Plane.
292
+ Only 1 and 3 are supported.
293
+ :param pulumi.Input[str] node_location: Name of the Google Distributed Cloud Edge zones where this node pool
294
+ will be created. For example: `us-central1-edge-customer-a`.
295
+ :param pulumi.Input[str] shared_deployment_policy: Policy configuration about how user applications are deployed.
296
+ Possible values are: `SHARED_DEPLOYMENT_POLICY_UNSPECIFIED`, `ALLOWED`, `DISALLOWED`.
297
+ """
298
+ if machine_filter is not None:
299
+ pulumi.set(__self__, "machine_filter", machine_filter)
300
+ if node_count is not None:
301
+ pulumi.set(__self__, "node_count", node_count)
302
+ if node_location is not None:
303
+ pulumi.set(__self__, "node_location", node_location)
304
+ if shared_deployment_policy is not None:
305
+ pulumi.set(__self__, "shared_deployment_policy", shared_deployment_policy)
306
+
307
+ @property
308
+ @pulumi.getter(name="machineFilter")
309
+ def machine_filter(self) -> Optional[pulumi.Input[str]]:
310
+ """
311
+ Only machines matching this filter will be allowed to host control
312
+ plane nodes. The filtering language accepts strings like "name=<name>",
313
+ and is documented here: [AIP-160](https://google.aip.dev/160).
314
+ """
315
+ return pulumi.get(self, "machine_filter")
316
+
317
+ @machine_filter.setter
318
+ def machine_filter(self, value: Optional[pulumi.Input[str]]):
319
+ pulumi.set(self, "machine_filter", value)
320
+
321
+ @property
322
+ @pulumi.getter(name="nodeCount")
323
+ def node_count(self) -> Optional[pulumi.Input[int]]:
324
+ """
325
+ The number of nodes to serve as replicas of the Control Plane.
326
+ Only 1 and 3 are supported.
327
+ """
328
+ return pulumi.get(self, "node_count")
329
+
330
+ @node_count.setter
331
+ def node_count(self, value: Optional[pulumi.Input[int]]):
332
+ pulumi.set(self, "node_count", value)
333
+
334
+ @property
335
+ @pulumi.getter(name="nodeLocation")
336
+ def node_location(self) -> Optional[pulumi.Input[str]]:
337
+ """
338
+ Name of the Google Distributed Cloud Edge zones where this node pool
339
+ will be created. For example: `us-central1-edge-customer-a`.
340
+ """
341
+ return pulumi.get(self, "node_location")
342
+
343
+ @node_location.setter
344
+ def node_location(self, value: Optional[pulumi.Input[str]]):
345
+ pulumi.set(self, "node_location", value)
346
+
347
+ @property
348
+ @pulumi.getter(name="sharedDeploymentPolicy")
349
+ def shared_deployment_policy(self) -> Optional[pulumi.Input[str]]:
350
+ """
351
+ Policy configuration about how user applications are deployed.
352
+ Possible values are: `SHARED_DEPLOYMENT_POLICY_UNSPECIFIED`, `ALLOWED`, `DISALLOWED`.
353
+ """
354
+ return pulumi.get(self, "shared_deployment_policy")
355
+
356
+ @shared_deployment_policy.setter
357
+ def shared_deployment_policy(self, value: Optional[pulumi.Input[str]]):
358
+ pulumi.set(self, "shared_deployment_policy", value)
359
+
360
+
361
+ @pulumi.input_type
362
+ class ClusterControlPlaneRemoteArgs:
363
+ def __init__(__self__, *,
364
+ node_location: Optional[pulumi.Input[str]] = None):
365
+ """
366
+ :param pulumi.Input[str] node_location: Name of the Google Distributed Cloud Edge zones where this node pool
367
+ will be created. For example: `us-central1-edge-customer-a`.
368
+ """
369
+ if node_location is not None:
370
+ pulumi.set(__self__, "node_location", node_location)
371
+
372
+ @property
373
+ @pulumi.getter(name="nodeLocation")
374
+ def node_location(self) -> Optional[pulumi.Input[str]]:
375
+ """
376
+ Name of the Google Distributed Cloud Edge zones where this node pool
377
+ will be created. For example: `us-central1-edge-customer-a`.
378
+ """
379
+ return pulumi.get(self, "node_location")
380
+
381
+ @node_location.setter
382
+ def node_location(self, value: Optional[pulumi.Input[str]]):
383
+ pulumi.set(self, "node_location", value)
384
+
385
+
386
+ @pulumi.input_type
387
+ class ClusterFleetArgs:
388
+ def __init__(__self__, *,
389
+ project: pulumi.Input[str],
390
+ membership: Optional[pulumi.Input[str]] = None):
391
+ """
392
+ :param pulumi.Input[str] project: The name of the Fleet host project where this cluster will be registered.
393
+ Project names are formatted as
394
+ `projects/<project-number>`.
395
+ :param pulumi.Input[str] membership: (Output)
396
+ The name of the managed Hub Membership resource associated to this cluster.
397
+ Membership names are formatted as
398
+ `projects/<project-number>/locations/global/membership/<cluster-id>`.
399
+ """
400
+ pulumi.set(__self__, "project", project)
401
+ if membership is not None:
402
+ pulumi.set(__self__, "membership", membership)
403
+
404
+ @property
405
+ @pulumi.getter
406
+ def project(self) -> pulumi.Input[str]:
407
+ """
408
+ The name of the Fleet host project where this cluster will be registered.
409
+ Project names are formatted as
410
+ `projects/<project-number>`.
411
+ """
412
+ return pulumi.get(self, "project")
413
+
414
+ @project.setter
415
+ def project(self, value: pulumi.Input[str]):
416
+ pulumi.set(self, "project", value)
417
+
418
+ @property
419
+ @pulumi.getter
420
+ def membership(self) -> Optional[pulumi.Input[str]]:
421
+ """
422
+ (Output)
423
+ The name of the managed Hub Membership resource associated to this cluster.
424
+ Membership names are formatted as
425
+ `projects/<project-number>/locations/global/membership/<cluster-id>`.
426
+ """
427
+ return pulumi.get(self, "membership")
428
+
429
+ @membership.setter
430
+ def membership(self, value: Optional[pulumi.Input[str]]):
431
+ pulumi.set(self, "membership", value)
432
+
433
+
434
+ @pulumi.input_type
435
+ class ClusterMaintenanceEventArgs:
436
+ def __init__(__self__, *,
437
+ create_time: Optional[pulumi.Input[str]] = None,
438
+ end_time: Optional[pulumi.Input[str]] = None,
439
+ operation: Optional[pulumi.Input[str]] = None,
440
+ schedule: Optional[pulumi.Input[str]] = None,
441
+ start_time: Optional[pulumi.Input[str]] = None,
442
+ state: Optional[pulumi.Input[str]] = None,
443
+ target_version: Optional[pulumi.Input[str]] = None,
444
+ type: Optional[pulumi.Input[str]] = None,
445
+ update_time: Optional[pulumi.Input[str]] = None,
446
+ uuid: Optional[pulumi.Input[str]] = None):
447
+ """
448
+ :param pulumi.Input[str] create_time: (Output)
449
+ The time when the maintenance event request was created.
450
+ :param pulumi.Input[str] end_time: The time that the window ends. The end time must take place after the
451
+ start time.
452
+ :param pulumi.Input[str] operation: (Output)
453
+ The operation for running the maintenance event. Specified in the format
454
+ projects/*/locations/*/operations/*. If the maintenance event is split
455
+ into multiple operations (e.g. due to maintenance windows), the latest
456
+ one is recorded.
457
+ :param pulumi.Input[str] schedule: (Output)
458
+ The schedule of the maintenance event.
459
+ :param pulumi.Input[str] start_time: The time that the window first starts.
460
+ :param pulumi.Input[str] state: (Output)
461
+ Indicates the maintenance event state.
462
+ :param pulumi.Input[str] target_version: The target cluster version. For example: "1.5.0".
463
+ :param pulumi.Input[str] type: (Output)
464
+ Indicates the maintenance event type.
465
+ :param pulumi.Input[str] update_time: (Output)
466
+ The time when the maintenance event message was updated.
467
+ :param pulumi.Input[str] uuid: (Output)
468
+ UUID of the maintenance event.
469
+ """
470
+ if create_time is not None:
471
+ pulumi.set(__self__, "create_time", create_time)
472
+ if end_time is not None:
473
+ pulumi.set(__self__, "end_time", end_time)
474
+ if operation is not None:
475
+ pulumi.set(__self__, "operation", operation)
476
+ if schedule is not None:
477
+ pulumi.set(__self__, "schedule", schedule)
478
+ if start_time is not None:
479
+ pulumi.set(__self__, "start_time", start_time)
480
+ if state is not None:
481
+ pulumi.set(__self__, "state", state)
482
+ if target_version is not None:
483
+ pulumi.set(__self__, "target_version", target_version)
484
+ if type is not None:
485
+ pulumi.set(__self__, "type", type)
486
+ if update_time is not None:
487
+ pulumi.set(__self__, "update_time", update_time)
488
+ if uuid is not None:
489
+ pulumi.set(__self__, "uuid", uuid)
490
+
491
+ @property
492
+ @pulumi.getter(name="createTime")
493
+ def create_time(self) -> Optional[pulumi.Input[str]]:
494
+ """
495
+ (Output)
496
+ The time when the maintenance event request was created.
497
+ """
498
+ return pulumi.get(self, "create_time")
499
+
500
+ @create_time.setter
501
+ def create_time(self, value: Optional[pulumi.Input[str]]):
502
+ pulumi.set(self, "create_time", value)
503
+
504
+ @property
505
+ @pulumi.getter(name="endTime")
506
+ def end_time(self) -> Optional[pulumi.Input[str]]:
507
+ """
508
+ The time that the window ends. The end time must take place after the
509
+ start time.
510
+ """
511
+ return pulumi.get(self, "end_time")
512
+
513
+ @end_time.setter
514
+ def end_time(self, value: Optional[pulumi.Input[str]]):
515
+ pulumi.set(self, "end_time", value)
516
+
517
+ @property
518
+ @pulumi.getter
519
+ def operation(self) -> Optional[pulumi.Input[str]]:
520
+ """
521
+ (Output)
522
+ The operation for running the maintenance event. Specified in the format
523
+ projects/*/locations/*/operations/*. If the maintenance event is split
524
+ into multiple operations (e.g. due to maintenance windows), the latest
525
+ one is recorded.
526
+ """
527
+ return pulumi.get(self, "operation")
528
+
529
+ @operation.setter
530
+ def operation(self, value: Optional[pulumi.Input[str]]):
531
+ pulumi.set(self, "operation", value)
532
+
533
+ @property
534
+ @pulumi.getter
535
+ def schedule(self) -> Optional[pulumi.Input[str]]:
536
+ """
537
+ (Output)
538
+ The schedule of the maintenance event.
539
+ """
540
+ return pulumi.get(self, "schedule")
541
+
542
+ @schedule.setter
543
+ def schedule(self, value: Optional[pulumi.Input[str]]):
544
+ pulumi.set(self, "schedule", value)
545
+
546
+ @property
547
+ @pulumi.getter(name="startTime")
548
+ def start_time(self) -> Optional[pulumi.Input[str]]:
549
+ """
550
+ The time that the window first starts.
551
+ """
552
+ return pulumi.get(self, "start_time")
553
+
554
+ @start_time.setter
555
+ def start_time(self, value: Optional[pulumi.Input[str]]):
556
+ pulumi.set(self, "start_time", value)
557
+
558
+ @property
559
+ @pulumi.getter
560
+ def state(self) -> Optional[pulumi.Input[str]]:
561
+ """
562
+ (Output)
563
+ Indicates the maintenance event state.
564
+ """
565
+ return pulumi.get(self, "state")
566
+
567
+ @state.setter
568
+ def state(self, value: Optional[pulumi.Input[str]]):
569
+ pulumi.set(self, "state", value)
570
+
571
+ @property
572
+ @pulumi.getter(name="targetVersion")
573
+ def target_version(self) -> Optional[pulumi.Input[str]]:
574
+ """
575
+ The target cluster version. For example: "1.5.0".
576
+ """
577
+ return pulumi.get(self, "target_version")
578
+
579
+ @target_version.setter
580
+ def target_version(self, value: Optional[pulumi.Input[str]]):
581
+ pulumi.set(self, "target_version", value)
582
+
583
+ @property
584
+ @pulumi.getter
585
+ def type(self) -> Optional[pulumi.Input[str]]:
586
+ """
587
+ (Output)
588
+ Indicates the maintenance event type.
589
+ """
590
+ return pulumi.get(self, "type")
591
+
592
+ @type.setter
593
+ def type(self, value: Optional[pulumi.Input[str]]):
594
+ pulumi.set(self, "type", value)
595
+
596
+ @property
597
+ @pulumi.getter(name="updateTime")
598
+ def update_time(self) -> Optional[pulumi.Input[str]]:
599
+ """
600
+ (Output)
601
+ The time when the maintenance event message was updated.
602
+ """
603
+ return pulumi.get(self, "update_time")
604
+
605
+ @update_time.setter
606
+ def update_time(self, value: Optional[pulumi.Input[str]]):
607
+ pulumi.set(self, "update_time", value)
608
+
609
+ @property
610
+ @pulumi.getter
611
+ def uuid(self) -> Optional[pulumi.Input[str]]:
612
+ """
613
+ (Output)
614
+ UUID of the maintenance event.
615
+ """
616
+ return pulumi.get(self, "uuid")
617
+
618
+ @uuid.setter
619
+ def uuid(self, value: Optional[pulumi.Input[str]]):
620
+ pulumi.set(self, "uuid", value)
621
+
622
+
623
+ @pulumi.input_type
624
+ class ClusterMaintenancePolicyArgs:
625
+ def __init__(__self__, *,
626
+ window: pulumi.Input['ClusterMaintenancePolicyWindowArgs']):
627
+ """
628
+ :param pulumi.Input['ClusterMaintenancePolicyWindowArgs'] window: Specifies the maintenance window in which maintenance may be performed.
629
+ Structure is documented below.
630
+ """
631
+ pulumi.set(__self__, "window", window)
632
+
633
+ @property
634
+ @pulumi.getter
635
+ def window(self) -> pulumi.Input['ClusterMaintenancePolicyWindowArgs']:
636
+ """
637
+ Specifies the maintenance window in which maintenance may be performed.
638
+ Structure is documented below.
639
+ """
640
+ return pulumi.get(self, "window")
641
+
642
+ @window.setter
643
+ def window(self, value: pulumi.Input['ClusterMaintenancePolicyWindowArgs']):
644
+ pulumi.set(self, "window", value)
645
+
646
+
647
+ @pulumi.input_type
648
+ class ClusterMaintenancePolicyWindowArgs:
649
+ def __init__(__self__, *,
650
+ recurring_window: pulumi.Input['ClusterMaintenancePolicyWindowRecurringWindowArgs']):
651
+ """
652
+ :param pulumi.Input['ClusterMaintenancePolicyWindowRecurringWindowArgs'] recurring_window: Represents an arbitrary window of time that recurs.
653
+ Structure is documented below.
654
+ """
655
+ pulumi.set(__self__, "recurring_window", recurring_window)
656
+
657
+ @property
658
+ @pulumi.getter(name="recurringWindow")
659
+ def recurring_window(self) -> pulumi.Input['ClusterMaintenancePolicyWindowRecurringWindowArgs']:
660
+ """
661
+ Represents an arbitrary window of time that recurs.
662
+ Structure is documented below.
663
+ """
664
+ return pulumi.get(self, "recurring_window")
665
+
666
+ @recurring_window.setter
667
+ def recurring_window(self, value: pulumi.Input['ClusterMaintenancePolicyWindowRecurringWindowArgs']):
668
+ pulumi.set(self, "recurring_window", value)
669
+
670
+
671
+ @pulumi.input_type
672
+ class ClusterMaintenancePolicyWindowRecurringWindowArgs:
673
+ def __init__(__self__, *,
674
+ recurrence: Optional[pulumi.Input[str]] = None,
675
+ window: Optional[pulumi.Input['ClusterMaintenancePolicyWindowRecurringWindowWindowArgs']] = None):
676
+ """
677
+ :param pulumi.Input[str] recurrence: An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how
678
+ this window recurs. They go on for the span of time between the start and
679
+ end time.
680
+ :param pulumi.Input['ClusterMaintenancePolicyWindowRecurringWindowWindowArgs'] window: Represents an arbitrary window of time.
681
+ Structure is documented below.
682
+ """
683
+ if recurrence is not None:
684
+ pulumi.set(__self__, "recurrence", recurrence)
685
+ if window is not None:
686
+ pulumi.set(__self__, "window", window)
687
+
688
+ @property
689
+ @pulumi.getter
690
+ def recurrence(self) -> Optional[pulumi.Input[str]]:
691
+ """
692
+ An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how
693
+ this window recurs. They go on for the span of time between the start and
694
+ end time.
695
+ """
696
+ return pulumi.get(self, "recurrence")
697
+
698
+ @recurrence.setter
699
+ def recurrence(self, value: Optional[pulumi.Input[str]]):
700
+ pulumi.set(self, "recurrence", value)
701
+
702
+ @property
703
+ @pulumi.getter
704
+ def window(self) -> Optional[pulumi.Input['ClusterMaintenancePolicyWindowRecurringWindowWindowArgs']]:
705
+ """
706
+ Represents an arbitrary window of time.
707
+ Structure is documented below.
708
+ """
709
+ return pulumi.get(self, "window")
710
+
711
+ @window.setter
712
+ def window(self, value: Optional[pulumi.Input['ClusterMaintenancePolicyWindowRecurringWindowWindowArgs']]):
713
+ pulumi.set(self, "window", value)
714
+
715
+
716
+ @pulumi.input_type
717
+ class ClusterMaintenancePolicyWindowRecurringWindowWindowArgs:
718
+ def __init__(__self__, *,
719
+ end_time: Optional[pulumi.Input[str]] = None,
720
+ start_time: Optional[pulumi.Input[str]] = None):
721
+ """
722
+ :param pulumi.Input[str] end_time: The time that the window ends. The end time must take place after the
723
+ start time.
724
+ :param pulumi.Input[str] start_time: The time that the window first starts.
725
+ """
726
+ if end_time is not None:
727
+ pulumi.set(__self__, "end_time", end_time)
728
+ if start_time is not None:
729
+ pulumi.set(__self__, "start_time", start_time)
730
+
731
+ @property
732
+ @pulumi.getter(name="endTime")
733
+ def end_time(self) -> Optional[pulumi.Input[str]]:
734
+ """
735
+ The time that the window ends. The end time must take place after the
736
+ start time.
737
+ """
738
+ return pulumi.get(self, "end_time")
739
+
740
+ @end_time.setter
741
+ def end_time(self, value: Optional[pulumi.Input[str]]):
742
+ pulumi.set(self, "end_time", value)
743
+
744
+ @property
745
+ @pulumi.getter(name="startTime")
746
+ def start_time(self) -> Optional[pulumi.Input[str]]:
747
+ """
748
+ The time that the window first starts.
749
+ """
750
+ return pulumi.get(self, "start_time")
751
+
752
+ @start_time.setter
753
+ def start_time(self, value: Optional[pulumi.Input[str]]):
754
+ pulumi.set(self, "start_time", value)
755
+
756
+
757
+ @pulumi.input_type
758
+ class ClusterNetworkingArgs:
759
+ def __init__(__self__, *,
760
+ cluster_ipv4_cidr_blocks: pulumi.Input[Sequence[pulumi.Input[str]]],
761
+ services_ipv4_cidr_blocks: pulumi.Input[Sequence[pulumi.Input[str]]],
762
+ cluster_ipv6_cidr_blocks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
763
+ network_type: Optional[pulumi.Input[str]] = None,
764
+ services_ipv6_cidr_blocks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
765
+ """
766
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] cluster_ipv4_cidr_blocks: All pods in the cluster are assigned an RFC1918 IPv4 address from these
767
+ blocks. Only a single block is supported. This field cannot be changed
768
+ after creation.
769
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] services_ipv4_cidr_blocks: All services in the cluster are assigned an RFC1918 IPv4 address from these
770
+ blocks. Only a single block is supported. This field cannot be changed
771
+ after creation.
772
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] cluster_ipv6_cidr_blocks: If specified, dual stack mode is enabled and all pods in the cluster are
773
+ assigned an IPv6 address from these blocks alongside from an IPv4
774
+ address. Only a single block is supported. This field cannot be changed
775
+ after creation.
776
+ :param pulumi.Input[str] network_type: (Output)
777
+ IP addressing type of this cluster i.e. SINGLESTACK_V4 vs DUALSTACK_V4_V6.
778
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] services_ipv6_cidr_blocks: If specified, dual stack mode is enabled and all services in the cluster are
779
+ assigned an IPv6 address from these blocks alongside from an IPv4
780
+ address. Only a single block is supported. This field cannot be changed
781
+ after creation.
782
+ """
783
+ pulumi.set(__self__, "cluster_ipv4_cidr_blocks", cluster_ipv4_cidr_blocks)
784
+ pulumi.set(__self__, "services_ipv4_cidr_blocks", services_ipv4_cidr_blocks)
785
+ if cluster_ipv6_cidr_blocks is not None:
786
+ pulumi.set(__self__, "cluster_ipv6_cidr_blocks", cluster_ipv6_cidr_blocks)
787
+ if network_type is not None:
788
+ pulumi.set(__self__, "network_type", network_type)
789
+ if services_ipv6_cidr_blocks is not None:
790
+ pulumi.set(__self__, "services_ipv6_cidr_blocks", services_ipv6_cidr_blocks)
791
+
792
+ @property
793
+ @pulumi.getter(name="clusterIpv4CidrBlocks")
794
+ def cluster_ipv4_cidr_blocks(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
795
+ """
796
+ All pods in the cluster are assigned an RFC1918 IPv4 address from these
797
+ blocks. Only a single block is supported. This field cannot be changed
798
+ after creation.
799
+ """
800
+ return pulumi.get(self, "cluster_ipv4_cidr_blocks")
801
+
802
+ @cluster_ipv4_cidr_blocks.setter
803
+ def cluster_ipv4_cidr_blocks(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
804
+ pulumi.set(self, "cluster_ipv4_cidr_blocks", value)
805
+
806
+ @property
807
+ @pulumi.getter(name="servicesIpv4CidrBlocks")
808
+ def services_ipv4_cidr_blocks(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
809
+ """
810
+ All services in the cluster are assigned an RFC1918 IPv4 address from these
811
+ blocks. Only a single block is supported. This field cannot be changed
812
+ after creation.
813
+ """
814
+ return pulumi.get(self, "services_ipv4_cidr_blocks")
815
+
816
+ @services_ipv4_cidr_blocks.setter
817
+ def services_ipv4_cidr_blocks(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
818
+ pulumi.set(self, "services_ipv4_cidr_blocks", value)
819
+
820
+ @property
821
+ @pulumi.getter(name="clusterIpv6CidrBlocks")
822
+ def cluster_ipv6_cidr_blocks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
823
+ """
824
+ If specified, dual stack mode is enabled and all pods in the cluster are
825
+ assigned an IPv6 address from these blocks alongside from an IPv4
826
+ address. Only a single block is supported. This field cannot be changed
827
+ after creation.
828
+ """
829
+ return pulumi.get(self, "cluster_ipv6_cidr_blocks")
830
+
831
+ @cluster_ipv6_cidr_blocks.setter
832
+ def cluster_ipv6_cidr_blocks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
833
+ pulumi.set(self, "cluster_ipv6_cidr_blocks", value)
834
+
835
+ @property
836
+ @pulumi.getter(name="networkType")
837
+ def network_type(self) -> Optional[pulumi.Input[str]]:
838
+ """
839
+ (Output)
840
+ IP addressing type of this cluster i.e. SINGLESTACK_V4 vs DUALSTACK_V4_V6.
841
+ """
842
+ return pulumi.get(self, "network_type")
843
+
844
+ @network_type.setter
845
+ def network_type(self, value: Optional[pulumi.Input[str]]):
846
+ pulumi.set(self, "network_type", value)
847
+
848
+ @property
849
+ @pulumi.getter(name="servicesIpv6CidrBlocks")
850
+ def services_ipv6_cidr_blocks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
851
+ """
852
+ If specified, dual stack mode is enabled and all services in the cluster are
853
+ assigned an IPv6 address from these blocks alongside from an IPv4
854
+ address. Only a single block is supported. This field cannot be changed
855
+ after creation.
856
+ """
857
+ return pulumi.get(self, "services_ipv6_cidr_blocks")
858
+
859
+ @services_ipv6_cidr_blocks.setter
860
+ def services_ipv6_cidr_blocks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
861
+ pulumi.set(self, "services_ipv6_cidr_blocks", value)
862
+
863
+
864
+ @pulumi.input_type
865
+ class ClusterSystemAddonsConfigArgs:
866
+ def __init__(__self__, *,
867
+ ingress: Optional[pulumi.Input['ClusterSystemAddonsConfigIngressArgs']] = None):
868
+ """
869
+ :param pulumi.Input['ClusterSystemAddonsConfigIngressArgs'] ingress: Config for the Ingress add-on which allows customers to create an Ingress
870
+ object to manage external access to the servers in a cluster. The add-on
871
+ consists of istiod and istio-ingress.
872
+ Structure is documented below.
873
+ """
874
+ if ingress is not None:
875
+ pulumi.set(__self__, "ingress", ingress)
876
+
877
+ @property
878
+ @pulumi.getter
879
+ def ingress(self) -> Optional[pulumi.Input['ClusterSystemAddonsConfigIngressArgs']]:
880
+ """
881
+ Config for the Ingress add-on which allows customers to create an Ingress
882
+ object to manage external access to the servers in a cluster. The add-on
883
+ consists of istiod and istio-ingress.
884
+ Structure is documented below.
885
+ """
886
+ return pulumi.get(self, "ingress")
887
+
888
+ @ingress.setter
889
+ def ingress(self, value: Optional[pulumi.Input['ClusterSystemAddonsConfigIngressArgs']]):
890
+ pulumi.set(self, "ingress", value)
891
+
892
+
893
+ @pulumi.input_type
894
+ class ClusterSystemAddonsConfigIngressArgs:
895
+ def __init__(__self__, *,
896
+ disabled: Optional[pulumi.Input[bool]] = None,
897
+ ipv4_vip: Optional[pulumi.Input[str]] = None):
898
+ """
899
+ :param pulumi.Input[bool] disabled: Whether Ingress is disabled.
900
+ :param pulumi.Input[str] ipv4_vip: Ingress VIP.
901
+ """
902
+ if disabled is not None:
903
+ pulumi.set(__self__, "disabled", disabled)
904
+ if ipv4_vip is not None:
905
+ pulumi.set(__self__, "ipv4_vip", ipv4_vip)
906
+
907
+ @property
908
+ @pulumi.getter
909
+ def disabled(self) -> Optional[pulumi.Input[bool]]:
910
+ """
911
+ Whether Ingress is disabled.
912
+ """
913
+ return pulumi.get(self, "disabled")
914
+
915
+ @disabled.setter
916
+ def disabled(self, value: Optional[pulumi.Input[bool]]):
917
+ pulumi.set(self, "disabled", value)
918
+
919
+ @property
920
+ @pulumi.getter(name="ipv4Vip")
921
+ def ipv4_vip(self) -> Optional[pulumi.Input[str]]:
922
+ """
923
+ Ingress VIP.
924
+ """
925
+ return pulumi.get(self, "ipv4_vip")
926
+
927
+ @ipv4_vip.setter
928
+ def ipv4_vip(self, value: Optional[pulumi.Input[str]]):
929
+ pulumi.set(self, "ipv4_vip", value)
930
+
931
+
932
+ @pulumi.input_type
933
+ class NodePoolLocalDiskEncryptionArgs:
934
+ def __init__(__self__, *,
935
+ kms_key: Optional[pulumi.Input[str]] = None,
936
+ kms_key_active_version: Optional[pulumi.Input[str]] = None,
937
+ kms_key_state: Optional[pulumi.Input[str]] = None):
938
+ """
939
+ :param pulumi.Input[str] kms_key: The Cloud KMS CryptoKey e.g. projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey} to use for protecting node local disks.
940
+ If not specified, a Google-managed key will be used instead.
941
+ :param pulumi.Input[str] kms_key_active_version: (Output)
942
+ The Cloud KMS CryptoKeyVersion currently in use for protecting node local disks. Only applicable if kmsKey is set.
943
+ :param pulumi.Input[str] kms_key_state: (Output)
944
+ Availability of the Cloud KMS CryptoKey. If not KEY_AVAILABLE, then nodes may go offline as they cannot access their local data.
945
+ This can be caused by a lack of permissions to use the key, or if the key is disabled or deleted.
946
+ """
947
+ if kms_key is not None:
948
+ pulumi.set(__self__, "kms_key", kms_key)
949
+ if kms_key_active_version is not None:
950
+ pulumi.set(__self__, "kms_key_active_version", kms_key_active_version)
951
+ if kms_key_state is not None:
952
+ pulumi.set(__self__, "kms_key_state", kms_key_state)
953
+
954
+ @property
955
+ @pulumi.getter(name="kmsKey")
956
+ def kms_key(self) -> Optional[pulumi.Input[str]]:
957
+ """
958
+ The Cloud KMS CryptoKey e.g. projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey} to use for protecting node local disks.
959
+ If not specified, a Google-managed key will be used instead.
960
+ """
961
+ return pulumi.get(self, "kms_key")
962
+
963
+ @kms_key.setter
964
+ def kms_key(self, value: Optional[pulumi.Input[str]]):
965
+ pulumi.set(self, "kms_key", value)
966
+
967
+ @property
968
+ @pulumi.getter(name="kmsKeyActiveVersion")
969
+ def kms_key_active_version(self) -> Optional[pulumi.Input[str]]:
970
+ """
971
+ (Output)
972
+ The Cloud KMS CryptoKeyVersion currently in use for protecting node local disks. Only applicable if kmsKey is set.
973
+ """
974
+ return pulumi.get(self, "kms_key_active_version")
975
+
976
+ @kms_key_active_version.setter
977
+ def kms_key_active_version(self, value: Optional[pulumi.Input[str]]):
978
+ pulumi.set(self, "kms_key_active_version", value)
979
+
980
+ @property
981
+ @pulumi.getter(name="kmsKeyState")
982
+ def kms_key_state(self) -> Optional[pulumi.Input[str]]:
983
+ """
984
+ (Output)
985
+ Availability of the Cloud KMS CryptoKey. If not KEY_AVAILABLE, then nodes may go offline as they cannot access their local data.
986
+ This can be caused by a lack of permissions to use the key, or if the key is disabled or deleted.
987
+ """
988
+ return pulumi.get(self, "kms_key_state")
989
+
990
+ @kms_key_state.setter
991
+ def kms_key_state(self, value: Optional[pulumi.Input[str]]):
992
+ pulumi.set(self, "kms_key_state", value)
993
+
994
+
995
+ @pulumi.input_type
996
+ class NodePoolNodeConfigArgs:
997
+ def __init__(__self__, *,
998
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None):
999
+ """
1000
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: "The Kubernetes node labels"
1001
+ """
1002
+ if labels is not None:
1003
+ pulumi.set(__self__, "labels", labels)
1004
+
1005
+ @property
1006
+ @pulumi.getter
1007
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
1008
+ """
1009
+ "The Kubernetes node labels"
1010
+ """
1011
+ return pulumi.get(self, "labels")
1012
+
1013
+ @labels.setter
1014
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
1015
+ pulumi.set(self, "labels", value)
1016
+
1017
+
1018
+ @pulumi.input_type
1019
+ class VpnConnectionDetailArgs:
1020
+ def __init__(__self__, *,
1021
+ cloud_routers: Optional[pulumi.Input[Sequence[pulumi.Input['VpnConnectionDetailCloudRouterArgs']]]] = None,
1022
+ cloud_vpns: Optional[pulumi.Input[Sequence[pulumi.Input['VpnConnectionDetailCloudVpnArgs']]]] = None,
1023
+ error: Optional[pulumi.Input[str]] = None,
1024
+ state: Optional[pulumi.Input[str]] = None):
1025
+ """
1026
+ :param pulumi.Input[Sequence[pulumi.Input['VpnConnectionDetailCloudRouterArgs']]] cloud_routers: (Output)
1027
+ The Cloud Router info.
1028
+ Structure is documented below.
1029
+ :param pulumi.Input[Sequence[pulumi.Input['VpnConnectionDetailCloudVpnArgs']]] cloud_vpns: (Output)
1030
+ Each connection has multiple Cloud VPN gateways.
1031
+ Structure is documented below.
1032
+ :param pulumi.Input[str] error: (Output)
1033
+ The error message. This is only populated when state=ERROR.
1034
+ :param pulumi.Input[str] state: (Output)
1035
+ The current connection state.
1036
+ """
1037
+ if cloud_routers is not None:
1038
+ pulumi.set(__self__, "cloud_routers", cloud_routers)
1039
+ if cloud_vpns is not None:
1040
+ pulumi.set(__self__, "cloud_vpns", cloud_vpns)
1041
+ if error is not None:
1042
+ pulumi.set(__self__, "error", error)
1043
+ if state is not None:
1044
+ pulumi.set(__self__, "state", state)
1045
+
1046
+ @property
1047
+ @pulumi.getter(name="cloudRouters")
1048
+ def cloud_routers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VpnConnectionDetailCloudRouterArgs']]]]:
1049
+ """
1050
+ (Output)
1051
+ The Cloud Router info.
1052
+ Structure is documented below.
1053
+ """
1054
+ return pulumi.get(self, "cloud_routers")
1055
+
1056
+ @cloud_routers.setter
1057
+ def cloud_routers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['VpnConnectionDetailCloudRouterArgs']]]]):
1058
+ pulumi.set(self, "cloud_routers", value)
1059
+
1060
+ @property
1061
+ @pulumi.getter(name="cloudVpns")
1062
+ def cloud_vpns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VpnConnectionDetailCloudVpnArgs']]]]:
1063
+ """
1064
+ (Output)
1065
+ Each connection has multiple Cloud VPN gateways.
1066
+ Structure is documented below.
1067
+ """
1068
+ return pulumi.get(self, "cloud_vpns")
1069
+
1070
+ @cloud_vpns.setter
1071
+ def cloud_vpns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['VpnConnectionDetailCloudVpnArgs']]]]):
1072
+ pulumi.set(self, "cloud_vpns", value)
1073
+
1074
+ @property
1075
+ @pulumi.getter
1076
+ def error(self) -> Optional[pulumi.Input[str]]:
1077
+ """
1078
+ (Output)
1079
+ The error message. This is only populated when state=ERROR.
1080
+ """
1081
+ return pulumi.get(self, "error")
1082
+
1083
+ @error.setter
1084
+ def error(self, value: Optional[pulumi.Input[str]]):
1085
+ pulumi.set(self, "error", value)
1086
+
1087
+ @property
1088
+ @pulumi.getter
1089
+ def state(self) -> Optional[pulumi.Input[str]]:
1090
+ """
1091
+ (Output)
1092
+ The current connection state.
1093
+ """
1094
+ return pulumi.get(self, "state")
1095
+
1096
+ @state.setter
1097
+ def state(self, value: Optional[pulumi.Input[str]]):
1098
+ pulumi.set(self, "state", value)
1099
+
1100
+
1101
+ @pulumi.input_type
1102
+ class VpnConnectionDetailCloudRouterArgs:
1103
+ def __init__(__self__, *,
1104
+ name: Optional[pulumi.Input[str]] = None):
1105
+ """
1106
+ :param pulumi.Input[str] name: The resource name of VPN connection
1107
+ """
1108
+ if name is not None:
1109
+ pulumi.set(__self__, "name", name)
1110
+
1111
+ @property
1112
+ @pulumi.getter
1113
+ def name(self) -> Optional[pulumi.Input[str]]:
1114
+ """
1115
+ The resource name of VPN connection
1116
+ """
1117
+ return pulumi.get(self, "name")
1118
+
1119
+ @name.setter
1120
+ def name(self, value: Optional[pulumi.Input[str]]):
1121
+ pulumi.set(self, "name", value)
1122
+
1123
+
1124
+ @pulumi.input_type
1125
+ class VpnConnectionDetailCloudVpnArgs:
1126
+ def __init__(__self__, *,
1127
+ gateway: Optional[pulumi.Input[str]] = None):
1128
+ """
1129
+ :param pulumi.Input[str] gateway: (Output)
1130
+ The created Cloud VPN gateway name.
1131
+ """
1132
+ if gateway is not None:
1133
+ pulumi.set(__self__, "gateway", gateway)
1134
+
1135
+ @property
1136
+ @pulumi.getter
1137
+ def gateway(self) -> Optional[pulumi.Input[str]]:
1138
+ """
1139
+ (Output)
1140
+ The created Cloud VPN gateway name.
1141
+ """
1142
+ return pulumi.get(self, "gateway")
1143
+
1144
+ @gateway.setter
1145
+ def gateway(self, value: Optional[pulumi.Input[str]]):
1146
+ pulumi.set(self, "gateway", value)
1147
+
1148
+
1149
+ @pulumi.input_type
1150
+ class VpnConnectionVpcProjectArgs:
1151
+ def __init__(__self__, *,
1152
+ project_id: Optional[pulumi.Input[str]] = None):
1153
+ """
1154
+ :param pulumi.Input[str] project_id: The project of the VPC to connect to. If not specified, it is the same as the cluster project.
1155
+ """
1156
+ if project_id is not None:
1157
+ pulumi.set(__self__, "project_id", project_id)
1158
+
1159
+ @property
1160
+ @pulumi.getter(name="projectId")
1161
+ def project_id(self) -> Optional[pulumi.Input[str]]:
1162
+ """
1163
+ The project of the VPC to connect to. If not specified, it is the same as the cluster project.
1164
+ """
1165
+ return pulumi.get(self, "project_id")
1166
+
1167
+ @project_id.setter
1168
+ def project_id(self, value: Optional[pulumi.Input[str]]):
1169
+ pulumi.set(self, "project_id", value)
1170
+
1171
+