pulumi-gcp 7.0.0rc0__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.0rc0.dist-info → pulumi_gcp-7.1.0.dist-info}/METADATA +1 -1
  676. {pulumi_gcp-7.0.0rc0.dist-info → pulumi_gcp-7.1.0.dist-info}/RECORD +678 -650
  677. {pulumi_gcp-7.0.0rc0.dist-info → pulumi_gcp-7.1.0.dist-info}/WHEEL +0 -0
  678. {pulumi_gcp-7.0.0rc0.dist-info → pulumi_gcp-7.1.0.dist-info}/top_level.txt +0 -0
@@ -20,7 +20,9 @@ class ClusterArgs:
20
20
  location: pulumi.Input[str],
21
21
  annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
22
22
  automated_backup_policy: Optional[pulumi.Input['ClusterAutomatedBackupPolicyArgs']] = None,
23
+ cluster_type: Optional[pulumi.Input[str]] = None,
23
24
  continuous_backup_config: Optional[pulumi.Input['ClusterContinuousBackupConfigArgs']] = None,
25
+ deletion_policy: Optional[pulumi.Input[str]] = None,
24
26
  display_name: Optional[pulumi.Input[str]] = None,
25
27
  encryption_config: Optional[pulumi.Input['ClusterEncryptionConfigArgs']] = None,
26
28
  etag: Optional[pulumi.Input[str]] = None,
@@ -30,7 +32,8 @@ class ClusterArgs:
30
32
  network_config: Optional[pulumi.Input['ClusterNetworkConfigArgs']] = None,
31
33
  project: Optional[pulumi.Input[str]] = None,
32
34
  restore_backup_source: Optional[pulumi.Input['ClusterRestoreBackupSourceArgs']] = None,
33
- restore_continuous_backup_source: Optional[pulumi.Input['ClusterRestoreContinuousBackupSourceArgs']] = None):
35
+ restore_continuous_backup_source: Optional[pulumi.Input['ClusterRestoreContinuousBackupSourceArgs']] = None,
36
+ secondary_config: Optional[pulumi.Input['ClusterSecondaryConfigArgs']] = None):
34
37
  """
35
38
  The set of arguments for constructing a Cluster resource.
36
39
  :param pulumi.Input[str] cluster_id: The ID of the alloydb cluster.
@@ -45,9 +48,15 @@ class ClusterArgs:
45
48
  Please refer to the field `effective_annotations` for all of the annotations present on the resource.
46
49
  :param pulumi.Input['ClusterAutomatedBackupPolicyArgs'] automated_backup_policy: The automated backup policy for this cluster. AutomatedBackupPolicy is disabled by default.
47
50
  Structure is documented below.
51
+ :param pulumi.Input[str] cluster_type: The type of cluster. If not set, defaults to PRIMARY.
52
+ Default value is `PRIMARY`.
53
+ Possible values are: `PRIMARY`, `SECONDARY`.
48
54
  :param pulumi.Input['ClusterContinuousBackupConfigArgs'] continuous_backup_config: The continuous backup config for this cluster.
49
55
  If no policy is provided then the default policy will be used. The default policy takes one backup a day and retains backups for 14 days.
50
56
  Structure is documented below.
57
+ :param pulumi.Input[str] deletion_policy: Policy to determine if the cluster should be deleted forcefully.
58
+ Deleting a cluster forcefully, deletes the cluster and all its associated instances within the cluster.
59
+ Deleting a Secondary cluster with a secondary instance REQUIRES setting deletion_policy = "FORCE" otherwise an error is returned. This is needed as there is no support to delete just the secondary instance, and the only way to delete secondary instance is to delete the associated secondary cluster forcefully which also deletes the secondary instance.
51
60
  :param pulumi.Input[str] display_name: User-settable and human-readable display name for the Cluster.
52
61
  :param pulumi.Input['ClusterEncryptionConfigArgs'] encryption_config: EncryptionConfig describes the encryption config of a cluster or a backup that is encrypted with a CMEK (customer-managed encryption key).
53
62
  Structure is documented below.
@@ -70,6 +79,8 @@ class ClusterArgs:
70
79
  Structure is documented below.
71
80
  :param pulumi.Input['ClusterRestoreContinuousBackupSourceArgs'] restore_continuous_backup_source: The source when restoring via point in time recovery (PITR). Conflicts with 'restore_backup_source', both can't be set together.
72
81
  Structure is documented below.
82
+ :param pulumi.Input['ClusterSecondaryConfigArgs'] secondary_config: Configuration of the secondary cluster for Cross Region Replication. This should be set if and only if the cluster is of type SECONDARY.
83
+ Structure is documented below.
73
84
  """
74
85
  pulumi.set(__self__, "cluster_id", cluster_id)
75
86
  pulumi.set(__self__, "location", location)
@@ -77,8 +88,12 @@ class ClusterArgs:
77
88
  pulumi.set(__self__, "annotations", annotations)
78
89
  if automated_backup_policy is not None:
79
90
  pulumi.set(__self__, "automated_backup_policy", automated_backup_policy)
91
+ if cluster_type is not None:
92
+ pulumi.set(__self__, "cluster_type", cluster_type)
80
93
  if continuous_backup_config is not None:
81
94
  pulumi.set(__self__, "continuous_backup_config", continuous_backup_config)
95
+ if deletion_policy is not None:
96
+ pulumi.set(__self__, "deletion_policy", deletion_policy)
82
97
  if display_name is not None:
83
98
  pulumi.set(__self__, "display_name", display_name)
84
99
  if encryption_config is not None:
@@ -102,6 +117,8 @@ class ClusterArgs:
102
117
  pulumi.set(__self__, "restore_backup_source", restore_backup_source)
103
118
  if restore_continuous_backup_source is not None:
104
119
  pulumi.set(__self__, "restore_continuous_backup_source", restore_continuous_backup_source)
120
+ if secondary_config is not None:
121
+ pulumi.set(__self__, "secondary_config", secondary_config)
105
122
 
106
123
  @property
107
124
  @pulumi.getter(name="clusterId")
@@ -159,6 +176,20 @@ class ClusterArgs:
159
176
  def automated_backup_policy(self, value: Optional[pulumi.Input['ClusterAutomatedBackupPolicyArgs']]):
160
177
  pulumi.set(self, "automated_backup_policy", value)
161
178
 
179
+ @property
180
+ @pulumi.getter(name="clusterType")
181
+ def cluster_type(self) -> Optional[pulumi.Input[str]]:
182
+ """
183
+ The type of cluster. If not set, defaults to PRIMARY.
184
+ Default value is `PRIMARY`.
185
+ Possible values are: `PRIMARY`, `SECONDARY`.
186
+ """
187
+ return pulumi.get(self, "cluster_type")
188
+
189
+ @cluster_type.setter
190
+ def cluster_type(self, value: Optional[pulumi.Input[str]]):
191
+ pulumi.set(self, "cluster_type", value)
192
+
162
193
  @property
163
194
  @pulumi.getter(name="continuousBackupConfig")
164
195
  def continuous_backup_config(self) -> Optional[pulumi.Input['ClusterContinuousBackupConfigArgs']]:
@@ -173,6 +204,20 @@ class ClusterArgs:
173
204
  def continuous_backup_config(self, value: Optional[pulumi.Input['ClusterContinuousBackupConfigArgs']]):
174
205
  pulumi.set(self, "continuous_backup_config", value)
175
206
 
207
+ @property
208
+ @pulumi.getter(name="deletionPolicy")
209
+ def deletion_policy(self) -> Optional[pulumi.Input[str]]:
210
+ """
211
+ Policy to determine if the cluster should be deleted forcefully.
212
+ Deleting a cluster forcefully, deletes the cluster and all its associated instances within the cluster.
213
+ Deleting a Secondary cluster with a secondary instance REQUIRES setting deletion_policy = "FORCE" otherwise an error is returned. This is needed as there is no support to delete just the secondary instance, and the only way to delete secondary instance is to delete the associated secondary cluster forcefully which also deletes the secondary instance.
214
+ """
215
+ return pulumi.get(self, "deletion_policy")
216
+
217
+ @deletion_policy.setter
218
+ def deletion_policy(self, value: Optional[pulumi.Input[str]]):
219
+ pulumi.set(self, "deletion_policy", value)
220
+
176
221
  @property
177
222
  @pulumi.getter(name="displayName")
178
223
  def display_name(self) -> Optional[pulumi.Input[str]]:
@@ -308,6 +353,19 @@ class ClusterArgs:
308
353
  def restore_continuous_backup_source(self, value: Optional[pulumi.Input['ClusterRestoreContinuousBackupSourceArgs']]):
309
354
  pulumi.set(self, "restore_continuous_backup_source", value)
310
355
 
356
+ @property
357
+ @pulumi.getter(name="secondaryConfig")
358
+ def secondary_config(self) -> Optional[pulumi.Input['ClusterSecondaryConfigArgs']]:
359
+ """
360
+ Configuration of the secondary cluster for Cross Region Replication. This should be set if and only if the cluster is of type SECONDARY.
361
+ Structure is documented below.
362
+ """
363
+ return pulumi.get(self, "secondary_config")
364
+
365
+ @secondary_config.setter
366
+ def secondary_config(self, value: Optional[pulumi.Input['ClusterSecondaryConfigArgs']]):
367
+ pulumi.set(self, "secondary_config", value)
368
+
311
369
 
312
370
  @pulumi.input_type
313
371
  class _ClusterState:
@@ -316,9 +374,11 @@ class _ClusterState:
316
374
  automated_backup_policy: Optional[pulumi.Input['ClusterAutomatedBackupPolicyArgs']] = None,
317
375
  backup_sources: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterBackupSourceArgs']]]] = None,
318
376
  cluster_id: Optional[pulumi.Input[str]] = None,
377
+ cluster_type: Optional[pulumi.Input[str]] = None,
319
378
  continuous_backup_config: Optional[pulumi.Input['ClusterContinuousBackupConfigArgs']] = None,
320
379
  continuous_backup_infos: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterContinuousBackupInfoArgs']]]] = None,
321
380
  database_version: Optional[pulumi.Input[str]] = None,
381
+ deletion_policy: Optional[pulumi.Input[str]] = None,
322
382
  display_name: Optional[pulumi.Input[str]] = None,
323
383
  effective_annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
324
384
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
@@ -337,6 +397,7 @@ class _ClusterState:
337
397
  reconciling: Optional[pulumi.Input[bool]] = None,
338
398
  restore_backup_source: Optional[pulumi.Input['ClusterRestoreBackupSourceArgs']] = None,
339
399
  restore_continuous_backup_source: Optional[pulumi.Input['ClusterRestoreContinuousBackupSourceArgs']] = None,
400
+ secondary_config: Optional[pulumi.Input['ClusterSecondaryConfigArgs']] = None,
340
401
  state: Optional[pulumi.Input[str]] = None,
341
402
  uid: Optional[pulumi.Input[str]] = None):
342
403
  """
@@ -351,17 +412,22 @@ class _ClusterState:
351
412
  :param pulumi.Input[Sequence[pulumi.Input['ClusterBackupSourceArgs']]] backup_sources: Cluster created from backup.
352
413
  Structure is documented below.
353
414
  :param pulumi.Input[str] cluster_id: The ID of the alloydb cluster.
415
+ :param pulumi.Input[str] cluster_type: The type of cluster. If not set, defaults to PRIMARY.
416
+ Default value is `PRIMARY`.
417
+ Possible values are: `PRIMARY`, `SECONDARY`.
354
418
  :param pulumi.Input['ClusterContinuousBackupConfigArgs'] continuous_backup_config: The continuous backup config for this cluster.
355
419
  If no policy is provided then the default policy will be used. The default policy takes one backup a day and retains backups for 14 days.
356
420
  Structure is documented below.
357
421
  :param pulumi.Input[Sequence[pulumi.Input['ClusterContinuousBackupInfoArgs']]] continuous_backup_infos: ContinuousBackupInfo describes the continuous backup properties of a cluster.
358
422
  Structure is documented below.
359
423
  :param pulumi.Input[str] database_version: The database engine major version. This is an output-only field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation.
424
+ :param pulumi.Input[str] deletion_policy: Policy to determine if the cluster should be deleted forcefully.
425
+ Deleting a cluster forcefully, deletes the cluster and all its associated instances within the cluster.
426
+ Deleting a Secondary cluster with a secondary instance REQUIRES setting deletion_policy = "FORCE" otherwise an error is returned. This is needed as there is no support to delete just the secondary instance, and the only way to delete secondary instance is to delete the associated secondary cluster forcefully which also deletes the secondary instance.
360
427
  :param pulumi.Input[str] display_name: User-settable and human-readable display name for the Cluster.
361
428
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_annotations: All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through
362
429
  Terraform, other clients and services.
363
- :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 Terraform, other
364
- clients and services.
430
+ :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.
365
431
  :param pulumi.Input['ClusterEncryptionConfigArgs'] encryption_config: EncryptionConfig describes the encryption config of a cluster or a backup that is encrypted with a CMEK (customer-managed encryption key).
366
432
  Structure is documented below.
367
433
  :param pulumi.Input[Sequence[pulumi.Input['ClusterEncryptionInfoArgs']]] encryption_infos: (Output)
@@ -398,6 +464,8 @@ class _ClusterState:
398
464
  Structure is documented below.
399
465
  :param pulumi.Input['ClusterRestoreContinuousBackupSourceArgs'] restore_continuous_backup_source: The source when restoring via point in time recovery (PITR). Conflicts with 'restore_backup_source', both can't be set together.
400
466
  Structure is documented below.
467
+ :param pulumi.Input['ClusterSecondaryConfigArgs'] secondary_config: Configuration of the secondary cluster for Cross Region Replication. This should be set if and only if the cluster is of type SECONDARY.
468
+ Structure is documented below.
401
469
  :param pulumi.Input[str] state: Output only. The current serving state of the cluster.
402
470
  :param pulumi.Input[str] uid: The system-generated UID of the resource.
403
471
  """
@@ -409,12 +477,16 @@ class _ClusterState:
409
477
  pulumi.set(__self__, "backup_sources", backup_sources)
410
478
  if cluster_id is not None:
411
479
  pulumi.set(__self__, "cluster_id", cluster_id)
480
+ if cluster_type is not None:
481
+ pulumi.set(__self__, "cluster_type", cluster_type)
412
482
  if continuous_backup_config is not None:
413
483
  pulumi.set(__self__, "continuous_backup_config", continuous_backup_config)
414
484
  if continuous_backup_infos is not None:
415
485
  pulumi.set(__self__, "continuous_backup_infos", continuous_backup_infos)
416
486
  if database_version is not None:
417
487
  pulumi.set(__self__, "database_version", database_version)
488
+ if deletion_policy is not None:
489
+ pulumi.set(__self__, "deletion_policy", deletion_policy)
418
490
  if display_name is not None:
419
491
  pulumi.set(__self__, "display_name", display_name)
420
492
  if effective_annotations is not None:
@@ -454,6 +526,8 @@ class _ClusterState:
454
526
  pulumi.set(__self__, "restore_backup_source", restore_backup_source)
455
527
  if restore_continuous_backup_source is not None:
456
528
  pulumi.set(__self__, "restore_continuous_backup_source", restore_continuous_backup_source)
529
+ if secondary_config is not None:
530
+ pulumi.set(__self__, "secondary_config", secondary_config)
457
531
  if state is not None:
458
532
  pulumi.set(__self__, "state", state)
459
533
  if uid is not None:
@@ -513,6 +587,20 @@ class _ClusterState:
513
587
  def cluster_id(self, value: Optional[pulumi.Input[str]]):
514
588
  pulumi.set(self, "cluster_id", value)
515
589
 
590
+ @property
591
+ @pulumi.getter(name="clusterType")
592
+ def cluster_type(self) -> Optional[pulumi.Input[str]]:
593
+ """
594
+ The type of cluster. If not set, defaults to PRIMARY.
595
+ Default value is `PRIMARY`.
596
+ Possible values are: `PRIMARY`, `SECONDARY`.
597
+ """
598
+ return pulumi.get(self, "cluster_type")
599
+
600
+ @cluster_type.setter
601
+ def cluster_type(self, value: Optional[pulumi.Input[str]]):
602
+ pulumi.set(self, "cluster_type", value)
603
+
516
604
  @property
517
605
  @pulumi.getter(name="continuousBackupConfig")
518
606
  def continuous_backup_config(self) -> Optional[pulumi.Input['ClusterContinuousBackupConfigArgs']]:
@@ -552,6 +640,20 @@ class _ClusterState:
552
640
  def database_version(self, value: Optional[pulumi.Input[str]]):
553
641
  pulumi.set(self, "database_version", value)
554
642
 
643
+ @property
644
+ @pulumi.getter(name="deletionPolicy")
645
+ def deletion_policy(self) -> Optional[pulumi.Input[str]]:
646
+ """
647
+ Policy to determine if the cluster should be deleted forcefully.
648
+ Deleting a cluster forcefully, deletes the cluster and all its associated instances within the cluster.
649
+ Deleting a Secondary cluster with a secondary instance REQUIRES setting deletion_policy = "FORCE" otherwise an error is returned. This is needed as there is no support to delete just the secondary instance, and the only way to delete secondary instance is to delete the associated secondary cluster forcefully which also deletes the secondary instance.
650
+ """
651
+ return pulumi.get(self, "deletion_policy")
652
+
653
+ @deletion_policy.setter
654
+ def deletion_policy(self, value: Optional[pulumi.Input[str]]):
655
+ pulumi.set(self, "deletion_policy", value)
656
+
555
657
  @property
556
658
  @pulumi.getter(name="displayName")
557
659
  def display_name(self) -> Optional[pulumi.Input[str]]:
@@ -581,8 +683,7 @@ class _ClusterState:
581
683
  @pulumi.getter(name="effectiveLabels")
582
684
  def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
583
685
  """
584
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
585
- clients and services.
686
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
586
687
  """
587
688
  return pulumi.get(self, "effective_labels")
588
689
 
@@ -794,6 +895,19 @@ class _ClusterState:
794
895
  def restore_continuous_backup_source(self, value: Optional[pulumi.Input['ClusterRestoreContinuousBackupSourceArgs']]):
795
896
  pulumi.set(self, "restore_continuous_backup_source", value)
796
897
 
898
+ @property
899
+ @pulumi.getter(name="secondaryConfig")
900
+ def secondary_config(self) -> Optional[pulumi.Input['ClusterSecondaryConfigArgs']]:
901
+ """
902
+ Configuration of the secondary cluster for Cross Region Replication. This should be set if and only if the cluster is of type SECONDARY.
903
+ Structure is documented below.
904
+ """
905
+ return pulumi.get(self, "secondary_config")
906
+
907
+ @secondary_config.setter
908
+ def secondary_config(self, value: Optional[pulumi.Input['ClusterSecondaryConfigArgs']]):
909
+ pulumi.set(self, "secondary_config", value)
910
+
797
911
  @property
798
912
  @pulumi.getter
799
913
  def state(self) -> Optional[pulumi.Input[str]]:
@@ -827,7 +941,9 @@ class Cluster(pulumi.CustomResource):
827
941
  annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
828
942
  automated_backup_policy: Optional[pulumi.Input[pulumi.InputType['ClusterAutomatedBackupPolicyArgs']]] = None,
829
943
  cluster_id: Optional[pulumi.Input[str]] = None,
944
+ cluster_type: Optional[pulumi.Input[str]] = None,
830
945
  continuous_backup_config: Optional[pulumi.Input[pulumi.InputType['ClusterContinuousBackupConfigArgs']]] = None,
946
+ deletion_policy: Optional[pulumi.Input[str]] = None,
831
947
  display_name: Optional[pulumi.Input[str]] = None,
832
948
  encryption_config: Optional[pulumi.Input[pulumi.InputType['ClusterEncryptionConfigArgs']]] = None,
833
949
  etag: Optional[pulumi.Input[str]] = None,
@@ -839,6 +955,7 @@ class Cluster(pulumi.CustomResource):
839
955
  project: Optional[pulumi.Input[str]] = None,
840
956
  restore_backup_source: Optional[pulumi.Input[pulumi.InputType['ClusterRestoreBackupSourceArgs']]] = None,
841
957
  restore_continuous_backup_source: Optional[pulumi.Input[pulumi.InputType['ClusterRestoreContinuousBackupSourceArgs']]] = None,
958
+ secondary_config: Optional[pulumi.Input[pulumi.InputType['ClusterSecondaryConfigArgs']]] = None,
842
959
  __props__=None):
843
960
  """
844
961
  A managed alloydb cluster.
@@ -964,10 +1081,60 @@ class Cluster(pulumi.CustomResource):
964
1081
  ))
965
1082
  project = gcp.organizations.get_project()
966
1083
  ```
1084
+ ### Alloydb Secondary Cluster Basic
1085
+
1086
+ ```python
1087
+ import pulumi
1088
+ import pulumi_gcp as gcp
1089
+
1090
+ default = gcp.compute.Network("default")
1091
+ primary_cluster = gcp.alloydb.Cluster("primaryCluster",
1092
+ cluster_id="alloydb-primary-cluster",
1093
+ location="us-central1",
1094
+ network=default.id)
1095
+ private_ip_alloc = gcp.compute.GlobalAddress("privateIpAlloc",
1096
+ address_type="INTERNAL",
1097
+ purpose="VPC_PEERING",
1098
+ prefix_length=16,
1099
+ network=default.id)
1100
+ vpc_connection = gcp.servicenetworking.Connection("vpcConnection",
1101
+ network=default.id,
1102
+ service="servicenetworking.googleapis.com",
1103
+ reserved_peering_ranges=[private_ip_alloc.name])
1104
+ primary_instance = gcp.alloydb.Instance("primaryInstance",
1105
+ cluster=primary_cluster.name,
1106
+ instance_id="alloydb-primary-instance",
1107
+ instance_type="PRIMARY",
1108
+ machine_config=gcp.alloydb.InstanceMachineConfigArgs(
1109
+ cpu_count=2,
1110
+ ),
1111
+ opts=pulumi.ResourceOptions(depends_on=[vpc_connection]))
1112
+ secondary = gcp.alloydb.Cluster("secondary",
1113
+ cluster_id="alloydb-secondary-cluster",
1114
+ location="us-east1",
1115
+ network=default.id,
1116
+ cluster_type="SECONDARY",
1117
+ continuous_backup_config=gcp.alloydb.ClusterContinuousBackupConfigArgs(
1118
+ enabled=False,
1119
+ ),
1120
+ secondary_config=gcp.alloydb.ClusterSecondaryConfigArgs(
1121
+ primary_cluster_name=primary_cluster.name,
1122
+ ),
1123
+ opts=pulumi.ResourceOptions(depends_on=[primary_instance]))
1124
+ project = gcp.organizations.get_project()
1125
+ ```
967
1126
 
968
1127
  ## Import
969
1128
 
970
- Cluster can be imported using any of these accepted formats
1129
+ Cluster can be imported using any of these accepted formats* `projects/{{project}}/locations/{{location}}/clusters/{{cluster_id}}` * `{{project}}/{{location}}/{{cluster_id}}` * `{{location}}/{{cluster_id}}` * `{{cluster_id}}` In Terraform v1.5.0 and later, use an [`import` block](https://developer.hashicorp.com/terraform/language/import) to import Cluster using one of the formats above. For exampletf import {
1130
+
1131
+ id = "projects/{{project}}/locations/{{location}}/clusters/{{cluster_id}}"
1132
+
1133
+ to = google_alloydb_cluster.default }
1134
+
1135
+ ```sh
1136
+ $ pulumi import gcp:alloydb/cluster:Cluster When using the [`terraform import` command](https://developer.hashicorp.com/terraform/cli/commands/import), Cluster can be imported using one of the formats above. For example
1137
+ ```
971
1138
 
972
1139
  ```sh
973
1140
  $ pulumi import gcp:alloydb/cluster:Cluster default projects/{{project}}/locations/{{location}}/clusters/{{cluster_id}}
@@ -995,9 +1162,15 @@ class Cluster(pulumi.CustomResource):
995
1162
  :param pulumi.Input[pulumi.InputType['ClusterAutomatedBackupPolicyArgs']] automated_backup_policy: The automated backup policy for this cluster. AutomatedBackupPolicy is disabled by default.
996
1163
  Structure is documented below.
997
1164
  :param pulumi.Input[str] cluster_id: The ID of the alloydb cluster.
1165
+ :param pulumi.Input[str] cluster_type: The type of cluster. If not set, defaults to PRIMARY.
1166
+ Default value is `PRIMARY`.
1167
+ Possible values are: `PRIMARY`, `SECONDARY`.
998
1168
  :param pulumi.Input[pulumi.InputType['ClusterContinuousBackupConfigArgs']] continuous_backup_config: The continuous backup config for this cluster.
999
1169
  If no policy is provided then the default policy will be used. The default policy takes one backup a day and retains backups for 14 days.
1000
1170
  Structure is documented below.
1171
+ :param pulumi.Input[str] deletion_policy: Policy to determine if the cluster should be deleted forcefully.
1172
+ Deleting a cluster forcefully, deletes the cluster and all its associated instances within the cluster.
1173
+ Deleting a Secondary cluster with a secondary instance REQUIRES setting deletion_policy = "FORCE" otherwise an error is returned. This is needed as there is no support to delete just the secondary instance, and the only way to delete secondary instance is to delete the associated secondary cluster forcefully which also deletes the secondary instance.
1001
1174
  :param pulumi.Input[str] display_name: User-settable and human-readable display name for the Cluster.
1002
1175
  :param pulumi.Input[pulumi.InputType['ClusterEncryptionConfigArgs']] encryption_config: EncryptionConfig describes the encryption config of a cluster or a backup that is encrypted with a CMEK (customer-managed encryption key).
1003
1176
  Structure is documented below.
@@ -1024,6 +1197,8 @@ class Cluster(pulumi.CustomResource):
1024
1197
  Structure is documented below.
1025
1198
  :param pulumi.Input[pulumi.InputType['ClusterRestoreContinuousBackupSourceArgs']] restore_continuous_backup_source: The source when restoring via point in time recovery (PITR). Conflicts with 'restore_backup_source', both can't be set together.
1026
1199
  Structure is documented below.
1200
+ :param pulumi.Input[pulumi.InputType['ClusterSecondaryConfigArgs']] secondary_config: Configuration of the secondary cluster for Cross Region Replication. This should be set if and only if the cluster is of type SECONDARY.
1201
+ Structure is documented below.
1027
1202
  """
1028
1203
  ...
1029
1204
  @overload
@@ -1155,10 +1330,60 @@ class Cluster(pulumi.CustomResource):
1155
1330
  ))
1156
1331
  project = gcp.organizations.get_project()
1157
1332
  ```
1333
+ ### Alloydb Secondary Cluster Basic
1334
+
1335
+ ```python
1336
+ import pulumi
1337
+ import pulumi_gcp as gcp
1338
+
1339
+ default = gcp.compute.Network("default")
1340
+ primary_cluster = gcp.alloydb.Cluster("primaryCluster",
1341
+ cluster_id="alloydb-primary-cluster",
1342
+ location="us-central1",
1343
+ network=default.id)
1344
+ private_ip_alloc = gcp.compute.GlobalAddress("privateIpAlloc",
1345
+ address_type="INTERNAL",
1346
+ purpose="VPC_PEERING",
1347
+ prefix_length=16,
1348
+ network=default.id)
1349
+ vpc_connection = gcp.servicenetworking.Connection("vpcConnection",
1350
+ network=default.id,
1351
+ service="servicenetworking.googleapis.com",
1352
+ reserved_peering_ranges=[private_ip_alloc.name])
1353
+ primary_instance = gcp.alloydb.Instance("primaryInstance",
1354
+ cluster=primary_cluster.name,
1355
+ instance_id="alloydb-primary-instance",
1356
+ instance_type="PRIMARY",
1357
+ machine_config=gcp.alloydb.InstanceMachineConfigArgs(
1358
+ cpu_count=2,
1359
+ ),
1360
+ opts=pulumi.ResourceOptions(depends_on=[vpc_connection]))
1361
+ secondary = gcp.alloydb.Cluster("secondary",
1362
+ cluster_id="alloydb-secondary-cluster",
1363
+ location="us-east1",
1364
+ network=default.id,
1365
+ cluster_type="SECONDARY",
1366
+ continuous_backup_config=gcp.alloydb.ClusterContinuousBackupConfigArgs(
1367
+ enabled=False,
1368
+ ),
1369
+ secondary_config=gcp.alloydb.ClusterSecondaryConfigArgs(
1370
+ primary_cluster_name=primary_cluster.name,
1371
+ ),
1372
+ opts=pulumi.ResourceOptions(depends_on=[primary_instance]))
1373
+ project = gcp.organizations.get_project()
1374
+ ```
1158
1375
 
1159
1376
  ## Import
1160
1377
 
1161
- Cluster can be imported using any of these accepted formats
1378
+ Cluster can be imported using any of these accepted formats* `projects/{{project}}/locations/{{location}}/clusters/{{cluster_id}}` * `{{project}}/{{location}}/{{cluster_id}}` * `{{location}}/{{cluster_id}}` * `{{cluster_id}}` In Terraform v1.5.0 and later, use an [`import` block](https://developer.hashicorp.com/terraform/language/import) to import Cluster using one of the formats above. For exampletf import {
1379
+
1380
+ id = "projects/{{project}}/locations/{{location}}/clusters/{{cluster_id}}"
1381
+
1382
+ to = google_alloydb_cluster.default }
1383
+
1384
+ ```sh
1385
+ $ pulumi import gcp:alloydb/cluster:Cluster When using the [`terraform import` command](https://developer.hashicorp.com/terraform/cli/commands/import), Cluster can be imported using one of the formats above. For example
1386
+ ```
1162
1387
 
1163
1388
  ```sh
1164
1389
  $ pulumi import gcp:alloydb/cluster:Cluster default projects/{{project}}/locations/{{location}}/clusters/{{cluster_id}}
@@ -1194,7 +1419,9 @@ class Cluster(pulumi.CustomResource):
1194
1419
  annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1195
1420
  automated_backup_policy: Optional[pulumi.Input[pulumi.InputType['ClusterAutomatedBackupPolicyArgs']]] = None,
1196
1421
  cluster_id: Optional[pulumi.Input[str]] = None,
1422
+ cluster_type: Optional[pulumi.Input[str]] = None,
1197
1423
  continuous_backup_config: Optional[pulumi.Input[pulumi.InputType['ClusterContinuousBackupConfigArgs']]] = None,
1424
+ deletion_policy: Optional[pulumi.Input[str]] = None,
1198
1425
  display_name: Optional[pulumi.Input[str]] = None,
1199
1426
  encryption_config: Optional[pulumi.Input[pulumi.InputType['ClusterEncryptionConfigArgs']]] = None,
1200
1427
  etag: Optional[pulumi.Input[str]] = None,
@@ -1206,6 +1433,7 @@ class Cluster(pulumi.CustomResource):
1206
1433
  project: Optional[pulumi.Input[str]] = None,
1207
1434
  restore_backup_source: Optional[pulumi.Input[pulumi.InputType['ClusterRestoreBackupSourceArgs']]] = None,
1208
1435
  restore_continuous_backup_source: Optional[pulumi.Input[pulumi.InputType['ClusterRestoreContinuousBackupSourceArgs']]] = None,
1436
+ secondary_config: Optional[pulumi.Input[pulumi.InputType['ClusterSecondaryConfigArgs']]] = None,
1209
1437
  __props__=None):
1210
1438
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1211
1439
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -1220,7 +1448,9 @@ class Cluster(pulumi.CustomResource):
1220
1448
  if cluster_id is None and not opts.urn:
1221
1449
  raise TypeError("Missing required property 'cluster_id'")
1222
1450
  __props__.__dict__["cluster_id"] = cluster_id
1451
+ __props__.__dict__["cluster_type"] = cluster_type
1223
1452
  __props__.__dict__["continuous_backup_config"] = continuous_backup_config
1453
+ __props__.__dict__["deletion_policy"] = deletion_policy
1224
1454
  __props__.__dict__["display_name"] = display_name
1225
1455
  __props__.__dict__["encryption_config"] = encryption_config
1226
1456
  __props__.__dict__["etag"] = etag
@@ -1234,6 +1464,7 @@ class Cluster(pulumi.CustomResource):
1234
1464
  __props__.__dict__["project"] = project
1235
1465
  __props__.__dict__["restore_backup_source"] = restore_backup_source
1236
1466
  __props__.__dict__["restore_continuous_backup_source"] = restore_continuous_backup_source
1467
+ __props__.__dict__["secondary_config"] = secondary_config
1237
1468
  __props__.__dict__["backup_sources"] = None
1238
1469
  __props__.__dict__["continuous_backup_infos"] = None
1239
1470
  __props__.__dict__["database_version"] = None
@@ -1262,9 +1493,11 @@ class Cluster(pulumi.CustomResource):
1262
1493
  automated_backup_policy: Optional[pulumi.Input[pulumi.InputType['ClusterAutomatedBackupPolicyArgs']]] = None,
1263
1494
  backup_sources: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterBackupSourceArgs']]]]] = None,
1264
1495
  cluster_id: Optional[pulumi.Input[str]] = None,
1496
+ cluster_type: Optional[pulumi.Input[str]] = None,
1265
1497
  continuous_backup_config: Optional[pulumi.Input[pulumi.InputType['ClusterContinuousBackupConfigArgs']]] = None,
1266
1498
  continuous_backup_infos: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterContinuousBackupInfoArgs']]]]] = None,
1267
1499
  database_version: Optional[pulumi.Input[str]] = None,
1500
+ deletion_policy: Optional[pulumi.Input[str]] = None,
1268
1501
  display_name: Optional[pulumi.Input[str]] = None,
1269
1502
  effective_annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1270
1503
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
@@ -1283,6 +1516,7 @@ class Cluster(pulumi.CustomResource):
1283
1516
  reconciling: Optional[pulumi.Input[bool]] = None,
1284
1517
  restore_backup_source: Optional[pulumi.Input[pulumi.InputType['ClusterRestoreBackupSourceArgs']]] = None,
1285
1518
  restore_continuous_backup_source: Optional[pulumi.Input[pulumi.InputType['ClusterRestoreContinuousBackupSourceArgs']]] = None,
1519
+ secondary_config: Optional[pulumi.Input[pulumi.InputType['ClusterSecondaryConfigArgs']]] = None,
1286
1520
  state: Optional[pulumi.Input[str]] = None,
1287
1521
  uid: Optional[pulumi.Input[str]] = None) -> 'Cluster':
1288
1522
  """
@@ -1302,17 +1536,22 @@ class Cluster(pulumi.CustomResource):
1302
1536
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterBackupSourceArgs']]]] backup_sources: Cluster created from backup.
1303
1537
  Structure is documented below.
1304
1538
  :param pulumi.Input[str] cluster_id: The ID of the alloydb cluster.
1539
+ :param pulumi.Input[str] cluster_type: The type of cluster. If not set, defaults to PRIMARY.
1540
+ Default value is `PRIMARY`.
1541
+ Possible values are: `PRIMARY`, `SECONDARY`.
1305
1542
  :param pulumi.Input[pulumi.InputType['ClusterContinuousBackupConfigArgs']] continuous_backup_config: The continuous backup config for this cluster.
1306
1543
  If no policy is provided then the default policy will be used. The default policy takes one backup a day and retains backups for 14 days.
1307
1544
  Structure is documented below.
1308
1545
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterContinuousBackupInfoArgs']]]] continuous_backup_infos: ContinuousBackupInfo describes the continuous backup properties of a cluster.
1309
1546
  Structure is documented below.
1310
1547
  :param pulumi.Input[str] database_version: The database engine major version. This is an output-only field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation.
1548
+ :param pulumi.Input[str] deletion_policy: Policy to determine if the cluster should be deleted forcefully.
1549
+ Deleting a cluster forcefully, deletes the cluster and all its associated instances within the cluster.
1550
+ Deleting a Secondary cluster with a secondary instance REQUIRES setting deletion_policy = "FORCE" otherwise an error is returned. This is needed as there is no support to delete just the secondary instance, and the only way to delete secondary instance is to delete the associated secondary cluster forcefully which also deletes the secondary instance.
1311
1551
  :param pulumi.Input[str] display_name: User-settable and human-readable display name for the Cluster.
1312
1552
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_annotations: All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through
1313
1553
  Terraform, other clients and services.
1314
- :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 Terraform, other
1315
- clients and services.
1554
+ :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.
1316
1555
  :param pulumi.Input[pulumi.InputType['ClusterEncryptionConfigArgs']] encryption_config: EncryptionConfig describes the encryption config of a cluster or a backup that is encrypted with a CMEK (customer-managed encryption key).
1317
1556
  Structure is documented below.
1318
1557
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterEncryptionInfoArgs']]]] encryption_infos: (Output)
@@ -1349,6 +1588,8 @@ class Cluster(pulumi.CustomResource):
1349
1588
  Structure is documented below.
1350
1589
  :param pulumi.Input[pulumi.InputType['ClusterRestoreContinuousBackupSourceArgs']] restore_continuous_backup_source: The source when restoring via point in time recovery (PITR). Conflicts with 'restore_backup_source', both can't be set together.
1351
1590
  Structure is documented below.
1591
+ :param pulumi.Input[pulumi.InputType['ClusterSecondaryConfigArgs']] secondary_config: Configuration of the secondary cluster for Cross Region Replication. This should be set if and only if the cluster is of type SECONDARY.
1592
+ Structure is documented below.
1352
1593
  :param pulumi.Input[str] state: Output only. The current serving state of the cluster.
1353
1594
  :param pulumi.Input[str] uid: The system-generated UID of the resource.
1354
1595
  """
@@ -1360,9 +1601,11 @@ class Cluster(pulumi.CustomResource):
1360
1601
  __props__.__dict__["automated_backup_policy"] = automated_backup_policy
1361
1602
  __props__.__dict__["backup_sources"] = backup_sources
1362
1603
  __props__.__dict__["cluster_id"] = cluster_id
1604
+ __props__.__dict__["cluster_type"] = cluster_type
1363
1605
  __props__.__dict__["continuous_backup_config"] = continuous_backup_config
1364
1606
  __props__.__dict__["continuous_backup_infos"] = continuous_backup_infos
1365
1607
  __props__.__dict__["database_version"] = database_version
1608
+ __props__.__dict__["deletion_policy"] = deletion_policy
1366
1609
  __props__.__dict__["display_name"] = display_name
1367
1610
  __props__.__dict__["effective_annotations"] = effective_annotations
1368
1611
  __props__.__dict__["effective_labels"] = effective_labels
@@ -1381,6 +1624,7 @@ class Cluster(pulumi.CustomResource):
1381
1624
  __props__.__dict__["reconciling"] = reconciling
1382
1625
  __props__.__dict__["restore_backup_source"] = restore_backup_source
1383
1626
  __props__.__dict__["restore_continuous_backup_source"] = restore_continuous_backup_source
1627
+ __props__.__dict__["secondary_config"] = secondary_config
1384
1628
  __props__.__dict__["state"] = state
1385
1629
  __props__.__dict__["uid"] = uid
1386
1630
  return Cluster(resource_name, opts=opts, __props__=__props__)
@@ -1423,6 +1667,16 @@ class Cluster(pulumi.CustomResource):
1423
1667
  """
1424
1668
  return pulumi.get(self, "cluster_id")
1425
1669
 
1670
+ @property
1671
+ @pulumi.getter(name="clusterType")
1672
+ def cluster_type(self) -> pulumi.Output[Optional[str]]:
1673
+ """
1674
+ The type of cluster. If not set, defaults to PRIMARY.
1675
+ Default value is `PRIMARY`.
1676
+ Possible values are: `PRIMARY`, `SECONDARY`.
1677
+ """
1678
+ return pulumi.get(self, "cluster_type")
1679
+
1426
1680
  @property
1427
1681
  @pulumi.getter(name="continuousBackupConfig")
1428
1682
  def continuous_backup_config(self) -> pulumi.Output['outputs.ClusterContinuousBackupConfig']:
@@ -1450,6 +1704,16 @@ class Cluster(pulumi.CustomResource):
1450
1704
  """
1451
1705
  return pulumi.get(self, "database_version")
1452
1706
 
1707
+ @property
1708
+ @pulumi.getter(name="deletionPolicy")
1709
+ def deletion_policy(self) -> pulumi.Output[Optional[str]]:
1710
+ """
1711
+ Policy to determine if the cluster should be deleted forcefully.
1712
+ Deleting a cluster forcefully, deletes the cluster and all its associated instances within the cluster.
1713
+ Deleting a Secondary cluster with a secondary instance REQUIRES setting deletion_policy = "FORCE" otherwise an error is returned. This is needed as there is no support to delete just the secondary instance, and the only way to delete secondary instance is to delete the associated secondary cluster forcefully which also deletes the secondary instance.
1714
+ """
1715
+ return pulumi.get(self, "deletion_policy")
1716
+
1453
1717
  @property
1454
1718
  @pulumi.getter(name="displayName")
1455
1719
  def display_name(self) -> pulumi.Output[Optional[str]]:
@@ -1471,8 +1735,7 @@ class Cluster(pulumi.CustomResource):
1471
1735
  @pulumi.getter(name="effectiveLabels")
1472
1736
  def effective_labels(self) -> pulumi.Output[Mapping[str, str]]:
1473
1737
  """
1474
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
1475
- clients and services.
1738
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
1476
1739
  """
1477
1740
  return pulumi.get(self, "effective_labels")
1478
1741
 
@@ -1620,6 +1883,15 @@ class Cluster(pulumi.CustomResource):
1620
1883
  """
1621
1884
  return pulumi.get(self, "restore_continuous_backup_source")
1622
1885
 
1886
+ @property
1887
+ @pulumi.getter(name="secondaryConfig")
1888
+ def secondary_config(self) -> pulumi.Output[Optional['outputs.ClusterSecondaryConfig']]:
1889
+ """
1890
+ Configuration of the secondary cluster for Cross Region Replication. This should be set if and only if the cluster is of type SECONDARY.
1891
+ Structure is documented below.
1892
+ """
1893
+ return pulumi.get(self, "secondary_config")
1894
+
1623
1895
  @property
1624
1896
  @pulumi.getter
1625
1897
  def state(self) -> pulumi.Output[str]: