pulumi-gcp 8.7.0a1730183903__py3-none-any.whl → 8.7.0a1730196225__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 (111) hide show
  1. pulumi_gcp/__init__.py +70 -0
  2. pulumi_gcp/accesscontextmanager/service_perimeter.py +2 -0
  3. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_egress_policy.py +4 -0
  4. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_ingress_policy.py +4 -0
  5. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +4 -0
  6. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +4 -0
  7. pulumi_gcp/accesscontextmanager/service_perimeters.py +2 -0
  8. pulumi_gcp/apigee/__init__.py +2 -0
  9. pulumi_gcp/apigee/_inputs.py +108 -0
  10. pulumi_gcp/apigee/app_group.py +811 -0
  11. pulumi_gcp/apigee/developer.py +757 -0
  12. pulumi_gcp/apigee/outputs.py +64 -0
  13. pulumi_gcp/artifactregistry/get_docker_image.py +40 -0
  14. pulumi_gcp/bigquery/connection.py +12 -12
  15. pulumi_gcp/bigquery/job.py +6 -6
  16. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  17. pulumi_gcp/cloudrunv2/service.py +92 -0
  18. pulumi_gcp/compute/_inputs.py +214 -116
  19. pulumi_gcp/compute/backend_service.py +76 -0
  20. pulumi_gcp/compute/get_backend_service.py +12 -1
  21. pulumi_gcp/compute/get_instance.py +29 -1
  22. pulumi_gcp/compute/get_instance_template.py +29 -1
  23. pulumi_gcp/compute/get_region_instance_group_manager.py +0 -18
  24. pulumi_gcp/compute/get_region_instance_template.py +29 -1
  25. pulumi_gcp/compute/instance.py +89 -0
  26. pulumi_gcp/compute/instance_from_machine_image.py +82 -0
  27. pulumi_gcp/compute/instance_from_template.py +82 -0
  28. pulumi_gcp/compute/instance_template.py +75 -0
  29. pulumi_gcp/compute/network_firewall_policy_association.py +76 -50
  30. pulumi_gcp/compute/network_firewall_policy_rule.py +149 -103
  31. pulumi_gcp/compute/outputs.py +170 -80
  32. pulumi_gcp/compute/region_backend_service.py +94 -0
  33. pulumi_gcp/compute/region_instance_template.py +75 -0
  34. pulumi_gcp/compute/region_network_endpoint_group.py +6 -4
  35. pulumi_gcp/compute/region_network_firewall_policy_association.py +104 -54
  36. pulumi_gcp/compute/region_network_firewall_policy_rule.py +160 -107
  37. pulumi_gcp/config/__init__.pyi +4 -0
  38. pulumi_gcp/config/vars.py +8 -0
  39. pulumi_gcp/container/attached_cluster.py +9 -6
  40. pulumi_gcp/container/outputs.py +2 -2
  41. pulumi_gcp/datastream/stream.py +2 -2
  42. pulumi_gcp/diagflow/_inputs.py +472 -2
  43. pulumi_gcp/diagflow/cx_agent.py +64 -4
  44. pulumi_gcp/diagflow/cx_flow.py +30 -0
  45. pulumi_gcp/diagflow/outputs.py +378 -2
  46. pulumi_gcp/gkehub/feature.py +2 -4
  47. pulumi_gcp/iam/workload_identity_pool_provider.py +56 -0
  48. pulumi_gcp/looker/instance.py +104 -2
  49. pulumi_gcp/monitoring/_inputs.py +23 -0
  50. pulumi_gcp/monitoring/get_secret_version.py +22 -3
  51. pulumi_gcp/monitoring/outputs.py +16 -0
  52. pulumi_gcp/networkconnectivity/__init__.py +1 -0
  53. pulumi_gcp/networkconnectivity/_inputs.py +148 -0
  54. pulumi_gcp/networkconnectivity/group.py +764 -0
  55. pulumi_gcp/networkconnectivity/outputs.py +125 -0
  56. pulumi_gcp/networkconnectivity/spoke.py +144 -0
  57. pulumi_gcp/networksecurity/server_tls_policy.py +2 -2
  58. pulumi_gcp/oracledatabase/__init__.py +20 -0
  59. pulumi_gcp/oracledatabase/_inputs.py +4745 -0
  60. pulumi_gcp/oracledatabase/autonomous_database.py +983 -0
  61. pulumi_gcp/oracledatabase/cloud_exadata_infrastructure.py +842 -0
  62. pulumi_gcp/oracledatabase/cloud_vm_cluster.py +1086 -0
  63. pulumi_gcp/oracledatabase/get_autonomous_database.py +290 -0
  64. pulumi_gcp/oracledatabase/get_autonomous_databases.py +150 -0
  65. pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructure.py +257 -0
  66. pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructures.py +150 -0
  67. pulumi_gcp/oracledatabase/get_cloud_vm_cluster.py +290 -0
  68. pulumi_gcp/oracledatabase/get_cloud_vm_clusters.py +150 -0
  69. pulumi_gcp/oracledatabase/get_db_nodes.py +245 -0
  70. pulumi_gcp/oracledatabase/get_db_servers.py +245 -0
  71. pulumi_gcp/oracledatabase/outputs.py +9304 -0
  72. pulumi_gcp/organizations/folder.py +7 -7
  73. pulumi_gcp/organizations/project.py +7 -7
  74. pulumi_gcp/orgpolicy/_inputs.py +3 -3
  75. pulumi_gcp/orgpolicy/outputs.py +2 -2
  76. pulumi_gcp/privilegedaccessmanager/get_entitlement.py +46 -2
  77. pulumi_gcp/provider.py +40 -0
  78. pulumi_gcp/pulumi-plugin.json +1 -1
  79. pulumi_gcp/secretmanager/get_regional_secret_version.py +24 -5
  80. pulumi_gcp/secretmanager/get_regional_secret_version_access.py +24 -5
  81. pulumi_gcp/secretmanager/get_secret_version.py +22 -3
  82. pulumi_gcp/secretmanager/get_secret_version_access.py +22 -3
  83. pulumi_gcp/secretmanager/regional_secret.py +2 -2
  84. pulumi_gcp/siteverification/get_token.py +0 -16
  85. pulumi_gcp/siteverification/owner.py +0 -16
  86. pulumi_gcp/spanner/_inputs.py +29 -5
  87. pulumi_gcp/spanner/outputs.py +20 -3
  88. pulumi_gcp/sql/_inputs.py +6 -6
  89. pulumi_gcp/sql/outputs.py +4 -4
  90. pulumi_gcp/sql/user.py +28 -21
  91. pulumi_gcp/storage/_inputs.py +36 -0
  92. pulumi_gcp/storage/bucket.py +47 -0
  93. pulumi_gcp/storage/get_bucket.py +12 -1
  94. pulumi_gcp/storage/outputs.py +40 -0
  95. pulumi_gcp/transcoder/__init__.py +11 -0
  96. pulumi_gcp/transcoder/_inputs.py +3991 -0
  97. pulumi_gcp/transcoder/job.py +2134 -0
  98. pulumi_gcp/transcoder/job_template.py +1524 -0
  99. pulumi_gcp/transcoder/outputs.py +2918 -0
  100. pulumi_gcp/vertex/ai_deployment_resource_pool.py +2 -2
  101. pulumi_gcp/vmwareengine/_inputs.py +440 -0
  102. pulumi_gcp/vmwareengine/cluster.py +100 -2
  103. pulumi_gcp/vmwareengine/get_cluster.py +12 -1
  104. pulumi_gcp/vmwareengine/outputs.py +615 -0
  105. pulumi_gcp/workstations/_inputs.py +54 -0
  106. pulumi_gcp/workstations/outputs.py +32 -0
  107. pulumi_gcp/workstations/workstation_config.py +205 -0
  108. {pulumi_gcp-8.7.0a1730183903.dist-info → pulumi_gcp-8.7.0a1730196225.dist-info}/METADATA +1 -1
  109. {pulumi_gcp-8.7.0a1730183903.dist-info → pulumi_gcp-8.7.0a1730196225.dist-info}/RECORD +111 -89
  110. {pulumi_gcp-8.7.0a1730183903.dist-info → pulumi_gcp-8.7.0a1730196225.dist-info}/WHEEL +1 -1
  111. {pulumi_gcp-8.7.0a1730183903.dist-info → pulumi_gcp-8.7.0a1730196225.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',
@@ -30,6 +35,11 @@ __all__ = [
30
35
  'PrivateCloudNsx',
31
36
  'PrivateCloudVcenter',
32
37
  'SubnetDhcpAddressRange',
38
+ 'GetClusterAutoscalingSettingResult',
39
+ 'GetClusterAutoscalingSettingAutoscalingPolicyResult',
40
+ 'GetClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdResult',
41
+ 'GetClusterAutoscalingSettingAutoscalingPolicyCpuThresholdResult',
42
+ 'GetClusterAutoscalingSettingAutoscalingPolicyStorageThresholdResult',
33
43
  'GetClusterNodeTypeConfigResult',
34
44
  'GetExternalAccessRuleDestinationIpRangeResult',
35
45
  'GetExternalAccessRuleSourceIpRangeResult',
@@ -46,6 +56,370 @@ __all__ = [
46
56
  'GetSubnetDhcpAddressRangeResult',
47
57
  ]
48
58
 
59
+ @pulumi.output_type
60
+ class ClusterAutoscalingSettings(dict):
61
+ @staticmethod
62
+ def __key_warning(key: str):
63
+ suggest = None
64
+ if key == "autoscalingPolicies":
65
+ suggest = "autoscaling_policies"
66
+ elif key == "coolDownPeriod":
67
+ suggest = "cool_down_period"
68
+ elif key == "maxClusterNodeCount":
69
+ suggest = "max_cluster_node_count"
70
+ elif key == "minClusterNodeCount":
71
+ suggest = "min_cluster_node_count"
72
+
73
+ if suggest:
74
+ pulumi.log.warn(f"Key '{key}' not found in ClusterAutoscalingSettings. Access the value via the '{suggest}' property getter instead.")
75
+
76
+ def __getitem__(self, key: str) -> Any:
77
+ ClusterAutoscalingSettings.__key_warning(key)
78
+ return super().__getitem__(key)
79
+
80
+ def get(self, key: str, default = None) -> Any:
81
+ ClusterAutoscalingSettings.__key_warning(key)
82
+ return super().get(key, default)
83
+
84
+ def __init__(__self__, *,
85
+ autoscaling_policies: Sequence['outputs.ClusterAutoscalingSettingsAutoscalingPolicy'],
86
+ cool_down_period: Optional[str] = None,
87
+ max_cluster_node_count: Optional[int] = None,
88
+ min_cluster_node_count: Optional[int] = None):
89
+ """
90
+ :param Sequence['ClusterAutoscalingSettingsAutoscalingPolicyArgs'] autoscaling_policies: The map with autoscaling policies applied to the cluster.
91
+ The key is the identifier of the policy.
92
+ It must meet the following requirements:
93
+ * Only contains 1-63 alphanumeric characters and hyphens
94
+ * Begins with an alphabetical character
95
+ * Ends with a non-hyphen character
96
+ * Not formatted as a UUID
97
+ * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
98
+ Currently the map must contain only one element
99
+ that describes the autoscaling policy for compute nodes.
100
+ Structure is documented below.
101
+ :param str cool_down_period: The minimum duration between consecutive autoscale operations.
102
+ It starts once addition or removal of nodes is fully completed.
103
+ Minimum cool down period is 30m.
104
+ Cool down period must be in whole minutes (for example, 30m, 31m, 50m).
105
+ Mandatory for successful addition of autoscaling settings in cluster.
106
+ :param int max_cluster_node_count: Maximum number of nodes of any type in a cluster.
107
+ Mandatory for successful addition of autoscaling settings in cluster.
108
+ :param int min_cluster_node_count: Minimum number of nodes of any type in a cluster.
109
+ Mandatory for successful addition of autoscaling settings in cluster.
110
+ """
111
+ pulumi.set(__self__, "autoscaling_policies", autoscaling_policies)
112
+ if cool_down_period is not None:
113
+ pulumi.set(__self__, "cool_down_period", cool_down_period)
114
+ if max_cluster_node_count is not None:
115
+ pulumi.set(__self__, "max_cluster_node_count", max_cluster_node_count)
116
+ if min_cluster_node_count is not None:
117
+ pulumi.set(__self__, "min_cluster_node_count", min_cluster_node_count)
118
+
119
+ @property
120
+ @pulumi.getter(name="autoscalingPolicies")
121
+ def autoscaling_policies(self) -> Sequence['outputs.ClusterAutoscalingSettingsAutoscalingPolicy']:
122
+ """
123
+ The map with autoscaling policies applied to the cluster.
124
+ The key is the identifier of the policy.
125
+ It must meet the following requirements:
126
+ * Only contains 1-63 alphanumeric characters and hyphens
127
+ * Begins with an alphabetical character
128
+ * Ends with a non-hyphen character
129
+ * Not formatted as a UUID
130
+ * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
131
+ Currently the map must contain only one element
132
+ that describes the autoscaling policy for compute nodes.
133
+ Structure is documented below.
134
+ """
135
+ return pulumi.get(self, "autoscaling_policies")
136
+
137
+ @property
138
+ @pulumi.getter(name="coolDownPeriod")
139
+ def cool_down_period(self) -> Optional[str]:
140
+ """
141
+ The minimum duration between consecutive autoscale operations.
142
+ It starts once addition or removal of nodes is fully completed.
143
+ Minimum cool down period is 30m.
144
+ Cool down period must be in whole minutes (for example, 30m, 31m, 50m).
145
+ Mandatory for successful addition of autoscaling settings in cluster.
146
+ """
147
+ return pulumi.get(self, "cool_down_period")
148
+
149
+ @property
150
+ @pulumi.getter(name="maxClusterNodeCount")
151
+ def max_cluster_node_count(self) -> Optional[int]:
152
+ """
153
+ Maximum number of nodes of any type in a cluster.
154
+ Mandatory for successful addition of autoscaling settings in cluster.
155
+ """
156
+ return pulumi.get(self, "max_cluster_node_count")
157
+
158
+ @property
159
+ @pulumi.getter(name="minClusterNodeCount")
160
+ def min_cluster_node_count(self) -> Optional[int]:
161
+ """
162
+ Minimum number of nodes of any type in a cluster.
163
+ Mandatory for successful addition of autoscaling settings in cluster.
164
+ """
165
+ return pulumi.get(self, "min_cluster_node_count")
166
+
167
+
168
+ @pulumi.output_type
169
+ class ClusterAutoscalingSettingsAutoscalingPolicy(dict):
170
+ @staticmethod
171
+ def __key_warning(key: str):
172
+ suggest = None
173
+ if key == "autoscalePolicyId":
174
+ suggest = "autoscale_policy_id"
175
+ elif key == "nodeTypeId":
176
+ suggest = "node_type_id"
177
+ elif key == "scaleOutSize":
178
+ suggest = "scale_out_size"
179
+ elif key == "consumedMemoryThresholds":
180
+ suggest = "consumed_memory_thresholds"
181
+ elif key == "cpuThresholds":
182
+ suggest = "cpu_thresholds"
183
+ elif key == "storageThresholds":
184
+ suggest = "storage_thresholds"
185
+
186
+ if suggest:
187
+ pulumi.log.warn(f"Key '{key}' not found in ClusterAutoscalingSettingsAutoscalingPolicy. Access the value via the '{suggest}' property getter instead.")
188
+
189
+ def __getitem__(self, key: str) -> Any:
190
+ ClusterAutoscalingSettingsAutoscalingPolicy.__key_warning(key)
191
+ return super().__getitem__(key)
192
+
193
+ def get(self, key: str, default = None) -> Any:
194
+ ClusterAutoscalingSettingsAutoscalingPolicy.__key_warning(key)
195
+ return super().get(key, default)
196
+
197
+ def __init__(__self__, *,
198
+ autoscale_policy_id: str,
199
+ node_type_id: str,
200
+ scale_out_size: int,
201
+ consumed_memory_thresholds: Optional['outputs.ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds'] = None,
202
+ cpu_thresholds: Optional['outputs.ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds'] = None,
203
+ storage_thresholds: Optional['outputs.ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds'] = None):
204
+ """
205
+ :param str autoscale_policy_id: The identifier for this object. Format specified above.
206
+ :param str node_type_id: The canonical identifier of the node type to add or remove.
207
+ :param int scale_out_size: Number of nodes to add to a cluster during a scale-out operation.
208
+ Must be divisible by 2 for stretched clusters.
209
+ :param 'ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholdsArgs' consumed_memory_thresholds: Utilization thresholds pertaining to amount of consumed memory.
210
+ Structure is documented below.
211
+ :param 'ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholdsArgs' cpu_thresholds: Utilization thresholds pertaining to CPU utilization.
212
+ Structure is documented below.
213
+ :param 'ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholdsArgs' storage_thresholds: Utilization thresholds pertaining to amount of consumed storage.
214
+ Structure is documented below.
215
+ """
216
+ pulumi.set(__self__, "autoscale_policy_id", autoscale_policy_id)
217
+ pulumi.set(__self__, "node_type_id", node_type_id)
218
+ pulumi.set(__self__, "scale_out_size", scale_out_size)
219
+ if consumed_memory_thresholds is not None:
220
+ pulumi.set(__self__, "consumed_memory_thresholds", consumed_memory_thresholds)
221
+ if cpu_thresholds is not None:
222
+ pulumi.set(__self__, "cpu_thresholds", cpu_thresholds)
223
+ if storage_thresholds is not None:
224
+ pulumi.set(__self__, "storage_thresholds", storage_thresholds)
225
+
226
+ @property
227
+ @pulumi.getter(name="autoscalePolicyId")
228
+ def autoscale_policy_id(self) -> str:
229
+ """
230
+ The identifier for this object. Format specified above.
231
+ """
232
+ return pulumi.get(self, "autoscale_policy_id")
233
+
234
+ @property
235
+ @pulumi.getter(name="nodeTypeId")
236
+ def node_type_id(self) -> str:
237
+ """
238
+ The canonical identifier of the node type to add or remove.
239
+ """
240
+ return pulumi.get(self, "node_type_id")
241
+
242
+ @property
243
+ @pulumi.getter(name="scaleOutSize")
244
+ def scale_out_size(self) -> int:
245
+ """
246
+ Number of nodes to add to a cluster during a scale-out operation.
247
+ Must be divisible by 2 for stretched clusters.
248
+ """
249
+ return pulumi.get(self, "scale_out_size")
250
+
251
+ @property
252
+ @pulumi.getter(name="consumedMemoryThresholds")
253
+ def consumed_memory_thresholds(self) -> Optional['outputs.ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds']:
254
+ """
255
+ Utilization thresholds pertaining to amount of consumed memory.
256
+ Structure is documented below.
257
+ """
258
+ return pulumi.get(self, "consumed_memory_thresholds")
259
+
260
+ @property
261
+ @pulumi.getter(name="cpuThresholds")
262
+ def cpu_thresholds(self) -> Optional['outputs.ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds']:
263
+ """
264
+ Utilization thresholds pertaining to CPU utilization.
265
+ Structure is documented below.
266
+ """
267
+ return pulumi.get(self, "cpu_thresholds")
268
+
269
+ @property
270
+ @pulumi.getter(name="storageThresholds")
271
+ def storage_thresholds(self) -> Optional['outputs.ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds']:
272
+ """
273
+ Utilization thresholds pertaining to amount of consumed storage.
274
+ Structure is documented below.
275
+ """
276
+ return pulumi.get(self, "storage_thresholds")
277
+
278
+
279
+ @pulumi.output_type
280
+ class ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds(dict):
281
+ @staticmethod
282
+ def __key_warning(key: str):
283
+ suggest = None
284
+ if key == "scaleIn":
285
+ suggest = "scale_in"
286
+ elif key == "scaleOut":
287
+ suggest = "scale_out"
288
+
289
+ if suggest:
290
+ pulumi.log.warn(f"Key '{key}' not found in ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds. Access the value via the '{suggest}' property getter instead.")
291
+
292
+ def __getitem__(self, key: str) -> Any:
293
+ ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds.__key_warning(key)
294
+ return super().__getitem__(key)
295
+
296
+ def get(self, key: str, default = None) -> Any:
297
+ ClusterAutoscalingSettingsAutoscalingPolicyConsumedMemoryThresholds.__key_warning(key)
298
+ return super().get(key, default)
299
+
300
+ def __init__(__self__, *,
301
+ scale_in: int,
302
+ scale_out: int):
303
+ """
304
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
305
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
306
+ """
307
+ pulumi.set(__self__, "scale_in", scale_in)
308
+ pulumi.set(__self__, "scale_out", scale_out)
309
+
310
+ @property
311
+ @pulumi.getter(name="scaleIn")
312
+ def scale_in(self) -> int:
313
+ """
314
+ The utilization triggering the scale-in operation in percent.
315
+ """
316
+ return pulumi.get(self, "scale_in")
317
+
318
+ @property
319
+ @pulumi.getter(name="scaleOut")
320
+ def scale_out(self) -> int:
321
+ """
322
+ The utilization triggering the scale-out operation in percent.
323
+ """
324
+ return pulumi.get(self, "scale_out")
325
+
326
+
327
+ @pulumi.output_type
328
+ class ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds(dict):
329
+ @staticmethod
330
+ def __key_warning(key: str):
331
+ suggest = None
332
+ if key == "scaleIn":
333
+ suggest = "scale_in"
334
+ elif key == "scaleOut":
335
+ suggest = "scale_out"
336
+
337
+ if suggest:
338
+ pulumi.log.warn(f"Key '{key}' not found in ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds. Access the value via the '{suggest}' property getter instead.")
339
+
340
+ def __getitem__(self, key: str) -> Any:
341
+ ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds.__key_warning(key)
342
+ return super().__getitem__(key)
343
+
344
+ def get(self, key: str, default = None) -> Any:
345
+ ClusterAutoscalingSettingsAutoscalingPolicyCpuThresholds.__key_warning(key)
346
+ return super().get(key, default)
347
+
348
+ def __init__(__self__, *,
349
+ scale_in: int,
350
+ scale_out: int):
351
+ """
352
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
353
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
354
+ """
355
+ pulumi.set(__self__, "scale_in", scale_in)
356
+ pulumi.set(__self__, "scale_out", scale_out)
357
+
358
+ @property
359
+ @pulumi.getter(name="scaleIn")
360
+ def scale_in(self) -> int:
361
+ """
362
+ The utilization triggering the scale-in operation in percent.
363
+ """
364
+ return pulumi.get(self, "scale_in")
365
+
366
+ @property
367
+ @pulumi.getter(name="scaleOut")
368
+ def scale_out(self) -> int:
369
+ """
370
+ The utilization triggering the scale-out operation in percent.
371
+ """
372
+ return pulumi.get(self, "scale_out")
373
+
374
+
375
+ @pulumi.output_type
376
+ class ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds(dict):
377
+ @staticmethod
378
+ def __key_warning(key: str):
379
+ suggest = None
380
+ if key == "scaleIn":
381
+ suggest = "scale_in"
382
+ elif key == "scaleOut":
383
+ suggest = "scale_out"
384
+
385
+ if suggest:
386
+ pulumi.log.warn(f"Key '{key}' not found in ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds. Access the value via the '{suggest}' property getter instead.")
387
+
388
+ def __getitem__(self, key: str) -> Any:
389
+ ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds.__key_warning(key)
390
+ return super().__getitem__(key)
391
+
392
+ def get(self, key: str, default = None) -> Any:
393
+ ClusterAutoscalingSettingsAutoscalingPolicyStorageThresholds.__key_warning(key)
394
+ return super().get(key, default)
395
+
396
+ def __init__(__self__, *,
397
+ scale_in: int,
398
+ scale_out: int):
399
+ """
400
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
401
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
402
+ """
403
+ pulumi.set(__self__, "scale_in", scale_in)
404
+ pulumi.set(__self__, "scale_out", scale_out)
405
+
406
+ @property
407
+ @pulumi.getter(name="scaleIn")
408
+ def scale_in(self) -> int:
409
+ """
410
+ The utilization triggering the scale-in operation in percent.
411
+ """
412
+ return pulumi.get(self, "scale_in")
413
+
414
+ @property
415
+ @pulumi.getter(name="scaleOut")
416
+ def scale_out(self) -> int:
417
+ """
418
+ The utilization triggering the scale-out operation in percent.
419
+ """
420
+ return pulumi.get(self, "scale_out")
421
+
422
+
49
423
  @pulumi.output_type
50
424
  class ClusterNodeTypeConfig(dict):
51
425
  @staticmethod
@@ -911,6 +1285,247 @@ class SubnetDhcpAddressRange(dict):
911
1285
  return pulumi.get(self, "last_address")
912
1286
 
913
1287
 
1288
+ @pulumi.output_type
1289
+ class GetClusterAutoscalingSettingResult(dict):
1290
+ def __init__(__self__, *,
1291
+ autoscaling_policies: Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyResult'],
1292
+ cool_down_period: str,
1293
+ max_cluster_node_count: int,
1294
+ min_cluster_node_count: int):
1295
+ """
1296
+ :param Sequence['GetClusterAutoscalingSettingAutoscalingPolicyArgs'] autoscaling_policies: The map with autoscaling policies applied to the cluster.
1297
+ The key is the identifier of the policy.
1298
+ It must meet the following requirements:
1299
+ * Only contains 1-63 alphanumeric characters and hyphens
1300
+ * Begins with an alphabetical character
1301
+ * Ends with a non-hyphen character
1302
+ * Not formatted as a UUID
1303
+ * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
1304
+
1305
+ Currently the map must contain only one element
1306
+ that describes the autoscaling policy for compute nodes.
1307
+ :param str cool_down_period: The minimum duration between consecutive autoscale operations.
1308
+ It starts once addition or removal of nodes is fully completed.
1309
+ Minimum cool down period is 30m.
1310
+ Cool down period must be in whole minutes (for example, 30m, 31m, 50m).
1311
+ Mandatory for successful addition of autoscaling settings in cluster.
1312
+ :param int max_cluster_node_count: Maximum number of nodes of any type in a cluster.
1313
+ Mandatory for successful addition of autoscaling settings in cluster.
1314
+ :param int min_cluster_node_count: Minimum number of nodes of any type in a cluster.
1315
+ Mandatory for successful addition of autoscaling settings in cluster.
1316
+ """
1317
+ pulumi.set(__self__, "autoscaling_policies", autoscaling_policies)
1318
+ pulumi.set(__self__, "cool_down_period", cool_down_period)
1319
+ pulumi.set(__self__, "max_cluster_node_count", max_cluster_node_count)
1320
+ pulumi.set(__self__, "min_cluster_node_count", min_cluster_node_count)
1321
+
1322
+ @property
1323
+ @pulumi.getter(name="autoscalingPolicies")
1324
+ def autoscaling_policies(self) -> Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyResult']:
1325
+ """
1326
+ The map with autoscaling policies applied to the cluster.
1327
+ The key is the identifier of the policy.
1328
+ It must meet the following requirements:
1329
+ * Only contains 1-63 alphanumeric characters and hyphens
1330
+ * Begins with an alphabetical character
1331
+ * Ends with a non-hyphen character
1332
+ * Not formatted as a UUID
1333
+ * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
1334
+
1335
+ Currently the map must contain only one element
1336
+ that describes the autoscaling policy for compute nodes.
1337
+ """
1338
+ return pulumi.get(self, "autoscaling_policies")
1339
+
1340
+ @property
1341
+ @pulumi.getter(name="coolDownPeriod")
1342
+ def cool_down_period(self) -> str:
1343
+ """
1344
+ The minimum duration between consecutive autoscale operations.
1345
+ It starts once addition or removal of nodes is fully completed.
1346
+ Minimum cool down period is 30m.
1347
+ Cool down period must be in whole minutes (for example, 30m, 31m, 50m).
1348
+ Mandatory for successful addition of autoscaling settings in cluster.
1349
+ """
1350
+ return pulumi.get(self, "cool_down_period")
1351
+
1352
+ @property
1353
+ @pulumi.getter(name="maxClusterNodeCount")
1354
+ def max_cluster_node_count(self) -> int:
1355
+ """
1356
+ Maximum number of nodes of any type in a cluster.
1357
+ Mandatory for successful addition of autoscaling settings in cluster.
1358
+ """
1359
+ return pulumi.get(self, "max_cluster_node_count")
1360
+
1361
+ @property
1362
+ @pulumi.getter(name="minClusterNodeCount")
1363
+ def min_cluster_node_count(self) -> int:
1364
+ """
1365
+ Minimum number of nodes of any type in a cluster.
1366
+ Mandatory for successful addition of autoscaling settings in cluster.
1367
+ """
1368
+ return pulumi.get(self, "min_cluster_node_count")
1369
+
1370
+
1371
+ @pulumi.output_type
1372
+ class GetClusterAutoscalingSettingAutoscalingPolicyResult(dict):
1373
+ def __init__(__self__, *,
1374
+ autoscale_policy_id: str,
1375
+ consumed_memory_thresholds: Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdResult'],
1376
+ cpu_thresholds: Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyCpuThresholdResult'],
1377
+ node_type_id: str,
1378
+ scale_out_size: int,
1379
+ storage_thresholds: Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyStorageThresholdResult']):
1380
+ """
1381
+ :param Sequence['GetClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdArgs'] consumed_memory_thresholds: Utilization thresholds pertaining to amount of consumed memory.
1382
+ :param Sequence['GetClusterAutoscalingSettingAutoscalingPolicyCpuThresholdArgs'] cpu_thresholds: Utilization thresholds pertaining to CPU utilization.
1383
+ :param str node_type_id: The canonical identifier of the node type to add or remove.
1384
+ :param int scale_out_size: Number of nodes to add to a cluster during a scale-out operation.
1385
+ Must be divisible by 2 for stretched clusters.
1386
+ :param Sequence['GetClusterAutoscalingSettingAutoscalingPolicyStorageThresholdArgs'] storage_thresholds: Utilization thresholds pertaining to amount of consumed storage.
1387
+ """
1388
+ pulumi.set(__self__, "autoscale_policy_id", autoscale_policy_id)
1389
+ pulumi.set(__self__, "consumed_memory_thresholds", consumed_memory_thresholds)
1390
+ pulumi.set(__self__, "cpu_thresholds", cpu_thresholds)
1391
+ pulumi.set(__self__, "node_type_id", node_type_id)
1392
+ pulumi.set(__self__, "scale_out_size", scale_out_size)
1393
+ pulumi.set(__self__, "storage_thresholds", storage_thresholds)
1394
+
1395
+ @property
1396
+ @pulumi.getter(name="autoscalePolicyId")
1397
+ def autoscale_policy_id(self) -> str:
1398
+ return pulumi.get(self, "autoscale_policy_id")
1399
+
1400
+ @property
1401
+ @pulumi.getter(name="consumedMemoryThresholds")
1402
+ def consumed_memory_thresholds(self) -> Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdResult']:
1403
+ """
1404
+ Utilization thresholds pertaining to amount of consumed memory.
1405
+ """
1406
+ return pulumi.get(self, "consumed_memory_thresholds")
1407
+
1408
+ @property
1409
+ @pulumi.getter(name="cpuThresholds")
1410
+ def cpu_thresholds(self) -> Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyCpuThresholdResult']:
1411
+ """
1412
+ Utilization thresholds pertaining to CPU utilization.
1413
+ """
1414
+ return pulumi.get(self, "cpu_thresholds")
1415
+
1416
+ @property
1417
+ @pulumi.getter(name="nodeTypeId")
1418
+ def node_type_id(self) -> str:
1419
+ """
1420
+ The canonical identifier of the node type to add or remove.
1421
+ """
1422
+ return pulumi.get(self, "node_type_id")
1423
+
1424
+ @property
1425
+ @pulumi.getter(name="scaleOutSize")
1426
+ def scale_out_size(self) -> int:
1427
+ """
1428
+ Number of nodes to add to a cluster during a scale-out operation.
1429
+ Must be divisible by 2 for stretched clusters.
1430
+ """
1431
+ return pulumi.get(self, "scale_out_size")
1432
+
1433
+ @property
1434
+ @pulumi.getter(name="storageThresholds")
1435
+ def storage_thresholds(self) -> Sequence['outputs.GetClusterAutoscalingSettingAutoscalingPolicyStorageThresholdResult']:
1436
+ """
1437
+ Utilization thresholds pertaining to amount of consumed storage.
1438
+ """
1439
+ return pulumi.get(self, "storage_thresholds")
1440
+
1441
+
1442
+ @pulumi.output_type
1443
+ class GetClusterAutoscalingSettingAutoscalingPolicyConsumedMemoryThresholdResult(dict):
1444
+ def __init__(__self__, *,
1445
+ scale_in: int,
1446
+ scale_out: int):
1447
+ """
1448
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
1449
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
1450
+ """
1451
+ pulumi.set(__self__, "scale_in", scale_in)
1452
+ pulumi.set(__self__, "scale_out", scale_out)
1453
+
1454
+ @property
1455
+ @pulumi.getter(name="scaleIn")
1456
+ def scale_in(self) -> int:
1457
+ """
1458
+ The utilization triggering the scale-in operation in percent.
1459
+ """
1460
+ return pulumi.get(self, "scale_in")
1461
+
1462
+ @property
1463
+ @pulumi.getter(name="scaleOut")
1464
+ def scale_out(self) -> int:
1465
+ """
1466
+ The utilization triggering the scale-out operation in percent.
1467
+ """
1468
+ return pulumi.get(self, "scale_out")
1469
+
1470
+
1471
+ @pulumi.output_type
1472
+ class GetClusterAutoscalingSettingAutoscalingPolicyCpuThresholdResult(dict):
1473
+ def __init__(__self__, *,
1474
+ scale_in: int,
1475
+ scale_out: int):
1476
+ """
1477
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
1478
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
1479
+ """
1480
+ pulumi.set(__self__, "scale_in", scale_in)
1481
+ pulumi.set(__self__, "scale_out", scale_out)
1482
+
1483
+ @property
1484
+ @pulumi.getter(name="scaleIn")
1485
+ def scale_in(self) -> int:
1486
+ """
1487
+ The utilization triggering the scale-in operation in percent.
1488
+ """
1489
+ return pulumi.get(self, "scale_in")
1490
+
1491
+ @property
1492
+ @pulumi.getter(name="scaleOut")
1493
+ def scale_out(self) -> int:
1494
+ """
1495
+ The utilization triggering the scale-out operation in percent.
1496
+ """
1497
+ return pulumi.get(self, "scale_out")
1498
+
1499
+
1500
+ @pulumi.output_type
1501
+ class GetClusterAutoscalingSettingAutoscalingPolicyStorageThresholdResult(dict):
1502
+ def __init__(__self__, *,
1503
+ scale_in: int,
1504
+ scale_out: int):
1505
+ """
1506
+ :param int scale_in: The utilization triggering the scale-in operation in percent.
1507
+ :param int scale_out: The utilization triggering the scale-out operation in percent.
1508
+ """
1509
+ pulumi.set(__self__, "scale_in", scale_in)
1510
+ pulumi.set(__self__, "scale_out", scale_out)
1511
+
1512
+ @property
1513
+ @pulumi.getter(name="scaleIn")
1514
+ def scale_in(self) -> int:
1515
+ """
1516
+ The utilization triggering the scale-in operation in percent.
1517
+ """
1518
+ return pulumi.get(self, "scale_in")
1519
+
1520
+ @property
1521
+ @pulumi.getter(name="scaleOut")
1522
+ def scale_out(self) -> int:
1523
+ """
1524
+ The utilization triggering the scale-out operation in percent.
1525
+ """
1526
+ return pulumi.get(self, "scale_out")
1527
+
1528
+
914
1529
  @pulumi.output_type
915
1530
  class GetClusterNodeTypeConfigResult(dict):
916
1531
  def __init__(__self__, *,