pulumi-gcp 8.7.0a1730183903__py3-none-any.whl → 8.8.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (437) hide show
  1. pulumi_gcp/__init__.py +78 -0
  2. pulumi_gcp/accesscontextmanager/access_policy_iam_binding.py +4 -4
  3. pulumi_gcp/accesscontextmanager/access_policy_iam_member.py +4 -4
  4. pulumi_gcp/accesscontextmanager/access_policy_iam_policy.py +4 -4
  5. pulumi_gcp/accesscontextmanager/service_perimeter.py +2 -0
  6. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_egress_policy.py +4 -0
  7. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_ingress_policy.py +4 -0
  8. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +4 -0
  9. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +4 -0
  10. pulumi_gcp/accesscontextmanager/service_perimeters.py +2 -0
  11. pulumi_gcp/apigateway/api_config_iam_binding.py +2 -2
  12. pulumi_gcp/apigateway/api_config_iam_member.py +2 -2
  13. pulumi_gcp/apigateway/api_config_iam_policy.py +2 -2
  14. pulumi_gcp/apigateway/api_iam_binding.py +2 -2
  15. pulumi_gcp/apigateway/api_iam_member.py +2 -2
  16. pulumi_gcp/apigateway/api_iam_policy.py +2 -2
  17. pulumi_gcp/apigateway/gateway_iam_binding.py +2 -2
  18. pulumi_gcp/apigateway/gateway_iam_member.py +2 -2
  19. pulumi_gcp/apigateway/gateway_iam_policy.py +2 -2
  20. pulumi_gcp/apigee/__init__.py +2 -0
  21. pulumi_gcp/apigee/_inputs.py +108 -0
  22. pulumi_gcp/apigee/app_group.py +811 -0
  23. pulumi_gcp/apigee/developer.py +757 -0
  24. pulumi_gcp/apigee/environment_iam_binding.py +4 -4
  25. pulumi_gcp/apigee/environment_iam_member.py +4 -4
  26. pulumi_gcp/apigee/environment_iam_policy.py +4 -4
  27. pulumi_gcp/apigee/outputs.py +64 -0
  28. pulumi_gcp/appengine/engine_split_traffic.py +4 -4
  29. pulumi_gcp/apphub/_inputs.py +6 -3
  30. pulumi_gcp/apphub/application.py +30 -4
  31. pulumi_gcp/apphub/outputs.py +8 -4
  32. pulumi_gcp/artifactregistry/get_docker_image.py +40 -0
  33. pulumi_gcp/artifactregistry/repository_iam_binding.py +2 -2
  34. pulumi_gcp/artifactregistry/repository_iam_member.py +2 -2
  35. pulumi_gcp/artifactregistry/repository_iam_policy.py +2 -2
  36. pulumi_gcp/assuredworkloads/_inputs.py +34 -0
  37. pulumi_gcp/assuredworkloads/outputs.py +37 -0
  38. pulumi_gcp/assuredworkloads/workload.py +56 -3
  39. pulumi_gcp/backupdisasterrecovery/_inputs.py +0 -6
  40. pulumi_gcp/backupdisasterrecovery/management_server.py +80 -34
  41. pulumi_gcp/backupdisasterrecovery/outputs.py +0 -4
  42. pulumi_gcp/biglake/table.py +12 -12
  43. pulumi_gcp/bigquery/_inputs.py +60 -0
  44. pulumi_gcp/bigquery/connection.py +14 -14
  45. pulumi_gcp/bigquery/connection_iam_binding.py +2 -2
  46. pulumi_gcp/bigquery/connection_iam_member.py +2 -2
  47. pulumi_gcp/bigquery/connection_iam_policy.py +2 -2
  48. pulumi_gcp/bigquery/dataset.py +99 -2
  49. pulumi_gcp/bigquery/dataset_access.py +2 -2
  50. pulumi_gcp/bigquery/dataset_iam_binding.py +53 -0
  51. pulumi_gcp/bigquery/dataset_iam_member.py +53 -0
  52. pulumi_gcp/bigquery/dataset_iam_policy.py +32 -0
  53. pulumi_gcp/bigquery/get_dataset.py +12 -1
  54. pulumi_gcp/bigquery/iam_binding.py +2 -2
  55. pulumi_gcp/bigquery/iam_member.py +2 -2
  56. pulumi_gcp/bigquery/iam_policy.py +2 -2
  57. pulumi_gcp/bigquery/job.py +6 -6
  58. pulumi_gcp/bigquery/outputs.py +87 -0
  59. pulumi_gcp/bigquery/routine.py +6 -6
  60. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_binding.py +2 -2
  61. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_member.py +2 -2
  62. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_policy.py +2 -2
  63. pulumi_gcp/bigqueryanalyticshub/listing_iam_binding.py +2 -2
  64. pulumi_gcp/bigqueryanalyticshub/listing_iam_member.py +2 -2
  65. pulumi_gcp/bigqueryanalyticshub/listing_iam_policy.py +2 -2
  66. pulumi_gcp/bigquerydatapolicy/data_policy_iam_binding.py +2 -2
  67. pulumi_gcp/bigquerydatapolicy/data_policy_iam_member.py +2 -2
  68. pulumi_gcp/bigquerydatapolicy/data_policy_iam_policy.py +2 -2
  69. pulumi_gcp/binaryauthorization/attestor_iam_binding.py +2 -2
  70. pulumi_gcp/binaryauthorization/attestor_iam_member.py +2 -2
  71. pulumi_gcp/binaryauthorization/attestor_iam_policy.py +2 -2
  72. pulumi_gcp/certificateauthority/ca_pool_iam_binding.py +2 -2
  73. pulumi_gcp/certificateauthority/ca_pool_iam_member.py +2 -2
  74. pulumi_gcp/certificateauthority/ca_pool_iam_policy.py +2 -2
  75. pulumi_gcp/certificateauthority/certificate_template_iam_binding.py +2 -2
  76. pulumi_gcp/certificateauthority/certificate_template_iam_member.py +2 -2
  77. pulumi_gcp/certificateauthority/certificate_template_iam_policy.py +2 -2
  78. pulumi_gcp/cloudbuild/trigger.py +18 -18
  79. pulumi_gcp/cloudbuildv2/connection_iam_binding.py +2 -2
  80. pulumi_gcp/cloudbuildv2/connection_iam_member.py +2 -2
  81. pulumi_gcp/cloudbuildv2/connection_iam_policy.py +2 -2
  82. pulumi_gcp/clouddeploy/delivery_pipeline.py +10 -10
  83. pulumi_gcp/cloudfunctions/function_iam_binding.py +2 -2
  84. pulumi_gcp/cloudfunctions/function_iam_member.py +2 -2
  85. pulumi_gcp/cloudfunctions/function_iam_policy.py +2 -2
  86. pulumi_gcp/cloudfunctionsv2/function.py +22 -22
  87. pulumi_gcp/cloudfunctionsv2/function_iam_binding.py +2 -2
  88. pulumi_gcp/cloudfunctionsv2/function_iam_member.py +2 -2
  89. pulumi_gcp/cloudfunctionsv2/function_iam_policy.py +2 -2
  90. pulumi_gcp/cloudrun/iam_binding.py +2 -2
  91. pulumi_gcp/cloudrun/iam_member.py +2 -2
  92. pulumi_gcp/cloudrun/iam_policy.py +2 -2
  93. pulumi_gcp/cloudrun/service.py +24 -24
  94. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  95. pulumi_gcp/cloudrunv2/job_iam_binding.py +2 -2
  96. pulumi_gcp/cloudrunv2/job_iam_member.py +2 -2
  97. pulumi_gcp/cloudrunv2/job_iam_policy.py +2 -2
  98. pulumi_gcp/cloudrunv2/service.py +94 -2
  99. pulumi_gcp/cloudrunv2/service_iam_binding.py +2 -2
  100. pulumi_gcp/cloudrunv2/service_iam_member.py +2 -2
  101. pulumi_gcp/cloudrunv2/service_iam_policy.py +2 -2
  102. pulumi_gcp/cloudscheduler/job.py +4 -4
  103. pulumi_gcp/cloudtasks/queue_iam_binding.py +2 -2
  104. pulumi_gcp/cloudtasks/queue_iam_member.py +2 -2
  105. pulumi_gcp/cloudtasks/queue_iam_policy.py +2 -2
  106. pulumi_gcp/compute/__init__.py +1 -0
  107. pulumi_gcp/compute/_inputs.py +396 -166
  108. pulumi_gcp/compute/backend_bucket_iam_binding.py +2 -2
  109. pulumi_gcp/compute/backend_bucket_iam_member.py +2 -2
  110. pulumi_gcp/compute/backend_bucket_iam_policy.py +2 -2
  111. pulumi_gcp/compute/backend_service.py +76 -0
  112. pulumi_gcp/compute/backend_service_iam_binding.py +2 -2
  113. pulumi_gcp/compute/backend_service_iam_member.py +2 -2
  114. pulumi_gcp/compute/backend_service_iam_policy.py +2 -2
  115. pulumi_gcp/compute/disk_iam_binding.py +2 -2
  116. pulumi_gcp/compute/disk_iam_member.py +2 -2
  117. pulumi_gcp/compute/disk_iam_policy.py +2 -2
  118. pulumi_gcp/compute/get_backend_service.py +12 -1
  119. pulumi_gcp/compute/get_instance.py +29 -1
  120. pulumi_gcp/compute/get_instance_guest_attributes.py +277 -0
  121. pulumi_gcp/compute/get_instance_template.py +29 -1
  122. pulumi_gcp/compute/get_region_instance_group_manager.py +0 -18
  123. pulumi_gcp/compute/get_region_instance_template.py +29 -1
  124. pulumi_gcp/compute/image.py +76 -22
  125. pulumi_gcp/compute/image_iam_binding.py +2 -2
  126. pulumi_gcp/compute/image_iam_member.py +2 -2
  127. pulumi_gcp/compute/image_iam_policy.py +2 -2
  128. pulumi_gcp/compute/instance.py +89 -0
  129. pulumi_gcp/compute/instance_from_machine_image.py +82 -0
  130. pulumi_gcp/compute/instance_from_template.py +82 -0
  131. pulumi_gcp/compute/instance_iam_binding.py +2 -2
  132. pulumi_gcp/compute/instance_iam_member.py +2 -2
  133. pulumi_gcp/compute/instance_iam_policy.py +2 -2
  134. pulumi_gcp/compute/instance_template.py +75 -0
  135. pulumi_gcp/compute/machine_image_iam_binding.py +2 -2
  136. pulumi_gcp/compute/machine_image_iam_member.py +2 -2
  137. pulumi_gcp/compute/machine_image_iam_policy.py +2 -2
  138. pulumi_gcp/compute/network_firewall_policy_association.py +76 -50
  139. pulumi_gcp/compute/network_firewall_policy_rule.py +149 -103
  140. pulumi_gcp/compute/outputs.py +367 -110
  141. pulumi_gcp/compute/region_backend_service.py +94 -0
  142. pulumi_gcp/compute/region_backend_service_iam_binding.py +2 -2
  143. pulumi_gcp/compute/region_backend_service_iam_member.py +2 -2
  144. pulumi_gcp/compute/region_backend_service_iam_policy.py +2 -2
  145. pulumi_gcp/compute/region_disk_iam_binding.py +2 -2
  146. pulumi_gcp/compute/region_disk_iam_member.py +2 -2
  147. pulumi_gcp/compute/region_disk_iam_policy.py +2 -2
  148. pulumi_gcp/compute/region_instance_template.py +75 -0
  149. pulumi_gcp/compute/region_network_endpoint_group.py +6 -4
  150. pulumi_gcp/compute/region_network_firewall_policy_association.py +104 -54
  151. pulumi_gcp/compute/region_network_firewall_policy_rule.py +160 -107
  152. pulumi_gcp/compute/region_security_policy_rule.py +74 -0
  153. pulumi_gcp/compute/security_policy_rule.py +111 -13
  154. pulumi_gcp/compute/snapshot_iam_binding.py +2 -2
  155. pulumi_gcp/compute/snapshot_iam_member.py +2 -2
  156. pulumi_gcp/compute/snapshot_iam_policy.py +2 -2
  157. pulumi_gcp/compute/subnetwork_iam_binding.py +2 -2
  158. pulumi_gcp/compute/subnetwork_iam_member.py +2 -2
  159. pulumi_gcp/compute/subnetwork_iam_policy.py +2 -2
  160. pulumi_gcp/compute/url_map.py +10 -10
  161. pulumi_gcp/config/__init__.pyi +4 -0
  162. pulumi_gcp/config/vars.py +8 -0
  163. pulumi_gcp/container/attached_cluster.py +9 -6
  164. pulumi_gcp/container/aws_node_pool.py +12 -12
  165. pulumi_gcp/container/outputs.py +2 -2
  166. pulumi_gcp/containeranalysis/note_iam_binding.py +2 -2
  167. pulumi_gcp/containeranalysis/note_iam_member.py +2 -2
  168. pulumi_gcp/containeranalysis/note_iam_policy.py +2 -2
  169. pulumi_gcp/datacatalog/entry_group_iam_binding.py +2 -2
  170. pulumi_gcp/datacatalog/entry_group_iam_member.py +2 -2
  171. pulumi_gcp/datacatalog/entry_group_iam_policy.py +2 -2
  172. pulumi_gcp/datacatalog/policy_tag_iam_binding.py +4 -4
  173. pulumi_gcp/datacatalog/policy_tag_iam_member.py +4 -4
  174. pulumi_gcp/datacatalog/policy_tag_iam_policy.py +4 -4
  175. pulumi_gcp/datacatalog/tag_template_iam_binding.py +2 -2
  176. pulumi_gcp/datacatalog/tag_template_iam_member.py +2 -2
  177. pulumi_gcp/datacatalog/tag_template_iam_policy.py +2 -2
  178. pulumi_gcp/datacatalog/taxonomy_iam_binding.py +2 -2
  179. pulumi_gcp/datacatalog/taxonomy_iam_member.py +2 -2
  180. pulumi_gcp/datacatalog/taxonomy_iam_policy.py +2 -2
  181. pulumi_gcp/dataplex/aspect_type_iam_binding.py +2 -2
  182. pulumi_gcp/dataplex/aspect_type_iam_member.py +2 -2
  183. pulumi_gcp/dataplex/aspect_type_iam_policy.py +2 -2
  184. pulumi_gcp/dataplex/asset_iam_binding.py +2 -2
  185. pulumi_gcp/dataplex/asset_iam_member.py +2 -2
  186. pulumi_gcp/dataplex/asset_iam_policy.py +2 -2
  187. pulumi_gcp/dataplex/datascan_iam_binding.py +2 -2
  188. pulumi_gcp/dataplex/datascan_iam_member.py +2 -2
  189. pulumi_gcp/dataplex/datascan_iam_policy.py +2 -2
  190. pulumi_gcp/dataplex/entry_group_iam_binding.py +2 -2
  191. pulumi_gcp/dataplex/entry_group_iam_member.py +2 -2
  192. pulumi_gcp/dataplex/entry_group_iam_policy.py +2 -2
  193. pulumi_gcp/dataplex/entry_type_iam_binding.py +2 -2
  194. pulumi_gcp/dataplex/entry_type_iam_member.py +2 -2
  195. pulumi_gcp/dataplex/entry_type_iam_policy.py +2 -2
  196. pulumi_gcp/dataplex/lake_iam_binding.py +2 -2
  197. pulumi_gcp/dataplex/lake_iam_member.py +2 -2
  198. pulumi_gcp/dataplex/lake_iam_policy.py +2 -2
  199. pulumi_gcp/dataplex/task.py +4 -4
  200. pulumi_gcp/dataplex/task_iam_binding.py +2 -2
  201. pulumi_gcp/dataplex/task_iam_member.py +2 -2
  202. pulumi_gcp/dataplex/task_iam_policy.py +2 -2
  203. pulumi_gcp/dataplex/zone_iam_binding.py +2 -2
  204. pulumi_gcp/dataplex/zone_iam_member.py +2 -2
  205. pulumi_gcp/dataplex/zone_iam_policy.py +2 -2
  206. pulumi_gcp/dataproc/autoscaling_policy_iam_binding.py +2 -2
  207. pulumi_gcp/dataproc/autoscaling_policy_iam_member.py +2 -2
  208. pulumi_gcp/dataproc/autoscaling_policy_iam_policy.py +2 -2
  209. pulumi_gcp/dataproc/batch.py +24 -24
  210. pulumi_gcp/dataproc/cluster.py +2 -2
  211. pulumi_gcp/dataproc/job.py +4 -4
  212. pulumi_gcp/dataproc/metastore_federation_iam_binding.py +2 -2
  213. pulumi_gcp/dataproc/metastore_federation_iam_member.py +2 -2
  214. pulumi_gcp/dataproc/metastore_federation_iam_policy.py +2 -2
  215. pulumi_gcp/dataproc/metastore_service_iam_binding.py +2 -2
  216. pulumi_gcp/dataproc/metastore_service_iam_member.py +2 -2
  217. pulumi_gcp/dataproc/metastore_service_iam_policy.py +2 -2
  218. pulumi_gcp/datastream/stream.py +2 -2
  219. pulumi_gcp/diagflow/_inputs.py +472 -2
  220. pulumi_gcp/diagflow/cx_agent.py +64 -4
  221. pulumi_gcp/diagflow/cx_flow.py +34 -4
  222. pulumi_gcp/diagflow/cx_page.py +10 -10
  223. pulumi_gcp/diagflow/outputs.py +378 -2
  224. pulumi_gcp/dns/dns_managed_zone_iam_binding.py +2 -2
  225. pulumi_gcp/dns/dns_managed_zone_iam_member.py +2 -2
  226. pulumi_gcp/dns/dns_managed_zone_iam_policy.py +2 -2
  227. pulumi_gcp/endpoints/consumers_iam_binding.py +2 -2
  228. pulumi_gcp/endpoints/consumers_iam_member.py +2 -2
  229. pulumi_gcp/endpoints/consumers_iam_policy.py +2 -2
  230. pulumi_gcp/endpoints/service_iam_binding.py +4 -4
  231. pulumi_gcp/endpoints/service_iam_member.py +4 -4
  232. pulumi_gcp/endpoints/service_iam_policy.py +4 -4
  233. pulumi_gcp/firebase/extensions_instance.py +24 -24
  234. pulumi_gcp/gkebackup/backup_plan_iam_binding.py +2 -2
  235. pulumi_gcp/gkebackup/backup_plan_iam_member.py +2 -2
  236. pulumi_gcp/gkebackup/backup_plan_iam_policy.py +2 -2
  237. pulumi_gcp/gkebackup/restore_plan.py +18 -18
  238. pulumi_gcp/gkebackup/restore_plan_iam_binding.py +2 -2
  239. pulumi_gcp/gkebackup/restore_plan_iam_member.py +2 -2
  240. pulumi_gcp/gkebackup/restore_plan_iam_policy.py +2 -2
  241. pulumi_gcp/gkehub/_inputs.py +21 -21
  242. pulumi_gcp/gkehub/feature.py +2 -4
  243. pulumi_gcp/gkehub/feature_iam_binding.py +2 -2
  244. pulumi_gcp/gkehub/feature_iam_member.py +2 -2
  245. pulumi_gcp/gkehub/feature_iam_policy.py +2 -2
  246. pulumi_gcp/gkehub/membership_iam_binding.py +2 -2
  247. pulumi_gcp/gkehub/membership_iam_member.py +2 -2
  248. pulumi_gcp/gkehub/membership_iam_policy.py +2 -2
  249. pulumi_gcp/gkehub/outputs.py +13 -13
  250. pulumi_gcp/gkehub/scope_iam_binding.py +2 -2
  251. pulumi_gcp/gkehub/scope_iam_member.py +2 -2
  252. pulumi_gcp/gkehub/scope_iam_policy.py +2 -2
  253. pulumi_gcp/healthcare/consent_store_iam_binding.py +4 -4
  254. pulumi_gcp/healthcare/consent_store_iam_member.py +4 -4
  255. pulumi_gcp/healthcare/consent_store_iam_policy.py +4 -4
  256. pulumi_gcp/iam/workload_identity_pool_provider.py +56 -0
  257. pulumi_gcp/iap/__init__.py +1 -0
  258. pulumi_gcp/iap/_inputs.py +1002 -0
  259. pulumi_gcp/iap/app_engine_service_iam_binding.py +2 -2
  260. pulumi_gcp/iap/app_engine_service_iam_member.py +2 -2
  261. pulumi_gcp/iap/app_engine_service_iam_policy.py +2 -2
  262. pulumi_gcp/iap/app_engine_version_iam_binding.py +2 -2
  263. pulumi_gcp/iap/app_engine_version_iam_member.py +2 -2
  264. pulumi_gcp/iap/app_engine_version_iam_policy.py +2 -2
  265. pulumi_gcp/iap/outputs.py +827 -0
  266. pulumi_gcp/iap/settings.py +546 -0
  267. pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +2 -2
  268. pulumi_gcp/iap/tunnel_dest_group_iam_member.py +2 -2
  269. pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +2 -2
  270. pulumi_gcp/iap/tunnel_iam_binding.py +2 -2
  271. pulumi_gcp/iap/tunnel_iam_member.py +2 -2
  272. pulumi_gcp/iap/tunnel_iam_policy.py +2 -2
  273. pulumi_gcp/iap/tunnel_instance_iam_binding.py +2 -2
  274. pulumi_gcp/iap/tunnel_instance_iam_member.py +2 -2
  275. pulumi_gcp/iap/tunnel_instance_iam_policy.py +2 -2
  276. pulumi_gcp/iap/web_backend_service_iam_binding.py +2 -2
  277. pulumi_gcp/iap/web_backend_service_iam_member.py +2 -2
  278. pulumi_gcp/iap/web_backend_service_iam_policy.py +2 -2
  279. pulumi_gcp/iap/web_iam_binding.py +2 -2
  280. pulumi_gcp/iap/web_iam_member.py +2 -2
  281. pulumi_gcp/iap/web_iam_policy.py +2 -2
  282. pulumi_gcp/iap/web_region_backend_service_iam_binding.py +2 -2
  283. pulumi_gcp/iap/web_region_backend_service_iam_member.py +2 -2
  284. pulumi_gcp/iap/web_region_backend_service_iam_policy.py +2 -2
  285. pulumi_gcp/iap/web_type_app_enging_iam_binding.py +2 -2
  286. pulumi_gcp/iap/web_type_app_enging_iam_member.py +2 -2
  287. pulumi_gcp/iap/web_type_app_enging_iam_policy.py +2 -2
  288. pulumi_gcp/iap/web_type_compute_iam_binding.py +2 -2
  289. pulumi_gcp/iap/web_type_compute_iam_member.py +2 -2
  290. pulumi_gcp/iap/web_type_compute_iam_policy.py +2 -2
  291. pulumi_gcp/identityplatform/config.py +2 -2
  292. pulumi_gcp/kms/ekm_connection_iam_binding.py +2 -2
  293. pulumi_gcp/kms/ekm_connection_iam_member.py +2 -2
  294. pulumi_gcp/kms/ekm_connection_iam_policy.py +2 -2
  295. pulumi_gcp/logging/log_view_iam_binding.py +4 -4
  296. pulumi_gcp/logging/log_view_iam_member.py +4 -4
  297. pulumi_gcp/logging/log_view_iam_policy.py +4 -4
  298. pulumi_gcp/looker/instance.py +104 -2
  299. pulumi_gcp/memorystore/_inputs.py +117 -4
  300. pulumi_gcp/memorystore/instance.py +105 -0
  301. pulumi_gcp/memorystore/outputs.py +80 -4
  302. pulumi_gcp/monitoring/_inputs.py +23 -0
  303. pulumi_gcp/monitoring/get_secret_version.py +22 -3
  304. pulumi_gcp/monitoring/outputs.py +16 -0
  305. pulumi_gcp/networkconnectivity/__init__.py +1 -0
  306. pulumi_gcp/networkconnectivity/_inputs.py +148 -0
  307. pulumi_gcp/networkconnectivity/group.py +764 -0
  308. pulumi_gcp/networkconnectivity/outputs.py +125 -0
  309. pulumi_gcp/networkconnectivity/spoke.py +144 -0
  310. pulumi_gcp/networksecurity/address_group_iam_binding.py +2 -2
  311. pulumi_gcp/networksecurity/address_group_iam_member.py +2 -2
  312. pulumi_gcp/networksecurity/address_group_iam_policy.py +2 -2
  313. pulumi_gcp/networksecurity/gateway_security_policy.py +7 -0
  314. pulumi_gcp/networksecurity/server_tls_policy.py +2 -2
  315. pulumi_gcp/networkservices/edge_cache_service.py +2 -2
  316. pulumi_gcp/networkservices/http_route.py +4 -4
  317. pulumi_gcp/notebooks/instance_iam_binding.py +2 -2
  318. pulumi_gcp/notebooks/instance_iam_member.py +2 -2
  319. pulumi_gcp/notebooks/instance_iam_policy.py +2 -2
  320. pulumi_gcp/notebooks/runtime_iam_binding.py +2 -2
  321. pulumi_gcp/notebooks/runtime_iam_member.py +2 -2
  322. pulumi_gcp/notebooks/runtime_iam_policy.py +2 -2
  323. pulumi_gcp/oracledatabase/__init__.py +20 -0
  324. pulumi_gcp/oracledatabase/_inputs.py +4745 -0
  325. pulumi_gcp/oracledatabase/autonomous_database.py +983 -0
  326. pulumi_gcp/oracledatabase/cloud_exadata_infrastructure.py +842 -0
  327. pulumi_gcp/oracledatabase/cloud_vm_cluster.py +1086 -0
  328. pulumi_gcp/oracledatabase/get_autonomous_database.py +290 -0
  329. pulumi_gcp/oracledatabase/get_autonomous_databases.py +150 -0
  330. pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructure.py +257 -0
  331. pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructures.py +150 -0
  332. pulumi_gcp/oracledatabase/get_cloud_vm_cluster.py +290 -0
  333. pulumi_gcp/oracledatabase/get_cloud_vm_clusters.py +150 -0
  334. pulumi_gcp/oracledatabase/get_db_nodes.py +245 -0
  335. pulumi_gcp/oracledatabase/get_db_servers.py +245 -0
  336. pulumi_gcp/oracledatabase/outputs.py +9304 -0
  337. pulumi_gcp/organizations/folder.py +7 -7
  338. pulumi_gcp/organizations/project.py +7 -7
  339. pulumi_gcp/orgpolicy/_inputs.py +3 -3
  340. pulumi_gcp/orgpolicy/outputs.py +2 -2
  341. pulumi_gcp/osconfig/os_policy_assignment.py +4 -4
  342. pulumi_gcp/privilegedaccessmanager/get_entitlement.py +46 -2
  343. pulumi_gcp/provider.py +40 -0
  344. pulumi_gcp/pubsub/schema_iam_binding.py +2 -2
  345. pulumi_gcp/pubsub/schema_iam_member.py +2 -2
  346. pulumi_gcp/pubsub/schema_iam_policy.py +2 -2
  347. pulumi_gcp/pubsub/subscription.py +18 -66
  348. pulumi_gcp/pubsub/topic_iam_binding.py +2 -2
  349. pulumi_gcp/pubsub/topic_iam_member.py +2 -2
  350. pulumi_gcp/pubsub/topic_iam_policy.py +2 -2
  351. pulumi_gcp/pulumi-plugin.json +1 -1
  352. pulumi_gcp/runtimeconfig/config_iam_binding.py +2 -2
  353. pulumi_gcp/runtimeconfig/config_iam_member.py +2 -2
  354. pulumi_gcp/runtimeconfig/config_iam_policy.py +2 -2
  355. pulumi_gcp/secretmanager/get_regional_secret_version.py +24 -5
  356. pulumi_gcp/secretmanager/get_regional_secret_version_access.py +24 -5
  357. pulumi_gcp/secretmanager/get_secret_version.py +22 -3
  358. pulumi_gcp/secretmanager/get_secret_version_access.py +22 -3
  359. pulumi_gcp/secretmanager/regional_secret.py +2 -2
  360. pulumi_gcp/secretmanager/regional_secret_iam_binding.py +2 -2
  361. pulumi_gcp/secretmanager/regional_secret_iam_member.py +2 -2
  362. pulumi_gcp/secretmanager/regional_secret_iam_policy.py +2 -2
  363. pulumi_gcp/secretmanager/secret_iam_binding.py +2 -2
  364. pulumi_gcp/secretmanager/secret_iam_member.py +2 -2
  365. pulumi_gcp/secretmanager/secret_iam_policy.py +2 -2
  366. pulumi_gcp/securesourcemanager/repository_iam_binding.py +2 -2
  367. pulumi_gcp/securesourcemanager/repository_iam_member.py +2 -2
  368. pulumi_gcp/securesourcemanager/repository_iam_policy.py +2 -2
  369. pulumi_gcp/securitycenter/v2_organization_source_iam_binding.py +4 -4
  370. pulumi_gcp/securitycenter/v2_organization_source_iam_member.py +4 -4
  371. pulumi_gcp/securitycenter/v2_organization_source_iam_policy.py +4 -4
  372. pulumi_gcp/serviceaccount/__init__.py +1 -0
  373. pulumi_gcp/serviceaccount/get_account.py +15 -1
  374. pulumi_gcp/serviceaccount/get_s.py +132 -0
  375. pulumi_gcp/serviceaccount/outputs.py +89 -0
  376. pulumi_gcp/servicedirectory/namespace_iam_binding.py +4 -4
  377. pulumi_gcp/servicedirectory/namespace_iam_member.py +4 -4
  378. pulumi_gcp/servicedirectory/namespace_iam_policy.py +4 -4
  379. pulumi_gcp/servicedirectory/service_iam_binding.py +4 -4
  380. pulumi_gcp/servicedirectory/service_iam_member.py +4 -4
  381. pulumi_gcp/servicedirectory/service_iam_policy.py +4 -4
  382. pulumi_gcp/siteverification/get_token.py +0 -16
  383. pulumi_gcp/siteverification/owner.py +0 -16
  384. pulumi_gcp/sourcerepo/repository_iam_binding.py +2 -2
  385. pulumi_gcp/sourcerepo/repository_iam_member.py +2 -2
  386. pulumi_gcp/sourcerepo/repository_iam_policy.py +2 -2
  387. pulumi_gcp/spanner/_inputs.py +237 -17
  388. pulumi_gcp/spanner/outputs.py +307 -12
  389. pulumi_gcp/sql/_inputs.py +12 -9
  390. pulumi_gcp/sql/outputs.py +8 -6
  391. pulumi_gcp/sql/user.py +28 -21
  392. pulumi_gcp/storage/_inputs.py +33 -0
  393. pulumi_gcp/storage/bucket.py +47 -0
  394. pulumi_gcp/storage/bucket_iam_binding.py +2 -2
  395. pulumi_gcp/storage/bucket_iam_member.py +2 -2
  396. pulumi_gcp/storage/bucket_iam_policy.py +2 -2
  397. pulumi_gcp/storage/get_bucket.py +12 -1
  398. pulumi_gcp/storage/managed_folder_iam_binding.py +4 -4
  399. pulumi_gcp/storage/managed_folder_iam_member.py +4 -4
  400. pulumi_gcp/storage/managed_folder_iam_policy.py +4 -4
  401. pulumi_gcp/storage/outputs.py +38 -0
  402. pulumi_gcp/tags/tag_key_iam_binding.py +4 -4
  403. pulumi_gcp/tags/tag_key_iam_member.py +4 -4
  404. pulumi_gcp/tags/tag_key_iam_policy.py +4 -4
  405. pulumi_gcp/tags/tag_value_iam_binding.py +4 -4
  406. pulumi_gcp/tags/tag_value_iam_member.py +4 -4
  407. pulumi_gcp/tags/tag_value_iam_policy.py +4 -4
  408. pulumi_gcp/transcoder/__init__.py +11 -0
  409. pulumi_gcp/transcoder/_inputs.py +3991 -0
  410. pulumi_gcp/transcoder/job.py +2134 -0
  411. pulumi_gcp/transcoder/job_template.py +1524 -0
  412. pulumi_gcp/transcoder/outputs.py +2918 -0
  413. pulumi_gcp/vertex/ai_deployment_resource_pool.py +2 -2
  414. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_binding.py +2 -2
  415. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_member.py +2 -2
  416. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_policy.py +2 -2
  417. pulumi_gcp/vertex/ai_feature_store_iam_binding.py +2 -2
  418. pulumi_gcp/vertex/ai_feature_store_iam_member.py +2 -2
  419. pulumi_gcp/vertex/ai_feature_store_iam_policy.py +2 -2
  420. pulumi_gcp/vmwareengine/_inputs.py +912 -6
  421. pulumi_gcp/vmwareengine/cluster.py +100 -2
  422. pulumi_gcp/vmwareengine/get_cluster.py +12 -1
  423. pulumi_gcp/vmwareengine/outputs.py +1310 -49
  424. pulumi_gcp/vmwareengine/private_cloud.py +44 -0
  425. pulumi_gcp/workstations/_inputs.py +54 -0
  426. pulumi_gcp/workstations/outputs.py +32 -0
  427. pulumi_gcp/workstations/workstation_config.py +211 -6
  428. pulumi_gcp/workstations/workstation_config_iam_binding.py +2 -2
  429. pulumi_gcp/workstations/workstation_config_iam_member.py +2 -2
  430. pulumi_gcp/workstations/workstation_config_iam_policy.py +2 -2
  431. pulumi_gcp/workstations/workstation_iam_binding.py +2 -2
  432. pulumi_gcp/workstations/workstation_iam_member.py +2 -2
  433. pulumi_gcp/workstations/workstation_iam_policy.py +2 -2
  434. {pulumi_gcp-8.7.0a1730183903.dist-info → pulumi_gcp-8.8.0.dist-info}/METADATA +1 -1
  435. {pulumi_gcp-8.7.0a1730183903.dist-info → pulumi_gcp-8.8.0.dist-info}/RECORD +437 -412
  436. {pulumi_gcp-8.7.0a1730183903.dist-info → pulumi_gcp-8.8.0.dist-info}/WHEEL +1 -1
  437. {pulumi_gcp-8.7.0a1730183903.dist-info → pulumi_gcp-8.8.0.dist-info}/top_level.txt +0 -0
@@ -16,6 +16,11 @@ from .. import _utilities
16
16
  from . import outputs
17
17
 
18
18
  __all__ = [
19
+ 'ClusterAutoscalingSettings',
20
+ 'ClusterAutoscalingSettingsAutoscalingPolicy',
21
+ 'ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds',
22
+ 'ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds',
23
+ 'ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds',
19
24
  'ClusterNodeTypeConfig',
20
25
  'ExternalAccessRuleDestinationIpRange',
21
26
  'ExternalAccessRuleSourceIpRange',
@@ -24,12 +29,22 @@ __all__ = [
24
29
  'NetworkVpcNetwork',
25
30
  'PrivateCloudHcx',
26
31
  'PrivateCloudManagementCluster',
32
+ 'PrivateCloudManagementClusterAutoscalingSettings',
33
+ 'PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicy',
34
+ 'PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds',
35
+ 'PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds',
36
+ 'PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds',
27
37
  'PrivateCloudManagementClusterNodeTypeConfig',
28
38
  'PrivateCloudManagementClusterStretchedClusterConfig',
29
39
  'PrivateCloudNetworkConfig',
30
40
  'PrivateCloudNsx',
31
41
  'PrivateCloudVcenter',
32
42
  'SubnetDhcpAddressRange',
43
+ 'GetClusterAutoscalingSettingResult',
44
+ 'GetClusterAutoscalingSettingAutoscalingPolicyResult',
45
+ 'GetClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdResult',
46
+ 'GetClusterAutoscalingSettingAutoscalingPolicyCpuThresholdResult',
47
+ 'GetClusterAutoscalingSettingAutoscalingPolicyStorageThresholdResult',
33
48
  'GetClusterNodeTypeConfigResult',
34
49
  'GetExternalAccessRuleDestinationIpRangeResult',
35
50
  'GetExternalAccessRuleSourceIpRangeResult',
@@ -38,6 +53,11 @@ __all__ = [
38
53
  'GetNetworkVpcNetworkResult',
39
54
  'GetPrivateCloudHcxResult',
40
55
  'GetPrivateCloudManagementClusterResult',
56
+ 'GetPrivateCloudManagementClusterAutoscalingSettingResult',
57
+ 'GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyResult',
58
+ 'GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdResult',
59
+ 'GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyCpuThresholdResult',
60
+ 'GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyStorageThresholdResult',
41
61
  'GetPrivateCloudManagementClusterNodeTypeConfigResult',
42
62
  'GetPrivateCloudManagementClusterStretchedClusterConfigResult',
43
63
  'GetPrivateCloudNetworkConfigResult',
@@ -46,6 +66,370 @@ __all__ = [
46
66
  'GetSubnetDhcpAddressRangeResult',
47
67
  ]
48
68
 
69
+ @pulumi.output_type
70
+ class ClusterAutoscalingSettings(dict):
71
+ @staticmethod
72
+ def __key_warning(key: str):
73
+ suggest = None
74
+ if key == "autoscalingPolicies":
75
+ suggest = "autoscaling_policies"
76
+ elif key == "coolDownPeriod":
77
+ suggest = "cool_down_period"
78
+ elif key == "maxClusterNodeCount":
79
+ suggest = "max_cluster_node_count"
80
+ elif key == "minClusterNodeCount":
81
+ suggest = "min_cluster_node_count"
82
+
83
+ if suggest:
84
+ pulumi.log.warn(f"Key '{key}' not found in ClusterAutoscalingSettings. Access the value via the '{suggest}' property getter instead.")
85
+
86
+ def __getitem__(self, key: str) -> Any:
87
+ ClusterAutoscalingSettings.__key_warning(key)
88
+ return super().__getitem__(key)
89
+
90
+ def get(self, key: str, default = None) -> Any:
91
+ ClusterAutoscalingSettings.__key_warning(key)
92
+ return super().get(key, default)
93
+
94
+ def __init__(__self__, *,
95
+ autoscaling_policies: Sequence['outputs.ClusterAutoscalingSettingsAutoscalingPolicy'],
96
+ cool_down_period: Optional[str] = None,
97
+ max_cluster_node_count: Optional[int] = None,
98
+ min_cluster_node_count: Optional[int] = None):
99
+ """
100
+ :param Sequence['ClusterAutoscalingSettingsAutoscalingPolicyArgs'] autoscaling_policies: The map with autoscaling policies applied to the cluster.
101
+ The key is the identifier of the policy.
102
+ It must meet the following requirements:
103
+ * Only contains 1-63 alphanumeric characters and hyphens
104
+ * Begins with an alphabetical character
105
+ * Ends with a non-hyphen character
106
+ * Not formatted as a UUID
107
+ * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
108
+ Currently the map must contain only one element
109
+ that describes the autoscaling policy for compute nodes.
110
+ Structure is documented below.
111
+ :param str cool_down_period: The minimum duration between consecutive autoscale operations.
112
+ It starts once addition or removal of nodes is fully completed.
113
+ Minimum cool down period is 30m.
114
+ Cool down period must be in whole minutes (for example, 30m, 31m, 50m).
115
+ Mandatory for successful addition of autoscaling settings in cluster.
116
+ :param int max_cluster_node_count: Maximum number of nodes of any type in a cluster.
117
+ Mandatory for successful addition of autoscaling settings in cluster.
118
+ :param int min_cluster_node_count: Minimum number of nodes of any type in a cluster.
119
+ Mandatory for successful addition of autoscaling settings in cluster.
120
+ """
121
+ pulumi.set(__self__, "autoscaling_policies", autoscaling_policies)
122
+ if cool_down_period is not None:
123
+ pulumi.set(__self__, "cool_down_period", cool_down_period)
124
+ if max_cluster_node_count is not None:
125
+ pulumi.set(__self__, "max_cluster_node_count", max_cluster_node_count)
126
+ if min_cluster_node_count is not None:
127
+ pulumi.set(__self__, "min_cluster_node_count", min_cluster_node_count)
128
+
129
+ @property
130
+ @pulumi.getter(name="autoscalingPolicies")
131
+ def autoscaling_policies(self) -> Sequence['outputs.ClusterAutoscalingSettingsAutoscalingPolicy']:
132
+ """
133
+ The map with autoscaling policies applied to the cluster.
134
+ The key is the identifier of the policy.
135
+ It must meet the following requirements:
136
+ * Only contains 1-63 alphanumeric characters and hyphens
137
+ * Begins with an alphabetical character
138
+ * Ends with a non-hyphen character
139
+ * Not formatted as a UUID
140
+ * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
141
+ Currently the map must contain only one element
142
+ that describes the autoscaling policy for compute nodes.
143
+ Structure is documented below.
144
+ """
145
+ return pulumi.get(self, "autoscaling_policies")
146
+
147
+ @property
148
+ @pulumi.getter(name="coolDownPeriod")
149
+ def cool_down_period(self) -> Optional[str]:
150
+ """
151
+ The minimum duration between consecutive autoscale operations.
152
+ It starts once addition or removal of nodes is fully completed.
153
+ Minimum cool down period is 30m.
154
+ Cool down period must be in whole minutes (for example, 30m, 31m, 50m).
155
+ Mandatory for successful addition of autoscaling settings in cluster.
156
+ """
157
+ return pulumi.get(self, "cool_down_period")
158
+
159
+ @property
160
+ @pulumi.getter(name="maxClusterNodeCount")
161
+ def max_cluster_node_count(self) -> Optional[int]:
162
+ """
163
+ Maximum number of nodes of any type in a cluster.
164
+ Mandatory for successful addition of autoscaling settings in cluster.
165
+ """
166
+ return pulumi.get(self, "max_cluster_node_count")
167
+
168
+ @property
169
+ @pulumi.getter(name="minClusterNodeCount")
170
+ def min_cluster_node_count(self) -> Optional[int]:
171
+ """
172
+ Minimum number of nodes of any type in a cluster.
173
+ Mandatory for successful addition of autoscaling settings in cluster.
174
+ """
175
+ return pulumi.get(self, "min_cluster_node_count")
176
+
177
+
178
+ @pulumi.output_type
179
+ class ClusterAutoscalingSettingsAutoscalingPolicy(dict):
180
+ @staticmethod
181
+ def __key_warning(key: str):
182
+ suggest = None
183
+ if key == "autoscalePolicyId":
184
+ suggest = "autoscale_policy_id"
185
+ elif key == "nodeTypeId":
186
+ suggest = "node_type_id"
187
+ elif key == "scaleOutSize":
188
+ suggest = "scale_out_size"
189
+ elif key == "consumedMemoryThresholds":
190
+ suggest = "consumed_memory_thresholds"
191
+ elif key == "cpuThresholds":
192
+ suggest = "cpu_thresholds"
193
+ elif key == "storageThresholds":
194
+ suggest = "storage_thresholds"
195
+
196
+ if suggest:
197
+ pulumi.log.warn(f"Key '{key}' not found in ClusterAutoscalingSettingsAutoscalingPolicy. Access the value via the '{suggest}' property getter instead.")
198
+
199
+ def __getitem__(self, key: str) -> Any:
200
+ ClusterAutoscalingSettingsAutoscalingPolicy.__key_warning(key)
201
+ return super().__getitem__(key)
202
+
203
+ def get(self, key: str, default = None) -> Any:
204
+ ClusterAutoscalingSettingsAutoscalingPolicy.__key_warning(key)
205
+ return super().get(key, default)
206
+
207
+ def __init__(__self__, *,
208
+ autoscale_policy_id: str,
209
+ node_type_id: str,
210
+ scale_out_size: int,
211
+ consumed_memory_thresholds: Optional['outputs.ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds'] = None,
212
+ cpu_thresholds: Optional['outputs.ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds'] = None,
213
+ storage_thresholds: Optional['outputs.ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds'] = None):
214
+ """
215
+ :param str autoscale_policy_id: The identifier for this object. Format specified above.
216
+ :param str node_type_id: The canonical identifier of the node type to add or remove.
217
+ :param int scale_out_size: Number of nodes to add to a cluster during a scale-out operation.
218
+ Must be divisible by 2 for stretched clusters.
219
+ :param 'ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholdsArgs' consumed_memory_thresholds: Utilization thresholds pertaining to amount of consumed memory.
220
+ Structure is documented below.
221
+ :param 'ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholdsArgs' cpu_thresholds: Utilization thresholds pertaining to CPU utilization.
222
+ Structure is documented below.
223
+ :param 'ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholdsArgs' storage_thresholds: Utilization thresholds pertaining to amount of consumed storage.
224
+ Structure is documented below.
225
+ """
226
+ pulumi.set(__self__, "autoscale_policy_id", autoscale_policy_id)
227
+ pulumi.set(__self__, "node_type_id", node_type_id)
228
+ pulumi.set(__self__, "scale_out_size", scale_out_size)
229
+ if consumed_memory_thresholds is not None:
230
+ pulumi.set(__self__, "consumed_memory_thresholds", consumed_memory_thresholds)
231
+ if cpu_thresholds is not None:
232
+ pulumi.set(__self__, "cpu_thresholds", cpu_thresholds)
233
+ if storage_thresholds is not None:
234
+ pulumi.set(__self__, "storage_thresholds", storage_thresholds)
235
+
236
+ @property
237
+ @pulumi.getter(name="autoscalePolicyId")
238
+ def autoscale_policy_id(self) -> str:
239
+ """
240
+ The identifier for this object. Format specified above.
241
+ """
242
+ return pulumi.get(self, "autoscale_policy_id")
243
+
244
+ @property
245
+ @pulumi.getter(name="nodeTypeId")
246
+ def node_type_id(self) -> str:
247
+ """
248
+ The canonical identifier of the node type to add or remove.
249
+ """
250
+ return pulumi.get(self, "node_type_id")
251
+
252
+ @property
253
+ @pulumi.getter(name="scaleOutSize")
254
+ def scale_out_size(self) -> int:
255
+ """
256
+ Number of nodes to add to a cluster during a scale-out operation.
257
+ Must be divisible by 2 for stretched clusters.
258
+ """
259
+ return pulumi.get(self, "scale_out_size")
260
+
261
+ @property
262
+ @pulumi.getter(name="consumedMemoryThresholds")
263
+ def consumed_memory_thresholds(self) -> Optional['outputs.ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds']:
264
+ """
265
+ Utilization thresholds pertaining to amount of consumed memory.
266
+ Structure is documented below.
267
+ """
268
+ return pulumi.get(self, "consumed_memory_thresholds")
269
+
270
+ @property
271
+ @pulumi.getter(name="cpuThresholds")
272
+ def cpu_thresholds(self) -> Optional['outputs.ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds']:
273
+ """
274
+ Utilization thresholds pertaining to CPU utilization.
275
+ Structure is documented below.
276
+ """
277
+ return pulumi.get(self, "cpu_thresholds")
278
+
279
+ @property
280
+ @pulumi.getter(name="storageThresholds")
281
+ def storage_thresholds(self) -> Optional['outputs.ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds']:
282
+ """
283
+ Utilization thresholds pertaining to amount of consumed storage.
284
+ Structure is documented below.
285
+ """
286
+ return pulumi.get(self, "storage_thresholds")
287
+
288
+
289
+ @pulumi.output_type
290
+ class ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds(dict):
291
+ @staticmethod
292
+ def __key_warning(key: str):
293
+ suggest = None
294
+ if key == "scaleIn":
295
+ suggest = "scale_in"
296
+ elif key == "scaleOut":
297
+ suggest = "scale_out"
298
+
299
+ if suggest:
300
+ pulumi.log.warn(f"Key '{key}' not found in ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds. Access the value via the '{suggest}' property getter instead.")
301
+
302
+ def __getitem__(self, key: str) -> Any:
303
+ ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds.__key_warning(key)
304
+ return super().__getitem__(key)
305
+
306
+ def get(self, key: str, default = None) -> Any:
307
+ ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds.__key_warning(key)
308
+ return super().get(key, default)
309
+
310
+ def __init__(__self__, *,
311
+ scale_in: int,
312
+ scale_out: int):
313
+ """
314
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
315
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
316
+ """
317
+ pulumi.set(__self__, "scale_in", scale_in)
318
+ pulumi.set(__self__, "scale_out", scale_out)
319
+
320
+ @property
321
+ @pulumi.getter(name="scaleIn")
322
+ def scale_in(self) -> int:
323
+ """
324
+ The utilization triggering the scale-in operation in percent.
325
+ """
326
+ return pulumi.get(self, "scale_in")
327
+
328
+ @property
329
+ @pulumi.getter(name="scaleOut")
330
+ def scale_out(self) -> int:
331
+ """
332
+ The utilization triggering the scale-out operation in percent.
333
+ """
334
+ return pulumi.get(self, "scale_out")
335
+
336
+
337
+ @pulumi.output_type
338
+ class ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds(dict):
339
+ @staticmethod
340
+ def __key_warning(key: str):
341
+ suggest = None
342
+ if key == "scaleIn":
343
+ suggest = "scale_in"
344
+ elif key == "scaleOut":
345
+ suggest = "scale_out"
346
+
347
+ if suggest:
348
+ pulumi.log.warn(f"Key '{key}' not found in ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds. Access the value via the '{suggest}' property getter instead.")
349
+
350
+ def __getitem__(self, key: str) -> Any:
351
+ ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds.__key_warning(key)
352
+ return super().__getitem__(key)
353
+
354
+ def get(self, key: str, default = None) -> Any:
355
+ ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds.__key_warning(key)
356
+ return super().get(key, default)
357
+
358
+ def __init__(__self__, *,
359
+ scale_in: int,
360
+ scale_out: int):
361
+ """
362
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
363
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
364
+ """
365
+ pulumi.set(__self__, "scale_in", scale_in)
366
+ pulumi.set(__self__, "scale_out", scale_out)
367
+
368
+ @property
369
+ @pulumi.getter(name="scaleIn")
370
+ def scale_in(self) -> int:
371
+ """
372
+ The utilization triggering the scale-in operation in percent.
373
+ """
374
+ return pulumi.get(self, "scale_in")
375
+
376
+ @property
377
+ @pulumi.getter(name="scaleOut")
378
+ def scale_out(self) -> int:
379
+ """
380
+ The utilization triggering the scale-out operation in percent.
381
+ """
382
+ return pulumi.get(self, "scale_out")
383
+
384
+
385
+ @pulumi.output_type
386
+ class ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds(dict):
387
+ @staticmethod
388
+ def __key_warning(key: str):
389
+ suggest = None
390
+ if key == "scaleIn":
391
+ suggest = "scale_in"
392
+ elif key == "scaleOut":
393
+ suggest = "scale_out"
394
+
395
+ if suggest:
396
+ pulumi.log.warn(f"Key '{key}' not found in ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds. Access the value via the '{suggest}' property getter instead.")
397
+
398
+ def __getitem__(self, key: str) -> Any:
399
+ ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds.__key_warning(key)
400
+ return super().__getitem__(key)
401
+
402
+ def get(self, key: str, default = None) -> Any:
403
+ ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds.__key_warning(key)
404
+ return super().get(key, default)
405
+
406
+ def __init__(__self__, *,
407
+ scale_in: int,
408
+ scale_out: int):
409
+ """
410
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
411
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
412
+ """
413
+ pulumi.set(__self__, "scale_in", scale_in)
414
+ pulumi.set(__self__, "scale_out", scale_out)
415
+
416
+ @property
417
+ @pulumi.getter(name="scaleIn")
418
+ def scale_in(self) -> int:
419
+ """
420
+ The utilization triggering the scale-in operation in percent.
421
+ """
422
+ return pulumi.get(self, "scale_in")
423
+
424
+ @property
425
+ @pulumi.getter(name="scaleOut")
426
+ def scale_out(self) -> int:
427
+ """
428
+ The utilization triggering the scale-out operation in percent.
429
+ """
430
+ return pulumi.get(self, "scale_out")
431
+
432
+
49
433
  @pulumi.output_type
50
434
  class ClusterNodeTypeConfig(dict):
51
435
  @staticmethod
@@ -402,76 +786,462 @@ class PrivateCloudManagementCluster(dict):
402
786
  suggest = None
403
787
  if key == "clusterId":
404
788
  suggest = "cluster_id"
789
+ elif key == "autoscalingSettings":
790
+ suggest = "autoscaling_settings"
405
791
  elif key == "nodeTypeConfigs":
406
792
  suggest = "node_type_configs"
407
793
  elif key == "stretchedClusterConfig":
408
794
  suggest = "stretched_cluster_config"
409
795
 
410
796
  if suggest:
411
- pulumi.log.warn(f"Key '{key}' not found in PrivateCloudManagementCluster. Access the value via the '{suggest}' property getter instead.")
797
+ pulumi.log.warn(f"Key '{key}' not found in PrivateCloudManagementCluster. Access the value via the '{suggest}' property getter instead.")
798
+
799
+ def __getitem__(self, key: str) -> Any:
800
+ PrivateCloudManagementCluster.__key_warning(key)
801
+ return super().__getitem__(key)
802
+
803
+ def get(self, key: str, default = None) -> Any:
804
+ PrivateCloudManagementCluster.__key_warning(key)
805
+ return super().get(key, default)
806
+
807
+ def __init__(__self__, *,
808
+ cluster_id: str,
809
+ autoscaling_settings: Optional['outputs.PrivateCloudManagementClusterAutoscalingSettings'] = None,
810
+ node_type_configs: Optional[Sequence['outputs.PrivateCloudManagementClusterNodeTypeConfig']] = None,
811
+ stretched_cluster_config: Optional['outputs.PrivateCloudManagementClusterStretchedClusterConfig'] = None):
812
+ """
813
+ :param str cluster_id: The user-provided identifier of the new Cluster. The identifier must meet the following requirements:
814
+ * Only contains 1-63 alphanumeric characters and hyphens
815
+ * Begins with an alphabetical character
816
+ * Ends with a non-hyphen character
817
+ * Not formatted as a UUID
818
+ * Complies with RFC 1034 (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
819
+ :param 'PrivateCloudManagementClusterAutoscalingSettingsArgs' autoscaling_settings: Configuration of the autoscaling applied to this cluster
820
+ Private cloud must have a minimum of 3 nodes to add autoscale settings
821
+ Structure is documented below.
822
+ :param Sequence['PrivateCloudManagementClusterNodeTypeConfigArgs'] node_type_configs: The map of cluster node types in this cluster,
823
+ where the key is canonical identifier of the node type (corresponds to the NodeType).
824
+ Structure is documented below.
825
+ :param 'PrivateCloudManagementClusterStretchedClusterConfigArgs' stretched_cluster_config: The stretched cluster configuration for the private cloud.
826
+ Structure is documented below.
827
+ """
828
+ pulumi.set(__self__, "cluster_id", cluster_id)
829
+ if autoscaling_settings is not None:
830
+ pulumi.set(__self__, "autoscaling_settings", autoscaling_settings)
831
+ if node_type_configs is not None:
832
+ pulumi.set(__self__, "node_type_configs", node_type_configs)
833
+ if stretched_cluster_config is not None:
834
+ pulumi.set(__self__, "stretched_cluster_config", stretched_cluster_config)
835
+
836
+ @property
837
+ @pulumi.getter(name="clusterId")
838
+ def cluster_id(self) -> str:
839
+ """
840
+ The user-provided identifier of the new Cluster. The identifier must meet the following requirements:
841
+ * Only contains 1-63 alphanumeric characters and hyphens
842
+ * Begins with an alphabetical character
843
+ * Ends with a non-hyphen character
844
+ * Not formatted as a UUID
845
+ * Complies with RFC 1034 (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
846
+ """
847
+ return pulumi.get(self, "cluster_id")
848
+
849
+ @property
850
+ @pulumi.getter(name="autoscalingSettings")
851
+ def autoscaling_settings(self) -> Optional['outputs.PrivateCloudManagementClusterAutoscalingSettings']:
852
+ """
853
+ Configuration of the autoscaling applied to this cluster
854
+ Private cloud must have a minimum of 3 nodes to add autoscale settings
855
+ Structure is documented below.
856
+ """
857
+ return pulumi.get(self, "autoscaling_settings")
858
+
859
+ @property
860
+ @pulumi.getter(name="nodeTypeConfigs")
861
+ def node_type_configs(self) -> Optional[Sequence['outputs.PrivateCloudManagementClusterNodeTypeConfig']]:
862
+ """
863
+ The map of cluster node types in this cluster,
864
+ where the key is canonical identifier of the node type (corresponds to the NodeType).
865
+ Structure is documented below.
866
+ """
867
+ return pulumi.get(self, "node_type_configs")
868
+
869
+ @property
870
+ @pulumi.getter(name="stretchedClusterConfig")
871
+ def stretched_cluster_config(self) -> Optional['outputs.PrivateCloudManagementClusterStretchedClusterConfig']:
872
+ """
873
+ The stretched cluster configuration for the private cloud.
874
+ Structure is documented below.
875
+ """
876
+ return pulumi.get(self, "stretched_cluster_config")
877
+
878
+
879
+ @pulumi.output_type
880
+ class PrivateCloudManagementClusterAutoscalingSettings(dict):
881
+ @staticmethod
882
+ def __key_warning(key: str):
883
+ suggest = None
884
+ if key == "autoscalingPolicies":
885
+ suggest = "autoscaling_policies"
886
+ elif key == "coolDownPeriod":
887
+ suggest = "cool_down_period"
888
+ elif key == "maxClusterNodeCount":
889
+ suggest = "max_cluster_node_count"
890
+ elif key == "minClusterNodeCount":
891
+ suggest = "min_cluster_node_count"
892
+
893
+ if suggest:
894
+ pulumi.log.warn(f"Key '{key}' not found in PrivateCloudManagementClusterAutoscalingSettings. Access the value via the '{suggest}' property getter instead.")
895
+
896
+ def __getitem__(self, key: str) -> Any:
897
+ PrivateCloudManagementClusterAutoscalingSettings.__key_warning(key)
898
+ return super().__getitem__(key)
899
+
900
+ def get(self, key: str, default = None) -> Any:
901
+ PrivateCloudManagementClusterAutoscalingSettings.__key_warning(key)
902
+ return super().get(key, default)
903
+
904
+ def __init__(__self__, *,
905
+ autoscaling_policies: Sequence['outputs.PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicy'],
906
+ cool_down_period: Optional[str] = None,
907
+ max_cluster_node_count: Optional[int] = None,
908
+ min_cluster_node_count: Optional[int] = None):
909
+ """
910
+ :param Sequence['PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyArgs'] autoscaling_policies: The map with autoscaling policies applied to the cluster.
911
+ The key is the identifier of the policy.
912
+ It must meet the following requirements:
913
+ * Only contains 1-63 alphanumeric characters and hyphens
914
+ * Begins with an alphabetical character
915
+ * Ends with a non-hyphen character
916
+ * Not formatted as a UUID
917
+ * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
918
+ Currently the map must contain only one element
919
+ that describes the autoscaling policy for compute nodes.
920
+ Structure is documented below.
921
+ :param str cool_down_period: The minimum duration between consecutive autoscale operations.
922
+ It starts once addition or removal of nodes is fully completed.
923
+ Minimum cool down period is 30m.
924
+ Cool down period must be in whole minutes (for example, 30m, 31m, 50m).
925
+ Mandatory for successful addition of autoscaling settings in cluster.
926
+ :param int max_cluster_node_count: Maximum number of nodes of any type in a cluster.
927
+ Mandatory for successful addition of autoscaling settings in cluster.
928
+ :param int min_cluster_node_count: Minimum number of nodes of any type in a cluster.
929
+ Mandatory for successful addition of autoscaling settings in cluster.
930
+ """
931
+ pulumi.set(__self__, "autoscaling_policies", autoscaling_policies)
932
+ if cool_down_period is not None:
933
+ pulumi.set(__self__, "cool_down_period", cool_down_period)
934
+ if max_cluster_node_count is not None:
935
+ pulumi.set(__self__, "max_cluster_node_count", max_cluster_node_count)
936
+ if min_cluster_node_count is not None:
937
+ pulumi.set(__self__, "min_cluster_node_count", min_cluster_node_count)
938
+
939
+ @property
940
+ @pulumi.getter(name="autoscalingPolicies")
941
+ def autoscaling_policies(self) -> Sequence['outputs.PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicy']:
942
+ """
943
+ The map with autoscaling policies applied to the cluster.
944
+ The key is the identifier of the policy.
945
+ It must meet the following requirements:
946
+ * Only contains 1-63 alphanumeric characters and hyphens
947
+ * Begins with an alphabetical character
948
+ * Ends with a non-hyphen character
949
+ * Not formatted as a UUID
950
+ * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
951
+ Currently the map must contain only one element
952
+ that describes the autoscaling policy for compute nodes.
953
+ Structure is documented below.
954
+ """
955
+ return pulumi.get(self, "autoscaling_policies")
956
+
957
+ @property
958
+ @pulumi.getter(name="coolDownPeriod")
959
+ def cool_down_period(self) -> Optional[str]:
960
+ """
961
+ The minimum duration between consecutive autoscale operations.
962
+ It starts once addition or removal of nodes is fully completed.
963
+ Minimum cool down period is 30m.
964
+ Cool down period must be in whole minutes (for example, 30m, 31m, 50m).
965
+ Mandatory for successful addition of autoscaling settings in cluster.
966
+ """
967
+ return pulumi.get(self, "cool_down_period")
968
+
969
+ @property
970
+ @pulumi.getter(name="maxClusterNodeCount")
971
+ def max_cluster_node_count(self) -> Optional[int]:
972
+ """
973
+ Maximum number of nodes of any type in a cluster.
974
+ Mandatory for successful addition of autoscaling settings in cluster.
975
+ """
976
+ return pulumi.get(self, "max_cluster_node_count")
977
+
978
+ @property
979
+ @pulumi.getter(name="minClusterNodeCount")
980
+ def min_cluster_node_count(self) -> Optional[int]:
981
+ """
982
+ Minimum number of nodes of any type in a cluster.
983
+ Mandatory for successful addition of autoscaling settings in cluster.
984
+ """
985
+ return pulumi.get(self, "min_cluster_node_count")
986
+
987
+
988
+ @pulumi.output_type
989
+ class PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicy(dict):
990
+ @staticmethod
991
+ def __key_warning(key: str):
992
+ suggest = None
993
+ if key == "autoscalePolicyId":
994
+ suggest = "autoscale_policy_id"
995
+ elif key == "nodeTypeId":
996
+ suggest = "node_type_id"
997
+ elif key == "scaleOutSize":
998
+ suggest = "scale_out_size"
999
+ elif key == "consumedMemoryThresholds":
1000
+ suggest = "consumed_memory_thresholds"
1001
+ elif key == "cpuThresholds":
1002
+ suggest = "cpu_thresholds"
1003
+ elif key == "storageThresholds":
1004
+ suggest = "storage_thresholds"
1005
+
1006
+ if suggest:
1007
+ pulumi.log.warn(f"Key '{key}' not found in PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicy. Access the value via the '{suggest}' property getter instead.")
1008
+
1009
+ def __getitem__(self, key: str) -> Any:
1010
+ PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicy.__key_warning(key)
1011
+ return super().__getitem__(key)
1012
+
1013
+ def get(self, key: str, default = None) -> Any:
1014
+ PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicy.__key_warning(key)
1015
+ return super().get(key, default)
1016
+
1017
+ def __init__(__self__, *,
1018
+ autoscale_policy_id: str,
1019
+ node_type_id: str,
1020
+ scale_out_size: int,
1021
+ consumed_memory_thresholds: Optional['outputs.PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds'] = None,
1022
+ cpu_thresholds: Optional['outputs.PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds'] = None,
1023
+ storage_thresholds: Optional['outputs.PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds'] = None):
1024
+ """
1025
+ :param str autoscale_policy_id: The identifier for this object. Format specified above.
1026
+ :param str node_type_id: The canonical identifier of the node type to add or remove.
1027
+ :param int scale_out_size: Number of nodes to add to a cluster during a scale-out operation.
1028
+ Must be divisible by 2 for stretched clusters.
1029
+ :param 'PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholdsArgs' consumed_memory_thresholds: Utilization thresholds pertaining to amount of consumed memory.
1030
+ Structure is documented below.
1031
+ :param 'PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyCpuThresholdsArgs' cpu_thresholds: Utilization thresholds pertaining to CPU utilization.
1032
+ Structure is documented below.
1033
+ :param 'PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyStorageThresholdsArgs' storage_thresholds: Utilization thresholds pertaining to amount of consumed storage.
1034
+ Structure is documented below.
1035
+ """
1036
+ pulumi.set(__self__, "autoscale_policy_id", autoscale_policy_id)
1037
+ pulumi.set(__self__, "node_type_id", node_type_id)
1038
+ pulumi.set(__self__, "scale_out_size", scale_out_size)
1039
+ if consumed_memory_thresholds is not None:
1040
+ pulumi.set(__self__, "consumed_memory_thresholds", consumed_memory_thresholds)
1041
+ if cpu_thresholds is not None:
1042
+ pulumi.set(__self__, "cpu_thresholds", cpu_thresholds)
1043
+ if storage_thresholds is not None:
1044
+ pulumi.set(__self__, "storage_thresholds", storage_thresholds)
1045
+
1046
+ @property
1047
+ @pulumi.getter(name="autoscalePolicyId")
1048
+ def autoscale_policy_id(self) -> str:
1049
+ """
1050
+ The identifier for this object. Format specified above.
1051
+ """
1052
+ return pulumi.get(self, "autoscale_policy_id")
1053
+
1054
+ @property
1055
+ @pulumi.getter(name="nodeTypeId")
1056
+ def node_type_id(self) -> str:
1057
+ """
1058
+ The canonical identifier of the node type to add or remove.
1059
+ """
1060
+ return pulumi.get(self, "node_type_id")
1061
+
1062
+ @property
1063
+ @pulumi.getter(name="scaleOutSize")
1064
+ def scale_out_size(self) -> int:
1065
+ """
1066
+ Number of nodes to add to a cluster during a scale-out operation.
1067
+ Must be divisible by 2 for stretched clusters.
1068
+ """
1069
+ return pulumi.get(self, "scale_out_size")
1070
+
1071
+ @property
1072
+ @pulumi.getter(name="consumedMemoryThresholds")
1073
+ def consumed_memory_thresholds(self) -> Optional['outputs.PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds']:
1074
+ """
1075
+ Utilization thresholds pertaining to amount of consumed memory.
1076
+ Structure is documented below.
1077
+ """
1078
+ return pulumi.get(self, "consumed_memory_thresholds")
1079
+
1080
+ @property
1081
+ @pulumi.getter(name="cpuThresholds")
1082
+ def cpu_thresholds(self) -> Optional['outputs.PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds']:
1083
+ """
1084
+ Utilization thresholds pertaining to CPU utilization.
1085
+ Structure is documented below.
1086
+ """
1087
+ return pulumi.get(self, "cpu_thresholds")
1088
+
1089
+ @property
1090
+ @pulumi.getter(name="storageThresholds")
1091
+ def storage_thresholds(self) -> Optional['outputs.PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds']:
1092
+ """
1093
+ Utilization thresholds pertaining to amount of consumed storage.
1094
+ Structure is documented below.
1095
+ """
1096
+ return pulumi.get(self, "storage_thresholds")
1097
+
1098
+
1099
+ @pulumi.output_type
1100
+ class PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds(dict):
1101
+ @staticmethod
1102
+ def __key_warning(key: str):
1103
+ suggest = None
1104
+ if key == "scaleIn":
1105
+ suggest = "scale_in"
1106
+ elif key == "scaleOut":
1107
+ suggest = "scale_out"
1108
+
1109
+ if suggest:
1110
+ pulumi.log.warn(f"Key '{key}' not found in PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds. Access the value via the '{suggest}' property getter instead.")
1111
+
1112
+ def __getitem__(self, key: str) -> Any:
1113
+ PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds.__key_warning(key)
1114
+ return super().__getitem__(key)
1115
+
1116
+ def get(self, key: str, default = None) -> Any:
1117
+ PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds.__key_warning(key)
1118
+ return super().get(key, default)
1119
+
1120
+ def __init__(__self__, *,
1121
+ scale_in: int,
1122
+ scale_out: int):
1123
+ """
1124
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
1125
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
1126
+ """
1127
+ pulumi.set(__self__, "scale_in", scale_in)
1128
+ pulumi.set(__self__, "scale_out", scale_out)
1129
+
1130
+ @property
1131
+ @pulumi.getter(name="scaleIn")
1132
+ def scale_in(self) -> int:
1133
+ """
1134
+ The utilization triggering the scale-in operation in percent.
1135
+ """
1136
+ return pulumi.get(self, "scale_in")
1137
+
1138
+ @property
1139
+ @pulumi.getter(name="scaleOut")
1140
+ def scale_out(self) -> int:
1141
+ """
1142
+ The utilization triggering the scale-out operation in percent.
1143
+ """
1144
+ return pulumi.get(self, "scale_out")
1145
+
1146
+
1147
+ @pulumi.output_type
1148
+ class PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds(dict):
1149
+ @staticmethod
1150
+ def __key_warning(key: str):
1151
+ suggest = None
1152
+ if key == "scaleIn":
1153
+ suggest = "scale_in"
1154
+ elif key == "scaleOut":
1155
+ suggest = "scale_out"
1156
+
1157
+ if suggest:
1158
+ pulumi.log.warn(f"Key '{key}' not found in PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds. Access the value via the '{suggest}' property getter instead.")
1159
+
1160
+ def __getitem__(self, key: str) -> Any:
1161
+ PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds.__key_warning(key)
1162
+ return super().__getitem__(key)
1163
+
1164
+ def get(self, key: str, default = None) -> Any:
1165
+ PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds.__key_warning(key)
1166
+ return super().get(key, default)
1167
+
1168
+ def __init__(__self__, *,
1169
+ scale_in: int,
1170
+ scale_out: int):
1171
+ """
1172
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
1173
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
1174
+ """
1175
+ pulumi.set(__self__, "scale_in", scale_in)
1176
+ pulumi.set(__self__, "scale_out", scale_out)
1177
+
1178
+ @property
1179
+ @pulumi.getter(name="scaleIn")
1180
+ def scale_in(self) -> int:
1181
+ """
1182
+ The utilization triggering the scale-in operation in percent.
1183
+ """
1184
+ return pulumi.get(self, "scale_in")
1185
+
1186
+ @property
1187
+ @pulumi.getter(name="scaleOut")
1188
+ def scale_out(self) -> int:
1189
+ """
1190
+ The utilization triggering the scale-out operation in percent.
1191
+ """
1192
+ return pulumi.get(self, "scale_out")
1193
+
1194
+
1195
+ @pulumi.output_type
1196
+ class PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds(dict):
1197
+ @staticmethod
1198
+ def __key_warning(key: str):
1199
+ suggest = None
1200
+ if key == "scaleIn":
1201
+ suggest = "scale_in"
1202
+ elif key == "scaleOut":
1203
+ suggest = "scale_out"
1204
+
1205
+ if suggest:
1206
+ pulumi.log.warn(f"Key '{key}' not found in PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds. Access the value via the '{suggest}' property getter instead.")
412
1207
 
413
1208
  def __getitem__(self, key: str) -> Any:
414
- PrivateCloudManagementCluster.__key_warning(key)
1209
+ PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds.__key_warning(key)
415
1210
  return super().__getitem__(key)
416
1211
 
417
1212
  def get(self, key: str, default = None) -> Any:
418
- PrivateCloudManagementCluster.__key_warning(key)
1213
+ PrivateCloudManagementClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds.__key_warning(key)
419
1214
  return super().get(key, default)
420
1215
 
421
1216
  def __init__(__self__, *,
422
- cluster_id: str,
423
- node_type_configs: Optional[Sequence['outputs.PrivateCloudManagementClusterNodeTypeConfig']] = None,
424
- stretched_cluster_config: Optional['outputs.PrivateCloudManagementClusterStretchedClusterConfig'] = None):
1217
+ scale_in: int,
1218
+ scale_out: int):
425
1219
  """
426
- :param str cluster_id: The user-provided identifier of the new Cluster. The identifier must meet the following requirements:
427
- * Only contains 1-63 alphanumeric characters and hyphens
428
- * Begins with an alphabetical character
429
- * Ends with a non-hyphen character
430
- * Not formatted as a UUID
431
- * Complies with RFC 1034 (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
432
- :param Sequence['PrivateCloudManagementClusterNodeTypeConfigArgs'] node_type_configs: The map of cluster node types in this cluster,
433
- where the key is canonical identifier of the node type (corresponds to the NodeType).
434
- Structure is documented below.
435
- :param 'PrivateCloudManagementClusterStretchedClusterConfigArgs' stretched_cluster_config: The stretched cluster configuration for the private cloud.
436
- Structure is documented below.
1220
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
1221
+
1222
+ - - -
1223
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
437
1224
  """
438
- pulumi.set(__self__, "cluster_id", cluster_id)
439
- if node_type_configs is not None:
440
- pulumi.set(__self__, "node_type_configs", node_type_configs)
441
- if stretched_cluster_config is not None:
442
- pulumi.set(__self__, "stretched_cluster_config", stretched_cluster_config)
1225
+ pulumi.set(__self__, "scale_in", scale_in)
1226
+ pulumi.set(__self__, "scale_out", scale_out)
443
1227
 
444
1228
  @property
445
- @pulumi.getter(name="clusterId")
446
- def cluster_id(self) -> str:
447
- """
448
- The user-provided identifier of the new Cluster. The identifier must meet the following requirements:
449
- * Only contains 1-63 alphanumeric characters and hyphens
450
- * Begins with an alphabetical character
451
- * Ends with a non-hyphen character
452
- * Not formatted as a UUID
453
- * Complies with RFC 1034 (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
1229
+ @pulumi.getter(name="scaleIn")
1230
+ def scale_in(self) -> int:
454
1231
  """
455
- return pulumi.get(self, "cluster_id")
1232
+ The utilization triggering the scale-in operation in percent.
456
1233
 
457
- @property
458
- @pulumi.getter(name="nodeTypeConfigs")
459
- def node_type_configs(self) -> Optional[Sequence['outputs.PrivateCloudManagementClusterNodeTypeConfig']]:
460
- """
461
- The map of cluster node types in this cluster,
462
- where the key is canonical identifier of the node type (corresponds to the NodeType).
463
- Structure is documented below.
1234
+ - - -
464
1235
  """
465
- return pulumi.get(self, "node_type_configs")
1236
+ return pulumi.get(self, "scale_in")
466
1237
 
467
1238
  @property
468
- @pulumi.getter(name="stretchedClusterConfig")
469
- def stretched_cluster_config(self) -> Optional['outputs.PrivateCloudManagementClusterStretchedClusterConfig']:
1239
+ @pulumi.getter(name="scaleOut")
1240
+ def scale_out(self) -> int:
470
1241
  """
471
- The stretched cluster configuration for the private cloud.
472
- Structure is documented below.
1242
+ The utilization triggering the scale-out operation in percent.
473
1243
  """
474
- return pulumi.get(self, "stretched_cluster_config")
1244
+ return pulumi.get(self, "scale_out")
475
1245
 
476
1246
 
477
1247
  @pulumi.output_type
@@ -569,8 +1339,6 @@ class PrivateCloudManagementClusterStretchedClusterConfig(dict):
569
1339
  """
570
1340
  :param str preferred_location: Zone that will remain operational when connection between the two zones is lost.
571
1341
  :param str secondary_location: Additional zone for a higher level of availability and load balancing.
572
-
573
- - - -
574
1342
  """
575
1343
  if preferred_location is not None:
576
1344
  pulumi.set(__self__, "preferred_location", preferred_location)
@@ -590,8 +1358,6 @@ class PrivateCloudManagementClusterStretchedClusterConfig(dict):
590
1358
  def secondary_location(self) -> Optional[str]:
591
1359
  """
592
1360
  Additional zone for a higher level of availability and load balancing.
593
-
594
- - - -
595
1361
  """
596
1362
  return pulumi.get(self, "secondary_location")
597
1363
 
@@ -911,6 +1677,247 @@ class SubnetDhcpAddressRange(dict):
911
1677
  return pulumi.get(self, "last_address")
912
1678
 
913
1679
 
1680
+ @pulumi.output_type
1681
+ class GetClusterAutoscalingSettingResult(dict):
1682
+ def __init__(__self__, *,
1683
+ autoscaling_policies: Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyResult'],
1684
+ cool_down_period: str,
1685
+ max_cluster_node_count: int,
1686
+ min_cluster_node_count: int):
1687
+ """
1688
+ :param Sequence['GetClusterAutoscalingSettingAutoscalingPolicyArgs'] autoscaling_policies: The map with autoscaling policies applied to the cluster.
1689
+ The key is the identifier of the policy.
1690
+ It must meet the following requirements:
1691
+ * Only contains 1-63 alphanumeric characters and hyphens
1692
+ * Begins with an alphabetical character
1693
+ * Ends with a non-hyphen character
1694
+ * Not formatted as a UUID
1695
+ * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
1696
+
1697
+ Currently the map must contain only one element
1698
+ that describes the autoscaling policy for compute nodes.
1699
+ :param str cool_down_period: The minimum duration between consecutive autoscale operations.
1700
+ It starts once addition or removal of nodes is fully completed.
1701
+ Minimum cool down period is 30m.
1702
+ Cool down period must be in whole minutes (for example, 30m, 31m, 50m).
1703
+ Mandatory for successful addition of autoscaling settings in cluster.
1704
+ :param int max_cluster_node_count: Maximum number of nodes of any type in a cluster.
1705
+ Mandatory for successful addition of autoscaling settings in cluster.
1706
+ :param int min_cluster_node_count: Minimum number of nodes of any type in a cluster.
1707
+ Mandatory for successful addition of autoscaling settings in cluster.
1708
+ """
1709
+ pulumi.set(__self__, "autoscaling_policies", autoscaling_policies)
1710
+ pulumi.set(__self__, "cool_down_period", cool_down_period)
1711
+ pulumi.set(__self__, "max_cluster_node_count", max_cluster_node_count)
1712
+ pulumi.set(__self__, "min_cluster_node_count", min_cluster_node_count)
1713
+
1714
+ @property
1715
+ @pulumi.getter(name="autoscalingPolicies")
1716
+ def autoscaling_policies(self) -> Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyResult']:
1717
+ """
1718
+ The map with autoscaling policies applied to the cluster.
1719
+ The key is the identifier of the policy.
1720
+ It must meet the following requirements:
1721
+ * Only contains 1-63 alphanumeric characters and hyphens
1722
+ * Begins with an alphabetical character
1723
+ * Ends with a non-hyphen character
1724
+ * Not formatted as a UUID
1725
+ * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
1726
+
1727
+ Currently the map must contain only one element
1728
+ that describes the autoscaling policy for compute nodes.
1729
+ """
1730
+ return pulumi.get(self, "autoscaling_policies")
1731
+
1732
+ @property
1733
+ @pulumi.getter(name="coolDownPeriod")
1734
+ def cool_down_period(self) -> str:
1735
+ """
1736
+ The minimum duration between consecutive autoscale operations.
1737
+ It starts once addition or removal of nodes is fully completed.
1738
+ Minimum cool down period is 30m.
1739
+ Cool down period must be in whole minutes (for example, 30m, 31m, 50m).
1740
+ Mandatory for successful addition of autoscaling settings in cluster.
1741
+ """
1742
+ return pulumi.get(self, "cool_down_period")
1743
+
1744
+ @property
1745
+ @pulumi.getter(name="maxClusterNodeCount")
1746
+ def max_cluster_node_count(self) -> int:
1747
+ """
1748
+ Maximum number of nodes of any type in a cluster.
1749
+ Mandatory for successful addition of autoscaling settings in cluster.
1750
+ """
1751
+ return pulumi.get(self, "max_cluster_node_count")
1752
+
1753
+ @property
1754
+ @pulumi.getter(name="minClusterNodeCount")
1755
+ def min_cluster_node_count(self) -> int:
1756
+ """
1757
+ Minimum number of nodes of any type in a cluster.
1758
+ Mandatory for successful addition of autoscaling settings in cluster.
1759
+ """
1760
+ return pulumi.get(self, "min_cluster_node_count")
1761
+
1762
+
1763
+ @pulumi.output_type
1764
+ class GetClusterAutoscalingSettingAutoscalingPolicyResult(dict):
1765
+ def __init__(__self__, *,
1766
+ autoscale_policy_id: str,
1767
+ consumed_memory_thresholds: Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdResult'],
1768
+ cpu_thresholds: Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyCpuThresholdResult'],
1769
+ node_type_id: str,
1770
+ scale_out_size: int,
1771
+ storage_thresholds: Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyStorageThresholdResult']):
1772
+ """
1773
+ :param Sequence['GetClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdArgs'] consumed_memory_thresholds: Utilization thresholds pertaining to amount of consumed memory.
1774
+ :param Sequence['GetClusterAutoscalingSettingAutoscalingPolicyCpuThresholdArgs'] cpu_thresholds: Utilization thresholds pertaining to CPU utilization.
1775
+ :param str node_type_id: The canonical identifier of the node type to add or remove.
1776
+ :param int scale_out_size: Number of nodes to add to a cluster during a scale-out operation.
1777
+ Must be divisible by 2 for stretched clusters.
1778
+ :param Sequence['GetClusterAutoscalingSettingAutoscalingPolicyStorageThresholdArgs'] storage_thresholds: Utilization thresholds pertaining to amount of consumed storage.
1779
+ """
1780
+ pulumi.set(__self__, "autoscale_policy_id", autoscale_policy_id)
1781
+ pulumi.set(__self__, "consumed_memory_thresholds", consumed_memory_thresholds)
1782
+ pulumi.set(__self__, "cpu_thresholds", cpu_thresholds)
1783
+ pulumi.set(__self__, "node_type_id", node_type_id)
1784
+ pulumi.set(__self__, "scale_out_size", scale_out_size)
1785
+ pulumi.set(__self__, "storage_thresholds", storage_thresholds)
1786
+
1787
+ @property
1788
+ @pulumi.getter(name="autoscalePolicyId")
1789
+ def autoscale_policy_id(self) -> str:
1790
+ return pulumi.get(self, "autoscale_policy_id")
1791
+
1792
+ @property
1793
+ @pulumi.getter(name="consumedMemoryThresholds")
1794
+ def consumed_memory_thresholds(self) -> Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdResult']:
1795
+ """
1796
+ Utilization thresholds pertaining to amount of consumed memory.
1797
+ """
1798
+ return pulumi.get(self, "consumed_memory_thresholds")
1799
+
1800
+ @property
1801
+ @pulumi.getter(name="cpuThresholds")
1802
+ def cpu_thresholds(self) -> Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyCpuThresholdResult']:
1803
+ """
1804
+ Utilization thresholds pertaining to CPU utilization.
1805
+ """
1806
+ return pulumi.get(self, "cpu_thresholds")
1807
+
1808
+ @property
1809
+ @pulumi.getter(name="nodeTypeId")
1810
+ def node_type_id(self) -> str:
1811
+ """
1812
+ The canonical identifier of the node type to add or remove.
1813
+ """
1814
+ return pulumi.get(self, "node_type_id")
1815
+
1816
+ @property
1817
+ @pulumi.getter(name="scaleOutSize")
1818
+ def scale_out_size(self) -> int:
1819
+ """
1820
+ Number of nodes to add to a cluster during a scale-out operation.
1821
+ Must be divisible by 2 for stretched clusters.
1822
+ """
1823
+ return pulumi.get(self, "scale_out_size")
1824
+
1825
+ @property
1826
+ @pulumi.getter(name="storageThresholds")
1827
+ def storage_thresholds(self) -> Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyStorageThresholdResult']:
1828
+ """
1829
+ Utilization thresholds pertaining to amount of consumed storage.
1830
+ """
1831
+ return pulumi.get(self, "storage_thresholds")
1832
+
1833
+
1834
+ @pulumi.output_type
1835
+ class GetClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdResult(dict):
1836
+ def __init__(__self__, *,
1837
+ scale_in: int,
1838
+ scale_out: int):
1839
+ """
1840
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
1841
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
1842
+ """
1843
+ pulumi.set(__self__, "scale_in", scale_in)
1844
+ pulumi.set(__self__, "scale_out", scale_out)
1845
+
1846
+ @property
1847
+ @pulumi.getter(name="scaleIn")
1848
+ def scale_in(self) -> int:
1849
+ """
1850
+ The utilization triggering the scale-in operation in percent.
1851
+ """
1852
+ return pulumi.get(self, "scale_in")
1853
+
1854
+ @property
1855
+ @pulumi.getter(name="scaleOut")
1856
+ def scale_out(self) -> int:
1857
+ """
1858
+ The utilization triggering the scale-out operation in percent.
1859
+ """
1860
+ return pulumi.get(self, "scale_out")
1861
+
1862
+
1863
+ @pulumi.output_type
1864
+ class GetClusterAutoscalingSettingAutoscalingPolicyCpuThresholdResult(dict):
1865
+ def __init__(__self__, *,
1866
+ scale_in: int,
1867
+ scale_out: int):
1868
+ """
1869
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
1870
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
1871
+ """
1872
+ pulumi.set(__self__, "scale_in", scale_in)
1873
+ pulumi.set(__self__, "scale_out", scale_out)
1874
+
1875
+ @property
1876
+ @pulumi.getter(name="scaleIn")
1877
+ def scale_in(self) -> int:
1878
+ """
1879
+ The utilization triggering the scale-in operation in percent.
1880
+ """
1881
+ return pulumi.get(self, "scale_in")
1882
+
1883
+ @property
1884
+ @pulumi.getter(name="scaleOut")
1885
+ def scale_out(self) -> int:
1886
+ """
1887
+ The utilization triggering the scale-out operation in percent.
1888
+ """
1889
+ return pulumi.get(self, "scale_out")
1890
+
1891
+
1892
+ @pulumi.output_type
1893
+ class GetClusterAutoscalingSettingAutoscalingPolicyStorageThresholdResult(dict):
1894
+ def __init__(__self__, *,
1895
+ scale_in: int,
1896
+ scale_out: int):
1897
+ """
1898
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
1899
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
1900
+ """
1901
+ pulumi.set(__self__, "scale_in", scale_in)
1902
+ pulumi.set(__self__, "scale_out", scale_out)
1903
+
1904
+ @property
1905
+ @pulumi.getter(name="scaleIn")
1906
+ def scale_in(self) -> int:
1907
+ """
1908
+ The utilization triggering the scale-in operation in percent.
1909
+ """
1910
+ return pulumi.get(self, "scale_in")
1911
+
1912
+ @property
1913
+ @pulumi.getter(name="scaleOut")
1914
+ def scale_out(self) -> int:
1915
+ """
1916
+ The utilization triggering the scale-out operation in percent.
1917
+ """
1918
+ return pulumi.get(self, "scale_out")
1919
+
1920
+
914
1921
  @pulumi.output_type
915
1922
  class GetClusterNodeTypeConfigResult(dict):
916
1923
  def __init__(__self__, *,
@@ -1154,10 +2161,13 @@ class GetPrivateCloudHcxResult(dict):
1154
2161
  @pulumi.output_type
1155
2162
  class GetPrivateCloudManagementClusterResult(dict):
1156
2163
  def __init__(__self__, *,
2164
+ autoscaling_settings: Sequence['outputs.GetPrivateCloudManagementClusterAutoscalingSettingResult'],
1157
2165
  cluster_id: str,
1158
2166
  node_type_configs: Sequence['outputs.GetPrivateCloudManagementClusterNodeTypeConfigResult'],
1159
2167
  stretched_cluster_configs: Sequence['outputs.GetPrivateCloudManagementClusterStretchedClusterConfigResult']):
1160
2168
  """
2169
+ :param Sequence['GetPrivateCloudManagementClusterAutoscalingSettingArgs'] autoscaling_settings: Configuration of the autoscaling applied to this cluster
2170
+ Private cloud must have a minimum of 3 nodes to add autoscale settings
1161
2171
  :param str cluster_id: The user-provided identifier of the new Cluster. The identifier must meet the following requirements:
1162
2172
  * Only contains 1-63 alphanumeric characters and hyphens
1163
2173
  * Begins with an alphabetical character
@@ -1168,10 +2178,20 @@ class GetPrivateCloudManagementClusterResult(dict):
1168
2178
  where the key is canonical identifier of the node type (corresponds to the NodeType).
1169
2179
  :param Sequence['GetPrivateCloudManagementClusterStretchedClusterConfigArgs'] stretched_cluster_configs: The stretched cluster configuration for the private cloud.
1170
2180
  """
2181
+ pulumi.set(__self__, "autoscaling_settings", autoscaling_settings)
1171
2182
  pulumi.set(__self__, "cluster_id", cluster_id)
1172
2183
  pulumi.set(__self__, "node_type_configs", node_type_configs)
1173
2184
  pulumi.set(__self__, "stretched_cluster_configs", stretched_cluster_configs)
1174
2185
 
2186
+ @property
2187
+ @pulumi.getter(name="autoscalingSettings")
2188
+ def autoscaling_settings(self) -> Sequence['outputs.GetPrivateCloudManagementClusterAutoscalingSettingResult']:
2189
+ """
2190
+ Configuration of the autoscaling applied to this cluster
2191
+ Private cloud must have a minimum of 3 nodes to add autoscale settings
2192
+ """
2193
+ return pulumi.get(self, "autoscaling_settings")
2194
+
1175
2195
  @property
1176
2196
  @pulumi.getter(name="clusterId")
1177
2197
  def cluster_id(self) -> str:
@@ -1203,6 +2223,247 @@ class GetPrivateCloudManagementClusterResult(dict):
1203
2223
  return pulumi.get(self, "stretched_cluster_configs")
1204
2224
 
1205
2225
 
2226
+ @pulumi.output_type
2227
+ class GetPrivateCloudManagementClusterAutoscalingSettingResult(dict):
2228
+ def __init__(__self__, *,
2229
+ autoscaling_policies: Sequence['outputs.GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyResult'],
2230
+ cool_down_period: str,
2231
+ max_cluster_node_count: int,
2232
+ min_cluster_node_count: int):
2233
+ """
2234
+ :param Sequence['GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyArgs'] autoscaling_policies: The map with autoscaling policies applied to the cluster.
2235
+ The key is the identifier of the policy.
2236
+ It must meet the following requirements:
2237
+ * Only contains 1-63 alphanumeric characters and hyphens
2238
+ * Begins with an alphabetical character
2239
+ * Ends with a non-hyphen character
2240
+ * Not formatted as a UUID
2241
+ * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
2242
+
2243
+ Currently the map must contain only one element
2244
+ that describes the autoscaling policy for compute nodes.
2245
+ :param str cool_down_period: The minimum duration between consecutive autoscale operations.
2246
+ It starts once addition or removal of nodes is fully completed.
2247
+ Minimum cool down period is 30m.
2248
+ Cool down period must be in whole minutes (for example, 30m, 31m, 50m).
2249
+ Mandatory for successful addition of autoscaling settings in cluster.
2250
+ :param int max_cluster_node_count: Maximum number of nodes of any type in a cluster.
2251
+ Mandatory for successful addition of autoscaling settings in cluster.
2252
+ :param int min_cluster_node_count: Minimum number of nodes of any type in a cluster.
2253
+ Mandatory for successful addition of autoscaling settings in cluster.
2254
+ """
2255
+ pulumi.set(__self__, "autoscaling_policies", autoscaling_policies)
2256
+ pulumi.set(__self__, "cool_down_period", cool_down_period)
2257
+ pulumi.set(__self__, "max_cluster_node_count", max_cluster_node_count)
2258
+ pulumi.set(__self__, "min_cluster_node_count", min_cluster_node_count)
2259
+
2260
+ @property
2261
+ @pulumi.getter(name="autoscalingPolicies")
2262
+ def autoscaling_policies(self) -> Sequence['outputs.GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyResult']:
2263
+ """
2264
+ The map with autoscaling policies applied to the cluster.
2265
+ The key is the identifier of the policy.
2266
+ It must meet the following requirements:
2267
+ * Only contains 1-63 alphanumeric characters and hyphens
2268
+ * Begins with an alphabetical character
2269
+ * Ends with a non-hyphen character
2270
+ * Not formatted as a UUID
2271
+ * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
2272
+
2273
+ Currently the map must contain only one element
2274
+ that describes the autoscaling policy for compute nodes.
2275
+ """
2276
+ return pulumi.get(self, "autoscaling_policies")
2277
+
2278
+ @property
2279
+ @pulumi.getter(name="coolDownPeriod")
2280
+ def cool_down_period(self) -> str:
2281
+ """
2282
+ The minimum duration between consecutive autoscale operations.
2283
+ It starts once addition or removal of nodes is fully completed.
2284
+ Minimum cool down period is 30m.
2285
+ Cool down period must be in whole minutes (for example, 30m, 31m, 50m).
2286
+ Mandatory for successful addition of autoscaling settings in cluster.
2287
+ """
2288
+ return pulumi.get(self, "cool_down_period")
2289
+
2290
+ @property
2291
+ @pulumi.getter(name="maxClusterNodeCount")
2292
+ def max_cluster_node_count(self) -> int:
2293
+ """
2294
+ Maximum number of nodes of any type in a cluster.
2295
+ Mandatory for successful addition of autoscaling settings in cluster.
2296
+ """
2297
+ return pulumi.get(self, "max_cluster_node_count")
2298
+
2299
+ @property
2300
+ @pulumi.getter(name="minClusterNodeCount")
2301
+ def min_cluster_node_count(self) -> int:
2302
+ """
2303
+ Minimum number of nodes of any type in a cluster.
2304
+ Mandatory for successful addition of autoscaling settings in cluster.
2305
+ """
2306
+ return pulumi.get(self, "min_cluster_node_count")
2307
+
2308
+
2309
+ @pulumi.output_type
2310
+ class GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyResult(dict):
2311
+ def __init__(__self__, *,
2312
+ autoscale_policy_id: str,
2313
+ consumed_memory_thresholds: Sequence['outputs.GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdResult'],
2314
+ cpu_thresholds: Sequence['outputs.GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyCpuThresholdResult'],
2315
+ node_type_id: str,
2316
+ scale_out_size: int,
2317
+ storage_thresholds: Sequence['outputs.GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyStorageThresholdResult']):
2318
+ """
2319
+ :param Sequence['GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdArgs'] consumed_memory_thresholds: Utilization thresholds pertaining to amount of consumed memory.
2320
+ :param Sequence['GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyCpuThresholdArgs'] cpu_thresholds: Utilization thresholds pertaining to CPU utilization.
2321
+ :param str node_type_id: The canonical identifier of the node type to add or remove.
2322
+ :param int scale_out_size: Number of nodes to add to a cluster during a scale-out operation.
2323
+ Must be divisible by 2 for stretched clusters.
2324
+ :param Sequence['GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyStorageThresholdArgs'] storage_thresholds: Utilization thresholds pertaining to amount of consumed storage.
2325
+ """
2326
+ pulumi.set(__self__, "autoscale_policy_id", autoscale_policy_id)
2327
+ pulumi.set(__self__, "consumed_memory_thresholds", consumed_memory_thresholds)
2328
+ pulumi.set(__self__, "cpu_thresholds", cpu_thresholds)
2329
+ pulumi.set(__self__, "node_type_id", node_type_id)
2330
+ pulumi.set(__self__, "scale_out_size", scale_out_size)
2331
+ pulumi.set(__self__, "storage_thresholds", storage_thresholds)
2332
+
2333
+ @property
2334
+ @pulumi.getter(name="autoscalePolicyId")
2335
+ def autoscale_policy_id(self) -> str:
2336
+ return pulumi.get(self, "autoscale_policy_id")
2337
+
2338
+ @property
2339
+ @pulumi.getter(name="consumedMemoryThresholds")
2340
+ def consumed_memory_thresholds(self) -> Sequence['outputs.GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdResult']:
2341
+ """
2342
+ Utilization thresholds pertaining to amount of consumed memory.
2343
+ """
2344
+ return pulumi.get(self, "consumed_memory_thresholds")
2345
+
2346
+ @property
2347
+ @pulumi.getter(name="cpuThresholds")
2348
+ def cpu_thresholds(self) -> Sequence['outputs.GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyCpuThresholdResult']:
2349
+ """
2350
+ Utilization thresholds pertaining to CPU utilization.
2351
+ """
2352
+ return pulumi.get(self, "cpu_thresholds")
2353
+
2354
+ @property
2355
+ @pulumi.getter(name="nodeTypeId")
2356
+ def node_type_id(self) -> str:
2357
+ """
2358
+ The canonical identifier of the node type to add or remove.
2359
+ """
2360
+ return pulumi.get(self, "node_type_id")
2361
+
2362
+ @property
2363
+ @pulumi.getter(name="scaleOutSize")
2364
+ def scale_out_size(self) -> int:
2365
+ """
2366
+ Number of nodes to add to a cluster during a scale-out operation.
2367
+ Must be divisible by 2 for stretched clusters.
2368
+ """
2369
+ return pulumi.get(self, "scale_out_size")
2370
+
2371
+ @property
2372
+ @pulumi.getter(name="storageThresholds")
2373
+ def storage_thresholds(self) -> Sequence['outputs.GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyStorageThresholdResult']:
2374
+ """
2375
+ Utilization thresholds pertaining to amount of consumed storage.
2376
+ """
2377
+ return pulumi.get(self, "storage_thresholds")
2378
+
2379
+
2380
+ @pulumi.output_type
2381
+ class GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdResult(dict):
2382
+ def __init__(__self__, *,
2383
+ scale_in: int,
2384
+ scale_out: int):
2385
+ """
2386
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
2387
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
2388
+ """
2389
+ pulumi.set(__self__, "scale_in", scale_in)
2390
+ pulumi.set(__self__, "scale_out", scale_out)
2391
+
2392
+ @property
2393
+ @pulumi.getter(name="scaleIn")
2394
+ def scale_in(self) -> int:
2395
+ """
2396
+ The utilization triggering the scale-in operation in percent.
2397
+ """
2398
+ return pulumi.get(self, "scale_in")
2399
+
2400
+ @property
2401
+ @pulumi.getter(name="scaleOut")
2402
+ def scale_out(self) -> int:
2403
+ """
2404
+ The utilization triggering the scale-out operation in percent.
2405
+ """
2406
+ return pulumi.get(self, "scale_out")
2407
+
2408
+
2409
+ @pulumi.output_type
2410
+ class GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyCpuThresholdResult(dict):
2411
+ def __init__(__self__, *,
2412
+ scale_in: int,
2413
+ scale_out: int):
2414
+ """
2415
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
2416
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
2417
+ """
2418
+ pulumi.set(__self__, "scale_in", scale_in)
2419
+ pulumi.set(__self__, "scale_out", scale_out)
2420
+
2421
+ @property
2422
+ @pulumi.getter(name="scaleIn")
2423
+ def scale_in(self) -> int:
2424
+ """
2425
+ The utilization triggering the scale-in operation in percent.
2426
+ """
2427
+ return pulumi.get(self, "scale_in")
2428
+
2429
+ @property
2430
+ @pulumi.getter(name="scaleOut")
2431
+ def scale_out(self) -> int:
2432
+ """
2433
+ The utilization triggering the scale-out operation in percent.
2434
+ """
2435
+ return pulumi.get(self, "scale_out")
2436
+
2437
+
2438
+ @pulumi.output_type
2439
+ class GetPrivateCloudManagementClusterAutoscalingSettingAutoscalingPolicyStorageThresholdResult(dict):
2440
+ def __init__(__self__, *,
2441
+ scale_in: int,
2442
+ scale_out: int):
2443
+ """
2444
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
2445
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
2446
+ """
2447
+ pulumi.set(__self__, "scale_in", scale_in)
2448
+ pulumi.set(__self__, "scale_out", scale_out)
2449
+
2450
+ @property
2451
+ @pulumi.getter(name="scaleIn")
2452
+ def scale_in(self) -> int:
2453
+ """
2454
+ The utilization triggering the scale-in operation in percent.
2455
+ """
2456
+ return pulumi.get(self, "scale_in")
2457
+
2458
+ @property
2459
+ @pulumi.getter(name="scaleOut")
2460
+ def scale_out(self) -> int:
2461
+ """
2462
+ The utilization triggering the scale-out operation in percent.
2463
+ """
2464
+ return pulumi.get(self, "scale_out")
2465
+
2466
+
1206
2467
  @pulumi.output_type
1207
2468
  class GetPrivateCloudManagementClusterNodeTypeConfigResult(dict):
1208
2469
  def __init__(__self__, *,