pulumi-spotinst 3.83.0a1720524486__py3-none-any.whl → 3.128.0a1767140134__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 (77) hide show
  1. pulumi_spotinst/__init__.py +38 -1
  2. pulumi_spotinst/_inputs.py +4082 -846
  3. pulumi_spotinst/_utilities.py +15 -10
  4. pulumi_spotinst/account.py +171 -0
  5. pulumi_spotinst/aws/__init__.py +2 -1
  6. pulumi_spotinst/aws/_inputs.py +7292 -2871
  7. pulumi_spotinst/aws/account.py +25 -19
  8. pulumi_spotinst/aws/beanstalk.py +272 -190
  9. pulumi_spotinst/aws/credentials.py +42 -36
  10. pulumi_spotinst/aws/elastigroup.py +1321 -1176
  11. pulumi_spotinst/aws/managed_instance.py +633 -526
  12. pulumi_spotinst/aws/mr_scalar.py +827 -983
  13. pulumi_spotinst/aws/ocean.py +764 -570
  14. pulumi_spotinst/aws/ocean_extended_resource_definition.py +42 -36
  15. pulumi_spotinst/aws/ocean_launch_spec.py +580 -366
  16. pulumi_spotinst/aws/outputs.py +3421 -2205
  17. pulumi_spotinst/aws/suspension.py +51 -45
  18. pulumi_spotinst/azure/__init__.py +2 -1
  19. pulumi_spotinst/azure/_inputs.py +1492 -434
  20. pulumi_spotinst/azure/ocean_np.py +518 -464
  21. pulumi_spotinst/azure/ocean_np_virtual_node_group.py +479 -408
  22. pulumi_spotinst/azure/outputs.py +840 -345
  23. pulumi_spotinst/config/__init__.py +2 -1
  24. pulumi_spotinst/config/__init__.pyi +7 -2
  25. pulumi_spotinst/config/vars.py +11 -6
  26. pulumi_spotinst/credentials_azure.py +423 -0
  27. pulumi_spotinst/credentials_gcp.py +632 -0
  28. pulumi_spotinst/data_integration.py +58 -52
  29. pulumi_spotinst/ecs/__init__.py +2 -1
  30. pulumi_spotinst/ecs/_inputs.py +1164 -469
  31. pulumi_spotinst/ecs/ocean.py +711 -446
  32. pulumi_spotinst/ecs/ocean_launch_spec.py +367 -341
  33. pulumi_spotinst/ecs/outputs.py +463 -374
  34. pulumi_spotinst/elastigroup_azure_v3.py +985 -197
  35. pulumi_spotinst/gcp/__init__.py +2 -1
  36. pulumi_spotinst/gcp/_inputs.py +1061 -381
  37. pulumi_spotinst/gcp/elastigroup.py +885 -567
  38. pulumi_spotinst/gcp/outputs.py +542 -301
  39. pulumi_spotinst/gke/__init__.py +2 -1
  40. pulumi_spotinst/gke/_inputs.py +2071 -715
  41. pulumi_spotinst/gke/elastigroup.py +558 -382
  42. pulumi_spotinst/gke/ocean_import.py +379 -255
  43. pulumi_spotinst/gke/ocean_launch_spec.py +501 -384
  44. pulumi_spotinst/gke/ocean_launch_spec_import.py +42 -36
  45. pulumi_spotinst/gke/outputs.py +1063 -528
  46. pulumi_spotinst/health_check.py +116 -70
  47. pulumi_spotinst/notification_center.py +344 -0
  48. pulumi_spotinst/ocean_right_sizing_rule.py +515 -95
  49. pulumi_spotinst/oceancd/__init__.py +2 -1
  50. pulumi_spotinst/oceancd/_inputs.py +1709 -651
  51. pulumi_spotinst/oceancd/outputs.py +537 -526
  52. pulumi_spotinst/oceancd/rollout_spec.py +65 -59
  53. pulumi_spotinst/oceancd/strategy.py +37 -31
  54. pulumi_spotinst/oceancd/verification_provider.py +128 -122
  55. pulumi_spotinst/oceancd/verification_template.py +265 -259
  56. pulumi_spotinst/organization/__init__.py +2 -1
  57. pulumi_spotinst/organization/_inputs.py +151 -57
  58. pulumi_spotinst/organization/outputs.py +51 -46
  59. pulumi_spotinst/organization/policy.py +76 -70
  60. pulumi_spotinst/organization/programmatic_user.py +83 -77
  61. pulumi_spotinst/organization/user.py +126 -120
  62. pulumi_spotinst/organization/user_group.py +75 -69
  63. pulumi_spotinst/outputs.py +3005 -832
  64. pulumi_spotinst/provider.py +66 -40
  65. pulumi_spotinst/pulumi-plugin.json +1 -1
  66. pulumi_spotinst/spark/__init__.py +2 -1
  67. pulumi_spotinst/spark/_inputs.py +290 -81
  68. pulumi_spotinst/spark/ocean.py +169 -115
  69. pulumi_spotinst/spark/ocean_virtual_node_group.py +34 -28
  70. pulumi_spotinst/spark/outputs.py +136 -66
  71. pulumi_spotinst/stateful_node_azure.py +820 -784
  72. pulumi_spotinst/subscription.py +93 -87
  73. {pulumi_spotinst-3.83.0a1720524486.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/METADATA +7 -6
  74. pulumi_spotinst-3.128.0a1767140134.dist-info/RECORD +77 -0
  75. {pulumi_spotinst-3.83.0a1720524486.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/WHEEL +1 -1
  76. pulumi_spotinst-3.83.0a1720524486.dist-info/RECORD +0 -73
  77. {pulumi_spotinst-3.83.0a1720524486.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/top_level.txt +0 -0
@@ -1,12 +1,17 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from .. import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -16,37 +21,42 @@ __all__ = ['ElastigroupArgs', 'Elastigroup']
16
21
  @pulumi.input_type
17
22
  class ElastigroupArgs:
18
23
  def __init__(__self__, *,
19
- cluster_zone_name: pulumi.Input[str],
20
- desired_capacity: pulumi.Input[int],
24
+ cluster_zone_name: pulumi.Input[_builtins.str],
25
+ desired_capacity: pulumi.Input[_builtins.int],
21
26
  backend_services: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupBackendServiceArgs']]]] = None,
22
- cluster_id: Optional[pulumi.Input[str]] = None,
27
+ cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
23
28
  disks: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupDiskArgs']]]] = None,
24
- draining_timeout: Optional[pulumi.Input[int]] = None,
25
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
29
+ draining_timeout: Optional[pulumi.Input[_builtins.int]] = None,
30
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
26
31
  gpu: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupGpuArgs']]]] = None,
27
- instance_name_prefix: Optional[pulumi.Input[str]] = None,
32
+ instance_name_prefix: Optional[pulumi.Input[_builtins.str]] = None,
28
33
  instance_types_customs: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]]] = None,
29
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
30
- instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
34
+ instance_types_ondemand: Optional[pulumi.Input[_builtins.str]] = None,
35
+ instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
31
36
  integration_docker_swarm: Optional[pulumi.Input['ElastigroupIntegrationDockerSwarmArgs']] = None,
32
37
  integration_gke: Optional[pulumi.Input['ElastigroupIntegrationGkeArgs']] = None,
33
- ip_forwarding: Optional[pulumi.Input[bool]] = None,
38
+ ip_forwarding: Optional[pulumi.Input[_builtins.bool]] = None,
34
39
  labels: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]]] = None,
35
- max_size: Optional[pulumi.Input[int]] = None,
40
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
36
41
  metadatas: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]]] = None,
37
- min_size: Optional[pulumi.Input[int]] = None,
38
- name: Optional[pulumi.Input[str]] = None,
42
+ min_cpu_platform: Optional[pulumi.Input[_builtins.str]] = None,
43
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
44
+ name: Optional[pulumi.Input[_builtins.str]] = None,
39
45
  network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]] = None,
40
- node_image: Optional[pulumi.Input[str]] = None,
41
- ondemand_count: Optional[pulumi.Input[int]] = None,
42
- preemptible_percentage: Optional[pulumi.Input[int]] = None,
43
- provisioning_model: Optional[pulumi.Input[str]] = None,
46
+ node_image: Optional[pulumi.Input[_builtins.str]] = None,
47
+ ondemand_count: Optional[pulumi.Input[_builtins.int]] = None,
48
+ optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
49
+ preemptible_percentage: Optional[pulumi.Input[_builtins.int]] = None,
50
+ provisioning_model: Optional[pulumi.Input[_builtins.str]] = None,
51
+ revert_to_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]]] = None,
44
52
  scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]] = None,
45
53
  scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]] = None,
46
- service_account: Optional[pulumi.Input[str]] = None,
47
- shutdown_script: Optional[pulumi.Input[str]] = None,
48
- startup_script: Optional[pulumi.Input[str]] = None,
49
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
54
+ service_account: Optional[pulumi.Input[_builtins.str]] = None,
55
+ shielded_instance_config: Optional[pulumi.Input['ElastigroupShieldedInstanceConfigArgs']] = None,
56
+ should_utilize_commitments: Optional[pulumi.Input[_builtins.bool]] = None,
57
+ shutdown_script: Optional[pulumi.Input[_builtins.str]] = None,
58
+ startup_script: Optional[pulumi.Input[_builtins.str]] = None,
59
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None):
50
60
  """
51
61
  The set of arguments for constructing a Elastigroup resource.
52
62
  """
@@ -87,6 +97,8 @@ class ElastigroupArgs:
87
97
  pulumi.set(__self__, "max_size", max_size)
88
98
  if metadatas is not None:
89
99
  pulumi.set(__self__, "metadatas", metadatas)
100
+ if min_cpu_platform is not None:
101
+ pulumi.set(__self__, "min_cpu_platform", min_cpu_platform)
90
102
  if min_size is not None:
91
103
  pulumi.set(__self__, "min_size", min_size)
92
104
  if name is not None:
@@ -97,16 +109,24 @@ class ElastigroupArgs:
97
109
  pulumi.set(__self__, "node_image", node_image)
98
110
  if ondemand_count is not None:
99
111
  pulumi.set(__self__, "ondemand_count", ondemand_count)
112
+ if optimization_windows is not None:
113
+ pulumi.set(__self__, "optimization_windows", optimization_windows)
100
114
  if preemptible_percentage is not None:
101
115
  pulumi.set(__self__, "preemptible_percentage", preemptible_percentage)
102
116
  if provisioning_model is not None:
103
117
  pulumi.set(__self__, "provisioning_model", provisioning_model)
118
+ if revert_to_preemptibles is not None:
119
+ pulumi.set(__self__, "revert_to_preemptibles", revert_to_preemptibles)
104
120
  if scaling_down_policies is not None:
105
121
  pulumi.set(__self__, "scaling_down_policies", scaling_down_policies)
106
122
  if scaling_up_policies is not None:
107
123
  pulumi.set(__self__, "scaling_up_policies", scaling_up_policies)
108
124
  if service_account is not None:
109
125
  pulumi.set(__self__, "service_account", service_account)
126
+ if shielded_instance_config is not None:
127
+ pulumi.set(__self__, "shielded_instance_config", shielded_instance_config)
128
+ if should_utilize_commitments is not None:
129
+ pulumi.set(__self__, "should_utilize_commitments", should_utilize_commitments)
110
130
  if shutdown_script is not None:
111
131
  pulumi.set(__self__, "shutdown_script", shutdown_script)
112
132
  if startup_script is not None:
@@ -114,25 +134,25 @@ class ElastigroupArgs:
114
134
  if tags is not None:
115
135
  pulumi.set(__self__, "tags", tags)
116
136
 
117
- @property
137
+ @_builtins.property
118
138
  @pulumi.getter(name="clusterZoneName")
119
- def cluster_zone_name(self) -> pulumi.Input[str]:
139
+ def cluster_zone_name(self) -> pulumi.Input[_builtins.str]:
120
140
  return pulumi.get(self, "cluster_zone_name")
121
141
 
122
142
  @cluster_zone_name.setter
123
- def cluster_zone_name(self, value: pulumi.Input[str]):
143
+ def cluster_zone_name(self, value: pulumi.Input[_builtins.str]):
124
144
  pulumi.set(self, "cluster_zone_name", value)
125
145
 
126
- @property
146
+ @_builtins.property
127
147
  @pulumi.getter(name="desiredCapacity")
128
- def desired_capacity(self) -> pulumi.Input[int]:
148
+ def desired_capacity(self) -> pulumi.Input[_builtins.int]:
129
149
  return pulumi.get(self, "desired_capacity")
130
150
 
131
151
  @desired_capacity.setter
132
- def desired_capacity(self, value: pulumi.Input[int]):
152
+ def desired_capacity(self, value: pulumi.Input[_builtins.int]):
133
153
  pulumi.set(self, "desired_capacity", value)
134
154
 
135
- @property
155
+ @_builtins.property
136
156
  @pulumi.getter(name="backendServices")
137
157
  def backend_services(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupBackendServiceArgs']]]]:
138
158
  return pulumi.get(self, "backend_services")
@@ -141,17 +161,17 @@ class ElastigroupArgs:
141
161
  def backend_services(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupBackendServiceArgs']]]]):
142
162
  pulumi.set(self, "backend_services", value)
143
163
 
144
- @property
164
+ @_builtins.property
145
165
  @pulumi.getter(name="clusterId")
146
166
  @_utilities.deprecated("""Please define cluster_id under integration_gke""")
147
- def cluster_id(self) -> Optional[pulumi.Input[str]]:
167
+ def cluster_id(self) -> Optional[pulumi.Input[_builtins.str]]:
148
168
  return pulumi.get(self, "cluster_id")
149
169
 
150
170
  @cluster_id.setter
151
- def cluster_id(self, value: Optional[pulumi.Input[str]]):
171
+ def cluster_id(self, value: Optional[pulumi.Input[_builtins.str]]):
152
172
  pulumi.set(self, "cluster_id", value)
153
173
 
154
- @property
174
+ @_builtins.property
155
175
  @pulumi.getter
156
176
  def disks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupDiskArgs']]]]:
157
177
  return pulumi.get(self, "disks")
@@ -160,25 +180,25 @@ class ElastigroupArgs:
160
180
  def disks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupDiskArgs']]]]):
161
181
  pulumi.set(self, "disks", value)
162
182
 
163
- @property
183
+ @_builtins.property
164
184
  @pulumi.getter(name="drainingTimeout")
165
- def draining_timeout(self) -> Optional[pulumi.Input[int]]:
185
+ def draining_timeout(self) -> Optional[pulumi.Input[_builtins.int]]:
166
186
  return pulumi.get(self, "draining_timeout")
167
187
 
168
188
  @draining_timeout.setter
169
- def draining_timeout(self, value: Optional[pulumi.Input[int]]):
189
+ def draining_timeout(self, value: Optional[pulumi.Input[_builtins.int]]):
170
190
  pulumi.set(self, "draining_timeout", value)
171
191
 
172
- @property
192
+ @_builtins.property
173
193
  @pulumi.getter(name="fallbackToOndemand")
174
- def fallback_to_ondemand(self) -> Optional[pulumi.Input[bool]]:
194
+ def fallback_to_ondemand(self) -> Optional[pulumi.Input[_builtins.bool]]:
175
195
  return pulumi.get(self, "fallback_to_ondemand")
176
196
 
177
197
  @fallback_to_ondemand.setter
178
- def fallback_to_ondemand(self, value: Optional[pulumi.Input[bool]]):
198
+ def fallback_to_ondemand(self, value: Optional[pulumi.Input[_builtins.bool]]):
179
199
  pulumi.set(self, "fallback_to_ondemand", value)
180
200
 
181
- @property
201
+ @_builtins.property
182
202
  @pulumi.getter
183
203
  def gpu(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupGpuArgs']]]]:
184
204
  return pulumi.get(self, "gpu")
@@ -187,16 +207,16 @@ class ElastigroupArgs:
187
207
  def gpu(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupGpuArgs']]]]):
188
208
  pulumi.set(self, "gpu", value)
189
209
 
190
- @property
210
+ @_builtins.property
191
211
  @pulumi.getter(name="instanceNamePrefix")
192
- def instance_name_prefix(self) -> Optional[pulumi.Input[str]]:
212
+ def instance_name_prefix(self) -> Optional[pulumi.Input[_builtins.str]]:
193
213
  return pulumi.get(self, "instance_name_prefix")
194
214
 
195
215
  @instance_name_prefix.setter
196
- def instance_name_prefix(self, value: Optional[pulumi.Input[str]]):
216
+ def instance_name_prefix(self, value: Optional[pulumi.Input[_builtins.str]]):
197
217
  pulumi.set(self, "instance_name_prefix", value)
198
218
 
199
- @property
219
+ @_builtins.property
200
220
  @pulumi.getter(name="instanceTypesCustoms")
201
221
  def instance_types_customs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]]]:
202
222
  return pulumi.get(self, "instance_types_customs")
@@ -205,25 +225,25 @@ class ElastigroupArgs:
205
225
  def instance_types_customs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]]]):
206
226
  pulumi.set(self, "instance_types_customs", value)
207
227
 
208
- @property
228
+ @_builtins.property
209
229
  @pulumi.getter(name="instanceTypesOndemand")
210
- def instance_types_ondemand(self) -> Optional[pulumi.Input[str]]:
230
+ def instance_types_ondemand(self) -> Optional[pulumi.Input[_builtins.str]]:
211
231
  return pulumi.get(self, "instance_types_ondemand")
212
232
 
213
233
  @instance_types_ondemand.setter
214
- def instance_types_ondemand(self, value: Optional[pulumi.Input[str]]):
234
+ def instance_types_ondemand(self, value: Optional[pulumi.Input[_builtins.str]]):
215
235
  pulumi.set(self, "instance_types_ondemand", value)
216
236
 
217
- @property
237
+ @_builtins.property
218
238
  @pulumi.getter(name="instanceTypesPreemptibles")
219
- def instance_types_preemptibles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
239
+ def instance_types_preemptibles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
220
240
  return pulumi.get(self, "instance_types_preemptibles")
221
241
 
222
242
  @instance_types_preemptibles.setter
223
- def instance_types_preemptibles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
243
+ def instance_types_preemptibles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
224
244
  pulumi.set(self, "instance_types_preemptibles", value)
225
245
 
226
- @property
246
+ @_builtins.property
227
247
  @pulumi.getter(name="integrationDockerSwarm")
228
248
  def integration_docker_swarm(self) -> Optional[pulumi.Input['ElastigroupIntegrationDockerSwarmArgs']]:
229
249
  return pulumi.get(self, "integration_docker_swarm")
@@ -232,7 +252,7 @@ class ElastigroupArgs:
232
252
  def integration_docker_swarm(self, value: Optional[pulumi.Input['ElastigroupIntegrationDockerSwarmArgs']]):
233
253
  pulumi.set(self, "integration_docker_swarm", value)
234
254
 
235
- @property
255
+ @_builtins.property
236
256
  @pulumi.getter(name="integrationGke")
237
257
  def integration_gke(self) -> Optional[pulumi.Input['ElastigroupIntegrationGkeArgs']]:
238
258
  return pulumi.get(self, "integration_gke")
@@ -241,16 +261,16 @@ class ElastigroupArgs:
241
261
  def integration_gke(self, value: Optional[pulumi.Input['ElastigroupIntegrationGkeArgs']]):
242
262
  pulumi.set(self, "integration_gke", value)
243
263
 
244
- @property
264
+ @_builtins.property
245
265
  @pulumi.getter(name="ipForwarding")
246
- def ip_forwarding(self) -> Optional[pulumi.Input[bool]]:
266
+ def ip_forwarding(self) -> Optional[pulumi.Input[_builtins.bool]]:
247
267
  return pulumi.get(self, "ip_forwarding")
248
268
 
249
269
  @ip_forwarding.setter
250
- def ip_forwarding(self, value: Optional[pulumi.Input[bool]]):
270
+ def ip_forwarding(self, value: Optional[pulumi.Input[_builtins.bool]]):
251
271
  pulumi.set(self, "ip_forwarding", value)
252
272
 
253
- @property
273
+ @_builtins.property
254
274
  @pulumi.getter
255
275
  def labels(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]]]:
256
276
  return pulumi.get(self, "labels")
@@ -259,16 +279,16 @@ class ElastigroupArgs:
259
279
  def labels(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]]]):
260
280
  pulumi.set(self, "labels", value)
261
281
 
262
- @property
282
+ @_builtins.property
263
283
  @pulumi.getter(name="maxSize")
264
- def max_size(self) -> Optional[pulumi.Input[int]]:
284
+ def max_size(self) -> Optional[pulumi.Input[_builtins.int]]:
265
285
  return pulumi.get(self, "max_size")
266
286
 
267
287
  @max_size.setter
268
- def max_size(self, value: Optional[pulumi.Input[int]]):
288
+ def max_size(self, value: Optional[pulumi.Input[_builtins.int]]):
269
289
  pulumi.set(self, "max_size", value)
270
290
 
271
- @property
291
+ @_builtins.property
272
292
  @pulumi.getter
273
293
  def metadatas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]]]:
274
294
  return pulumi.get(self, "metadatas")
@@ -277,25 +297,34 @@ class ElastigroupArgs:
277
297
  def metadatas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]]]):
278
298
  pulumi.set(self, "metadatas", value)
279
299
 
280
- @property
300
+ @_builtins.property
301
+ @pulumi.getter(name="minCpuPlatform")
302
+ def min_cpu_platform(self) -> Optional[pulumi.Input[_builtins.str]]:
303
+ return pulumi.get(self, "min_cpu_platform")
304
+
305
+ @min_cpu_platform.setter
306
+ def min_cpu_platform(self, value: Optional[pulumi.Input[_builtins.str]]):
307
+ pulumi.set(self, "min_cpu_platform", value)
308
+
309
+ @_builtins.property
281
310
  @pulumi.getter(name="minSize")
282
- def min_size(self) -> Optional[pulumi.Input[int]]:
311
+ def min_size(self) -> Optional[pulumi.Input[_builtins.int]]:
283
312
  return pulumi.get(self, "min_size")
284
313
 
285
314
  @min_size.setter
286
- def min_size(self, value: Optional[pulumi.Input[int]]):
315
+ def min_size(self, value: Optional[pulumi.Input[_builtins.int]]):
287
316
  pulumi.set(self, "min_size", value)
288
317
 
289
- @property
318
+ @_builtins.property
290
319
  @pulumi.getter
291
- def name(self) -> Optional[pulumi.Input[str]]:
320
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
292
321
  return pulumi.get(self, "name")
293
322
 
294
323
  @name.setter
295
- def name(self, value: Optional[pulumi.Input[str]]):
324
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
296
325
  pulumi.set(self, "name", value)
297
326
 
298
- @property
327
+ @_builtins.property
299
328
  @pulumi.getter(name="networkInterfaces")
300
329
  def network_interfaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]]:
301
330
  return pulumi.get(self, "network_interfaces")
@@ -304,43 +333,61 @@ class ElastigroupArgs:
304
333
  def network_interfaces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]]):
305
334
  pulumi.set(self, "network_interfaces", value)
306
335
 
307
- @property
336
+ @_builtins.property
308
337
  @pulumi.getter(name="nodeImage")
309
- def node_image(self) -> Optional[pulumi.Input[str]]:
338
+ def node_image(self) -> Optional[pulumi.Input[_builtins.str]]:
310
339
  return pulumi.get(self, "node_image")
311
340
 
312
341
  @node_image.setter
313
- def node_image(self, value: Optional[pulumi.Input[str]]):
342
+ def node_image(self, value: Optional[pulumi.Input[_builtins.str]]):
314
343
  pulumi.set(self, "node_image", value)
315
344
 
316
- @property
345
+ @_builtins.property
317
346
  @pulumi.getter(name="ondemandCount")
318
- def ondemand_count(self) -> Optional[pulumi.Input[int]]:
347
+ def ondemand_count(self) -> Optional[pulumi.Input[_builtins.int]]:
319
348
  return pulumi.get(self, "ondemand_count")
320
349
 
321
350
  @ondemand_count.setter
322
- def ondemand_count(self, value: Optional[pulumi.Input[int]]):
351
+ def ondemand_count(self, value: Optional[pulumi.Input[_builtins.int]]):
323
352
  pulumi.set(self, "ondemand_count", value)
324
353
 
325
- @property
354
+ @_builtins.property
355
+ @pulumi.getter(name="optimizationWindows")
356
+ def optimization_windows(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
357
+ return pulumi.get(self, "optimization_windows")
358
+
359
+ @optimization_windows.setter
360
+ def optimization_windows(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
361
+ pulumi.set(self, "optimization_windows", value)
362
+
363
+ @_builtins.property
326
364
  @pulumi.getter(name="preemptiblePercentage")
327
- def preemptible_percentage(self) -> Optional[pulumi.Input[int]]:
365
+ def preemptible_percentage(self) -> Optional[pulumi.Input[_builtins.int]]:
328
366
  return pulumi.get(self, "preemptible_percentage")
329
367
 
330
368
  @preemptible_percentage.setter
331
- def preemptible_percentage(self, value: Optional[pulumi.Input[int]]):
369
+ def preemptible_percentage(self, value: Optional[pulumi.Input[_builtins.int]]):
332
370
  pulumi.set(self, "preemptible_percentage", value)
333
371
 
334
- @property
372
+ @_builtins.property
335
373
  @pulumi.getter(name="provisioningModel")
336
- def provisioning_model(self) -> Optional[pulumi.Input[str]]:
374
+ def provisioning_model(self) -> Optional[pulumi.Input[_builtins.str]]:
337
375
  return pulumi.get(self, "provisioning_model")
338
376
 
339
377
  @provisioning_model.setter
340
- def provisioning_model(self, value: Optional[pulumi.Input[str]]):
378
+ def provisioning_model(self, value: Optional[pulumi.Input[_builtins.str]]):
341
379
  pulumi.set(self, "provisioning_model", value)
342
380
 
343
- @property
381
+ @_builtins.property
382
+ @pulumi.getter(name="revertToPreemptibles")
383
+ def revert_to_preemptibles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]]]:
384
+ return pulumi.get(self, "revert_to_preemptibles")
385
+
386
+ @revert_to_preemptibles.setter
387
+ def revert_to_preemptibles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]]]):
388
+ pulumi.set(self, "revert_to_preemptibles", value)
389
+
390
+ @_builtins.property
344
391
  @pulumi.getter(name="scalingDownPolicies")
345
392
  def scaling_down_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]]:
346
393
  return pulumi.get(self, "scaling_down_policies")
@@ -349,7 +396,7 @@ class ElastigroupArgs:
349
396
  def scaling_down_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]]):
350
397
  pulumi.set(self, "scaling_down_policies", value)
351
398
 
352
- @property
399
+ @_builtins.property
353
400
  @pulumi.getter(name="scalingUpPolicies")
354
401
  def scaling_up_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]]:
355
402
  return pulumi.get(self, "scaling_up_policies")
@@ -358,40 +405,58 @@ class ElastigroupArgs:
358
405
  def scaling_up_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]]):
359
406
  pulumi.set(self, "scaling_up_policies", value)
360
407
 
361
- @property
408
+ @_builtins.property
362
409
  @pulumi.getter(name="serviceAccount")
363
- def service_account(self) -> Optional[pulumi.Input[str]]:
410
+ def service_account(self) -> Optional[pulumi.Input[_builtins.str]]:
364
411
  return pulumi.get(self, "service_account")
365
412
 
366
413
  @service_account.setter
367
- def service_account(self, value: Optional[pulumi.Input[str]]):
414
+ def service_account(self, value: Optional[pulumi.Input[_builtins.str]]):
368
415
  pulumi.set(self, "service_account", value)
369
416
 
370
- @property
417
+ @_builtins.property
418
+ @pulumi.getter(name="shieldedInstanceConfig")
419
+ def shielded_instance_config(self) -> Optional[pulumi.Input['ElastigroupShieldedInstanceConfigArgs']]:
420
+ return pulumi.get(self, "shielded_instance_config")
421
+
422
+ @shielded_instance_config.setter
423
+ def shielded_instance_config(self, value: Optional[pulumi.Input['ElastigroupShieldedInstanceConfigArgs']]):
424
+ pulumi.set(self, "shielded_instance_config", value)
425
+
426
+ @_builtins.property
427
+ @pulumi.getter(name="shouldUtilizeCommitments")
428
+ def should_utilize_commitments(self) -> Optional[pulumi.Input[_builtins.bool]]:
429
+ return pulumi.get(self, "should_utilize_commitments")
430
+
431
+ @should_utilize_commitments.setter
432
+ def should_utilize_commitments(self, value: Optional[pulumi.Input[_builtins.bool]]):
433
+ pulumi.set(self, "should_utilize_commitments", value)
434
+
435
+ @_builtins.property
371
436
  @pulumi.getter(name="shutdownScript")
372
- def shutdown_script(self) -> Optional[pulumi.Input[str]]:
437
+ def shutdown_script(self) -> Optional[pulumi.Input[_builtins.str]]:
373
438
  return pulumi.get(self, "shutdown_script")
374
439
 
375
440
  @shutdown_script.setter
376
- def shutdown_script(self, value: Optional[pulumi.Input[str]]):
441
+ def shutdown_script(self, value: Optional[pulumi.Input[_builtins.str]]):
377
442
  pulumi.set(self, "shutdown_script", value)
378
443
 
379
- @property
444
+ @_builtins.property
380
445
  @pulumi.getter(name="startupScript")
381
- def startup_script(self) -> Optional[pulumi.Input[str]]:
446
+ def startup_script(self) -> Optional[pulumi.Input[_builtins.str]]:
382
447
  return pulumi.get(self, "startup_script")
383
448
 
384
449
  @startup_script.setter
385
- def startup_script(self, value: Optional[pulumi.Input[str]]):
450
+ def startup_script(self, value: Optional[pulumi.Input[_builtins.str]]):
386
451
  pulumi.set(self, "startup_script", value)
387
452
 
388
- @property
453
+ @_builtins.property
389
454
  @pulumi.getter
390
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
455
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
391
456
  return pulumi.get(self, "tags")
392
457
 
393
458
  @tags.setter
394
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
459
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
395
460
  pulumi.set(self, "tags", value)
396
461
 
397
462
 
@@ -399,36 +464,41 @@ class ElastigroupArgs:
399
464
  class _ElastigroupState:
400
465
  def __init__(__self__, *,
401
466
  backend_services: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupBackendServiceArgs']]]] = None,
402
- cluster_id: Optional[pulumi.Input[str]] = None,
403
- cluster_zone_name: Optional[pulumi.Input[str]] = None,
404
- desired_capacity: Optional[pulumi.Input[int]] = None,
467
+ cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
468
+ cluster_zone_name: Optional[pulumi.Input[_builtins.str]] = None,
469
+ desired_capacity: Optional[pulumi.Input[_builtins.int]] = None,
405
470
  disks: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupDiskArgs']]]] = None,
406
- draining_timeout: Optional[pulumi.Input[int]] = None,
407
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
471
+ draining_timeout: Optional[pulumi.Input[_builtins.int]] = None,
472
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
408
473
  gpu: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupGpuArgs']]]] = None,
409
- instance_name_prefix: Optional[pulumi.Input[str]] = None,
474
+ instance_name_prefix: Optional[pulumi.Input[_builtins.str]] = None,
410
475
  instance_types_customs: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]]] = None,
411
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
412
- instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
476
+ instance_types_ondemand: Optional[pulumi.Input[_builtins.str]] = None,
477
+ instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
413
478
  integration_docker_swarm: Optional[pulumi.Input['ElastigroupIntegrationDockerSwarmArgs']] = None,
414
479
  integration_gke: Optional[pulumi.Input['ElastigroupIntegrationGkeArgs']] = None,
415
- ip_forwarding: Optional[pulumi.Input[bool]] = None,
480
+ ip_forwarding: Optional[pulumi.Input[_builtins.bool]] = None,
416
481
  labels: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]]] = None,
417
- max_size: Optional[pulumi.Input[int]] = None,
482
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
418
483
  metadatas: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]]] = None,
419
- min_size: Optional[pulumi.Input[int]] = None,
420
- name: Optional[pulumi.Input[str]] = None,
484
+ min_cpu_platform: Optional[pulumi.Input[_builtins.str]] = None,
485
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
486
+ name: Optional[pulumi.Input[_builtins.str]] = None,
421
487
  network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]] = None,
422
- node_image: Optional[pulumi.Input[str]] = None,
423
- ondemand_count: Optional[pulumi.Input[int]] = None,
424
- preemptible_percentage: Optional[pulumi.Input[int]] = None,
425
- provisioning_model: Optional[pulumi.Input[str]] = None,
488
+ node_image: Optional[pulumi.Input[_builtins.str]] = None,
489
+ ondemand_count: Optional[pulumi.Input[_builtins.int]] = None,
490
+ optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
491
+ preemptible_percentage: Optional[pulumi.Input[_builtins.int]] = None,
492
+ provisioning_model: Optional[pulumi.Input[_builtins.str]] = None,
493
+ revert_to_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]]] = None,
426
494
  scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]] = None,
427
495
  scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]] = None,
428
- service_account: Optional[pulumi.Input[str]] = None,
429
- shutdown_script: Optional[pulumi.Input[str]] = None,
430
- startup_script: Optional[pulumi.Input[str]] = None,
431
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
496
+ service_account: Optional[pulumi.Input[_builtins.str]] = None,
497
+ shielded_instance_config: Optional[pulumi.Input['ElastigroupShieldedInstanceConfigArgs']] = None,
498
+ should_utilize_commitments: Optional[pulumi.Input[_builtins.bool]] = None,
499
+ shutdown_script: Optional[pulumi.Input[_builtins.str]] = None,
500
+ startup_script: Optional[pulumi.Input[_builtins.str]] = None,
501
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None):
432
502
  """
433
503
  Input properties used for looking up and filtering Elastigroup resources.
434
504
  """
@@ -471,6 +541,8 @@ class _ElastigroupState:
471
541
  pulumi.set(__self__, "max_size", max_size)
472
542
  if metadatas is not None:
473
543
  pulumi.set(__self__, "metadatas", metadatas)
544
+ if min_cpu_platform is not None:
545
+ pulumi.set(__self__, "min_cpu_platform", min_cpu_platform)
474
546
  if min_size is not None:
475
547
  pulumi.set(__self__, "min_size", min_size)
476
548
  if name is not None:
@@ -481,16 +553,24 @@ class _ElastigroupState:
481
553
  pulumi.set(__self__, "node_image", node_image)
482
554
  if ondemand_count is not None:
483
555
  pulumi.set(__self__, "ondemand_count", ondemand_count)
556
+ if optimization_windows is not None:
557
+ pulumi.set(__self__, "optimization_windows", optimization_windows)
484
558
  if preemptible_percentage is not None:
485
559
  pulumi.set(__self__, "preemptible_percentage", preemptible_percentage)
486
560
  if provisioning_model is not None:
487
561
  pulumi.set(__self__, "provisioning_model", provisioning_model)
562
+ if revert_to_preemptibles is not None:
563
+ pulumi.set(__self__, "revert_to_preemptibles", revert_to_preemptibles)
488
564
  if scaling_down_policies is not None:
489
565
  pulumi.set(__self__, "scaling_down_policies", scaling_down_policies)
490
566
  if scaling_up_policies is not None:
491
567
  pulumi.set(__self__, "scaling_up_policies", scaling_up_policies)
492
568
  if service_account is not None:
493
569
  pulumi.set(__self__, "service_account", service_account)
570
+ if shielded_instance_config is not None:
571
+ pulumi.set(__self__, "shielded_instance_config", shielded_instance_config)
572
+ if should_utilize_commitments is not None:
573
+ pulumi.set(__self__, "should_utilize_commitments", should_utilize_commitments)
494
574
  if shutdown_script is not None:
495
575
  pulumi.set(__self__, "shutdown_script", shutdown_script)
496
576
  if startup_script is not None:
@@ -498,7 +578,7 @@ class _ElastigroupState:
498
578
  if tags is not None:
499
579
  pulumi.set(__self__, "tags", tags)
500
580
 
501
- @property
581
+ @_builtins.property
502
582
  @pulumi.getter(name="backendServices")
503
583
  def backend_services(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupBackendServiceArgs']]]]:
504
584
  return pulumi.get(self, "backend_services")
@@ -507,35 +587,35 @@ class _ElastigroupState:
507
587
  def backend_services(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupBackendServiceArgs']]]]):
508
588
  pulumi.set(self, "backend_services", value)
509
589
 
510
- @property
590
+ @_builtins.property
511
591
  @pulumi.getter(name="clusterId")
512
592
  @_utilities.deprecated("""Please define cluster_id under integration_gke""")
513
- def cluster_id(self) -> Optional[pulumi.Input[str]]:
593
+ def cluster_id(self) -> Optional[pulumi.Input[_builtins.str]]:
514
594
  return pulumi.get(self, "cluster_id")
515
595
 
516
596
  @cluster_id.setter
517
- def cluster_id(self, value: Optional[pulumi.Input[str]]):
597
+ def cluster_id(self, value: Optional[pulumi.Input[_builtins.str]]):
518
598
  pulumi.set(self, "cluster_id", value)
519
599
 
520
- @property
600
+ @_builtins.property
521
601
  @pulumi.getter(name="clusterZoneName")
522
- def cluster_zone_name(self) -> Optional[pulumi.Input[str]]:
602
+ def cluster_zone_name(self) -> Optional[pulumi.Input[_builtins.str]]:
523
603
  return pulumi.get(self, "cluster_zone_name")
524
604
 
525
605
  @cluster_zone_name.setter
526
- def cluster_zone_name(self, value: Optional[pulumi.Input[str]]):
606
+ def cluster_zone_name(self, value: Optional[pulumi.Input[_builtins.str]]):
527
607
  pulumi.set(self, "cluster_zone_name", value)
528
608
 
529
- @property
609
+ @_builtins.property
530
610
  @pulumi.getter(name="desiredCapacity")
531
- def desired_capacity(self) -> Optional[pulumi.Input[int]]:
611
+ def desired_capacity(self) -> Optional[pulumi.Input[_builtins.int]]:
532
612
  return pulumi.get(self, "desired_capacity")
533
613
 
534
614
  @desired_capacity.setter
535
- def desired_capacity(self, value: Optional[pulumi.Input[int]]):
615
+ def desired_capacity(self, value: Optional[pulumi.Input[_builtins.int]]):
536
616
  pulumi.set(self, "desired_capacity", value)
537
617
 
538
- @property
618
+ @_builtins.property
539
619
  @pulumi.getter
540
620
  def disks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupDiskArgs']]]]:
541
621
  return pulumi.get(self, "disks")
@@ -544,25 +624,25 @@ class _ElastigroupState:
544
624
  def disks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupDiskArgs']]]]):
545
625
  pulumi.set(self, "disks", value)
546
626
 
547
- @property
627
+ @_builtins.property
548
628
  @pulumi.getter(name="drainingTimeout")
549
- def draining_timeout(self) -> Optional[pulumi.Input[int]]:
629
+ def draining_timeout(self) -> Optional[pulumi.Input[_builtins.int]]:
550
630
  return pulumi.get(self, "draining_timeout")
551
631
 
552
632
  @draining_timeout.setter
553
- def draining_timeout(self, value: Optional[pulumi.Input[int]]):
633
+ def draining_timeout(self, value: Optional[pulumi.Input[_builtins.int]]):
554
634
  pulumi.set(self, "draining_timeout", value)
555
635
 
556
- @property
636
+ @_builtins.property
557
637
  @pulumi.getter(name="fallbackToOndemand")
558
- def fallback_to_ondemand(self) -> Optional[pulumi.Input[bool]]:
638
+ def fallback_to_ondemand(self) -> Optional[pulumi.Input[_builtins.bool]]:
559
639
  return pulumi.get(self, "fallback_to_ondemand")
560
640
 
561
641
  @fallback_to_ondemand.setter
562
- def fallback_to_ondemand(self, value: Optional[pulumi.Input[bool]]):
642
+ def fallback_to_ondemand(self, value: Optional[pulumi.Input[_builtins.bool]]):
563
643
  pulumi.set(self, "fallback_to_ondemand", value)
564
644
 
565
- @property
645
+ @_builtins.property
566
646
  @pulumi.getter
567
647
  def gpu(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupGpuArgs']]]]:
568
648
  return pulumi.get(self, "gpu")
@@ -571,16 +651,16 @@ class _ElastigroupState:
571
651
  def gpu(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupGpuArgs']]]]):
572
652
  pulumi.set(self, "gpu", value)
573
653
 
574
- @property
654
+ @_builtins.property
575
655
  @pulumi.getter(name="instanceNamePrefix")
576
- def instance_name_prefix(self) -> Optional[pulumi.Input[str]]:
656
+ def instance_name_prefix(self) -> Optional[pulumi.Input[_builtins.str]]:
577
657
  return pulumi.get(self, "instance_name_prefix")
578
658
 
579
659
  @instance_name_prefix.setter
580
- def instance_name_prefix(self, value: Optional[pulumi.Input[str]]):
660
+ def instance_name_prefix(self, value: Optional[pulumi.Input[_builtins.str]]):
581
661
  pulumi.set(self, "instance_name_prefix", value)
582
662
 
583
- @property
663
+ @_builtins.property
584
664
  @pulumi.getter(name="instanceTypesCustoms")
585
665
  def instance_types_customs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]]]:
586
666
  return pulumi.get(self, "instance_types_customs")
@@ -589,25 +669,25 @@ class _ElastigroupState:
589
669
  def instance_types_customs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]]]):
590
670
  pulumi.set(self, "instance_types_customs", value)
591
671
 
592
- @property
672
+ @_builtins.property
593
673
  @pulumi.getter(name="instanceTypesOndemand")
594
- def instance_types_ondemand(self) -> Optional[pulumi.Input[str]]:
674
+ def instance_types_ondemand(self) -> Optional[pulumi.Input[_builtins.str]]:
595
675
  return pulumi.get(self, "instance_types_ondemand")
596
676
 
597
677
  @instance_types_ondemand.setter
598
- def instance_types_ondemand(self, value: Optional[pulumi.Input[str]]):
678
+ def instance_types_ondemand(self, value: Optional[pulumi.Input[_builtins.str]]):
599
679
  pulumi.set(self, "instance_types_ondemand", value)
600
680
 
601
- @property
681
+ @_builtins.property
602
682
  @pulumi.getter(name="instanceTypesPreemptibles")
603
- def instance_types_preemptibles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
683
+ def instance_types_preemptibles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
604
684
  return pulumi.get(self, "instance_types_preemptibles")
605
685
 
606
686
  @instance_types_preemptibles.setter
607
- def instance_types_preemptibles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
687
+ def instance_types_preemptibles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
608
688
  pulumi.set(self, "instance_types_preemptibles", value)
609
689
 
610
- @property
690
+ @_builtins.property
611
691
  @pulumi.getter(name="integrationDockerSwarm")
612
692
  def integration_docker_swarm(self) -> Optional[pulumi.Input['ElastigroupIntegrationDockerSwarmArgs']]:
613
693
  return pulumi.get(self, "integration_docker_swarm")
@@ -616,7 +696,7 @@ class _ElastigroupState:
616
696
  def integration_docker_swarm(self, value: Optional[pulumi.Input['ElastigroupIntegrationDockerSwarmArgs']]):
617
697
  pulumi.set(self, "integration_docker_swarm", value)
618
698
 
619
- @property
699
+ @_builtins.property
620
700
  @pulumi.getter(name="integrationGke")
621
701
  def integration_gke(self) -> Optional[pulumi.Input['ElastigroupIntegrationGkeArgs']]:
622
702
  return pulumi.get(self, "integration_gke")
@@ -625,16 +705,16 @@ class _ElastigroupState:
625
705
  def integration_gke(self, value: Optional[pulumi.Input['ElastigroupIntegrationGkeArgs']]):
626
706
  pulumi.set(self, "integration_gke", value)
627
707
 
628
- @property
708
+ @_builtins.property
629
709
  @pulumi.getter(name="ipForwarding")
630
- def ip_forwarding(self) -> Optional[pulumi.Input[bool]]:
710
+ def ip_forwarding(self) -> Optional[pulumi.Input[_builtins.bool]]:
631
711
  return pulumi.get(self, "ip_forwarding")
632
712
 
633
713
  @ip_forwarding.setter
634
- def ip_forwarding(self, value: Optional[pulumi.Input[bool]]):
714
+ def ip_forwarding(self, value: Optional[pulumi.Input[_builtins.bool]]):
635
715
  pulumi.set(self, "ip_forwarding", value)
636
716
 
637
- @property
717
+ @_builtins.property
638
718
  @pulumi.getter
639
719
  def labels(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]]]:
640
720
  return pulumi.get(self, "labels")
@@ -643,16 +723,16 @@ class _ElastigroupState:
643
723
  def labels(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]]]):
644
724
  pulumi.set(self, "labels", value)
645
725
 
646
- @property
726
+ @_builtins.property
647
727
  @pulumi.getter(name="maxSize")
648
- def max_size(self) -> Optional[pulumi.Input[int]]:
728
+ def max_size(self) -> Optional[pulumi.Input[_builtins.int]]:
649
729
  return pulumi.get(self, "max_size")
650
730
 
651
731
  @max_size.setter
652
- def max_size(self, value: Optional[pulumi.Input[int]]):
732
+ def max_size(self, value: Optional[pulumi.Input[_builtins.int]]):
653
733
  pulumi.set(self, "max_size", value)
654
734
 
655
- @property
735
+ @_builtins.property
656
736
  @pulumi.getter
657
737
  def metadatas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]]]:
658
738
  return pulumi.get(self, "metadatas")
@@ -661,25 +741,34 @@ class _ElastigroupState:
661
741
  def metadatas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]]]):
662
742
  pulumi.set(self, "metadatas", value)
663
743
 
664
- @property
744
+ @_builtins.property
745
+ @pulumi.getter(name="minCpuPlatform")
746
+ def min_cpu_platform(self) -> Optional[pulumi.Input[_builtins.str]]:
747
+ return pulumi.get(self, "min_cpu_platform")
748
+
749
+ @min_cpu_platform.setter
750
+ def min_cpu_platform(self, value: Optional[pulumi.Input[_builtins.str]]):
751
+ pulumi.set(self, "min_cpu_platform", value)
752
+
753
+ @_builtins.property
665
754
  @pulumi.getter(name="minSize")
666
- def min_size(self) -> Optional[pulumi.Input[int]]:
755
+ def min_size(self) -> Optional[pulumi.Input[_builtins.int]]:
667
756
  return pulumi.get(self, "min_size")
668
757
 
669
758
  @min_size.setter
670
- def min_size(self, value: Optional[pulumi.Input[int]]):
759
+ def min_size(self, value: Optional[pulumi.Input[_builtins.int]]):
671
760
  pulumi.set(self, "min_size", value)
672
761
 
673
- @property
762
+ @_builtins.property
674
763
  @pulumi.getter
675
- def name(self) -> Optional[pulumi.Input[str]]:
764
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
676
765
  return pulumi.get(self, "name")
677
766
 
678
767
  @name.setter
679
- def name(self, value: Optional[pulumi.Input[str]]):
768
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
680
769
  pulumi.set(self, "name", value)
681
770
 
682
- @property
771
+ @_builtins.property
683
772
  @pulumi.getter(name="networkInterfaces")
684
773
  def network_interfaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]]:
685
774
  return pulumi.get(self, "network_interfaces")
@@ -688,43 +777,61 @@ class _ElastigroupState:
688
777
  def network_interfaces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]]):
689
778
  pulumi.set(self, "network_interfaces", value)
690
779
 
691
- @property
780
+ @_builtins.property
692
781
  @pulumi.getter(name="nodeImage")
693
- def node_image(self) -> Optional[pulumi.Input[str]]:
782
+ def node_image(self) -> Optional[pulumi.Input[_builtins.str]]:
694
783
  return pulumi.get(self, "node_image")
695
784
 
696
785
  @node_image.setter
697
- def node_image(self, value: Optional[pulumi.Input[str]]):
786
+ def node_image(self, value: Optional[pulumi.Input[_builtins.str]]):
698
787
  pulumi.set(self, "node_image", value)
699
788
 
700
- @property
789
+ @_builtins.property
701
790
  @pulumi.getter(name="ondemandCount")
702
- def ondemand_count(self) -> Optional[pulumi.Input[int]]:
791
+ def ondemand_count(self) -> Optional[pulumi.Input[_builtins.int]]:
703
792
  return pulumi.get(self, "ondemand_count")
704
793
 
705
794
  @ondemand_count.setter
706
- def ondemand_count(self, value: Optional[pulumi.Input[int]]):
795
+ def ondemand_count(self, value: Optional[pulumi.Input[_builtins.int]]):
707
796
  pulumi.set(self, "ondemand_count", value)
708
797
 
709
- @property
798
+ @_builtins.property
799
+ @pulumi.getter(name="optimizationWindows")
800
+ def optimization_windows(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
801
+ return pulumi.get(self, "optimization_windows")
802
+
803
+ @optimization_windows.setter
804
+ def optimization_windows(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
805
+ pulumi.set(self, "optimization_windows", value)
806
+
807
+ @_builtins.property
710
808
  @pulumi.getter(name="preemptiblePercentage")
711
- def preemptible_percentage(self) -> Optional[pulumi.Input[int]]:
809
+ def preemptible_percentage(self) -> Optional[pulumi.Input[_builtins.int]]:
712
810
  return pulumi.get(self, "preemptible_percentage")
713
811
 
714
812
  @preemptible_percentage.setter
715
- def preemptible_percentage(self, value: Optional[pulumi.Input[int]]):
813
+ def preemptible_percentage(self, value: Optional[pulumi.Input[_builtins.int]]):
716
814
  pulumi.set(self, "preemptible_percentage", value)
717
815
 
718
- @property
816
+ @_builtins.property
719
817
  @pulumi.getter(name="provisioningModel")
720
- def provisioning_model(self) -> Optional[pulumi.Input[str]]:
818
+ def provisioning_model(self) -> Optional[pulumi.Input[_builtins.str]]:
721
819
  return pulumi.get(self, "provisioning_model")
722
820
 
723
821
  @provisioning_model.setter
724
- def provisioning_model(self, value: Optional[pulumi.Input[str]]):
822
+ def provisioning_model(self, value: Optional[pulumi.Input[_builtins.str]]):
725
823
  pulumi.set(self, "provisioning_model", value)
726
824
 
727
- @property
825
+ @_builtins.property
826
+ @pulumi.getter(name="revertToPreemptibles")
827
+ def revert_to_preemptibles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]]]:
828
+ return pulumi.get(self, "revert_to_preemptibles")
829
+
830
+ @revert_to_preemptibles.setter
831
+ def revert_to_preemptibles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]]]):
832
+ pulumi.set(self, "revert_to_preemptibles", value)
833
+
834
+ @_builtins.property
728
835
  @pulumi.getter(name="scalingDownPolicies")
729
836
  def scaling_down_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]]:
730
837
  return pulumi.get(self, "scaling_down_policies")
@@ -733,7 +840,7 @@ class _ElastigroupState:
733
840
  def scaling_down_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]]):
734
841
  pulumi.set(self, "scaling_down_policies", value)
735
842
 
736
- @property
843
+ @_builtins.property
737
844
  @pulumi.getter(name="scalingUpPolicies")
738
845
  def scaling_up_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]]:
739
846
  return pulumi.get(self, "scaling_up_policies")
@@ -742,79 +849,103 @@ class _ElastigroupState:
742
849
  def scaling_up_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]]):
743
850
  pulumi.set(self, "scaling_up_policies", value)
744
851
 
745
- @property
852
+ @_builtins.property
746
853
  @pulumi.getter(name="serviceAccount")
747
- def service_account(self) -> Optional[pulumi.Input[str]]:
854
+ def service_account(self) -> Optional[pulumi.Input[_builtins.str]]:
748
855
  return pulumi.get(self, "service_account")
749
856
 
750
857
  @service_account.setter
751
- def service_account(self, value: Optional[pulumi.Input[str]]):
858
+ def service_account(self, value: Optional[pulumi.Input[_builtins.str]]):
752
859
  pulumi.set(self, "service_account", value)
753
860
 
754
- @property
861
+ @_builtins.property
862
+ @pulumi.getter(name="shieldedInstanceConfig")
863
+ def shielded_instance_config(self) -> Optional[pulumi.Input['ElastigroupShieldedInstanceConfigArgs']]:
864
+ return pulumi.get(self, "shielded_instance_config")
865
+
866
+ @shielded_instance_config.setter
867
+ def shielded_instance_config(self, value: Optional[pulumi.Input['ElastigroupShieldedInstanceConfigArgs']]):
868
+ pulumi.set(self, "shielded_instance_config", value)
869
+
870
+ @_builtins.property
871
+ @pulumi.getter(name="shouldUtilizeCommitments")
872
+ def should_utilize_commitments(self) -> Optional[pulumi.Input[_builtins.bool]]:
873
+ return pulumi.get(self, "should_utilize_commitments")
874
+
875
+ @should_utilize_commitments.setter
876
+ def should_utilize_commitments(self, value: Optional[pulumi.Input[_builtins.bool]]):
877
+ pulumi.set(self, "should_utilize_commitments", value)
878
+
879
+ @_builtins.property
755
880
  @pulumi.getter(name="shutdownScript")
756
- def shutdown_script(self) -> Optional[pulumi.Input[str]]:
881
+ def shutdown_script(self) -> Optional[pulumi.Input[_builtins.str]]:
757
882
  return pulumi.get(self, "shutdown_script")
758
883
 
759
884
  @shutdown_script.setter
760
- def shutdown_script(self, value: Optional[pulumi.Input[str]]):
885
+ def shutdown_script(self, value: Optional[pulumi.Input[_builtins.str]]):
761
886
  pulumi.set(self, "shutdown_script", value)
762
887
 
763
- @property
888
+ @_builtins.property
764
889
  @pulumi.getter(name="startupScript")
765
- def startup_script(self) -> Optional[pulumi.Input[str]]:
890
+ def startup_script(self) -> Optional[pulumi.Input[_builtins.str]]:
766
891
  return pulumi.get(self, "startup_script")
767
892
 
768
893
  @startup_script.setter
769
- def startup_script(self, value: Optional[pulumi.Input[str]]):
894
+ def startup_script(self, value: Optional[pulumi.Input[_builtins.str]]):
770
895
  pulumi.set(self, "startup_script", value)
771
896
 
772
- @property
897
+ @_builtins.property
773
898
  @pulumi.getter
774
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
899
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
775
900
  return pulumi.get(self, "tags")
776
901
 
777
902
  @tags.setter
778
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
903
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
779
904
  pulumi.set(self, "tags", value)
780
905
 
781
906
 
907
+ @pulumi.type_token("spotinst:gke/elastigroup:Elastigroup")
782
908
  class Elastigroup(pulumi.CustomResource):
783
909
  @overload
784
910
  def __init__(__self__,
785
911
  resource_name: str,
786
912
  opts: Optional[pulumi.ResourceOptions] = None,
787
- backend_services: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupBackendServiceArgs']]]]] = None,
788
- cluster_id: Optional[pulumi.Input[str]] = None,
789
- cluster_zone_name: Optional[pulumi.Input[str]] = None,
790
- desired_capacity: Optional[pulumi.Input[int]] = None,
791
- disks: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupDiskArgs']]]]] = None,
792
- draining_timeout: Optional[pulumi.Input[int]] = None,
793
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
794
- gpu: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupGpuArgs']]]]] = None,
795
- instance_name_prefix: Optional[pulumi.Input[str]] = None,
796
- instance_types_customs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupInstanceTypesCustomArgs']]]]] = None,
797
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
798
- instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
799
- integration_docker_swarm: Optional[pulumi.Input[pulumi.InputType['ElastigroupIntegrationDockerSwarmArgs']]] = None,
800
- integration_gke: Optional[pulumi.Input[pulumi.InputType['ElastigroupIntegrationGkeArgs']]] = None,
801
- ip_forwarding: Optional[pulumi.Input[bool]] = None,
802
- labels: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupLabelArgs']]]]] = None,
803
- max_size: Optional[pulumi.Input[int]] = None,
804
- metadatas: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupMetadataArgs']]]]] = None,
805
- min_size: Optional[pulumi.Input[int]] = None,
806
- name: Optional[pulumi.Input[str]] = None,
807
- network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupNetworkInterfaceArgs']]]]] = None,
808
- node_image: Optional[pulumi.Input[str]] = None,
809
- ondemand_count: Optional[pulumi.Input[int]] = None,
810
- preemptible_percentage: Optional[pulumi.Input[int]] = None,
811
- provisioning_model: Optional[pulumi.Input[str]] = None,
812
- scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupScalingDownPolicyArgs']]]]] = None,
813
- scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupScalingUpPolicyArgs']]]]] = None,
814
- service_account: Optional[pulumi.Input[str]] = None,
815
- shutdown_script: Optional[pulumi.Input[str]] = None,
816
- startup_script: Optional[pulumi.Input[str]] = None,
817
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
913
+ backend_services: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupBackendServiceArgs', 'ElastigroupBackendServiceArgsDict']]]]] = None,
914
+ cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
915
+ cluster_zone_name: Optional[pulumi.Input[_builtins.str]] = None,
916
+ desired_capacity: Optional[pulumi.Input[_builtins.int]] = None,
917
+ disks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupDiskArgs', 'ElastigroupDiskArgsDict']]]]] = None,
918
+ draining_timeout: Optional[pulumi.Input[_builtins.int]] = None,
919
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
920
+ gpu: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupGpuArgs', 'ElastigroupGpuArgsDict']]]]] = None,
921
+ instance_name_prefix: Optional[pulumi.Input[_builtins.str]] = None,
922
+ instance_types_customs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupInstanceTypesCustomArgs', 'ElastigroupInstanceTypesCustomArgsDict']]]]] = None,
923
+ instance_types_ondemand: Optional[pulumi.Input[_builtins.str]] = None,
924
+ instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
925
+ integration_docker_swarm: Optional[pulumi.Input[Union['ElastigroupIntegrationDockerSwarmArgs', 'ElastigroupIntegrationDockerSwarmArgsDict']]] = None,
926
+ integration_gke: Optional[pulumi.Input[Union['ElastigroupIntegrationGkeArgs', 'ElastigroupIntegrationGkeArgsDict']]] = None,
927
+ ip_forwarding: Optional[pulumi.Input[_builtins.bool]] = None,
928
+ labels: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupLabelArgs', 'ElastigroupLabelArgsDict']]]]] = None,
929
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
930
+ metadatas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupMetadataArgs', 'ElastigroupMetadataArgsDict']]]]] = None,
931
+ min_cpu_platform: Optional[pulumi.Input[_builtins.str]] = None,
932
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
933
+ name: Optional[pulumi.Input[_builtins.str]] = None,
934
+ network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupNetworkInterfaceArgs', 'ElastigroupNetworkInterfaceArgsDict']]]]] = None,
935
+ node_image: Optional[pulumi.Input[_builtins.str]] = None,
936
+ ondemand_count: Optional[pulumi.Input[_builtins.int]] = None,
937
+ optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
938
+ preemptible_percentage: Optional[pulumi.Input[_builtins.int]] = None,
939
+ provisioning_model: Optional[pulumi.Input[_builtins.str]] = None,
940
+ revert_to_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupRevertToPreemptibleArgs', 'ElastigroupRevertToPreemptibleArgsDict']]]]] = None,
941
+ scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingDownPolicyArgs', 'ElastigroupScalingDownPolicyArgsDict']]]]] = None,
942
+ scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingUpPolicyArgs', 'ElastigroupScalingUpPolicyArgsDict']]]]] = None,
943
+ service_account: Optional[pulumi.Input[_builtins.str]] = None,
944
+ shielded_instance_config: Optional[pulumi.Input[Union['ElastigroupShieldedInstanceConfigArgs', 'ElastigroupShieldedInstanceConfigArgsDict']]] = None,
945
+ should_utilize_commitments: Optional[pulumi.Input[_builtins.bool]] = None,
946
+ shutdown_script: Optional[pulumi.Input[_builtins.str]] = None,
947
+ startup_script: Optional[pulumi.Input[_builtins.str]] = None,
948
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
818
949
  __props__=None):
819
950
  """
820
951
  Provides a Spotinst Elastigroup GKE resource. Please see [Importing a GKE cluster](https://api.spotinst.com/elastigroup-for-google-cloud/tutorials/import-a-gke-cluster-as-an-elastigroup/) for detailed information.
@@ -845,36 +976,36 @@ class Elastigroup(pulumi.CustomResource):
845
976
  "n1-standard-2",
846
977
  ],
847
978
  preemptible_percentage=100,
848
- integration_gke=spotinst.gke.ElastigroupIntegrationGkeArgs(
849
- location="us-central1-a",
850
- cluster_id="example-cluster-id",
851
- autoscale_is_enabled=True,
852
- autoscale_is_auto_config=False,
853
- autoscale_cooldown=300,
854
- autoscale_headroom=spotinst.gke.ElastigroupIntegrationGkeAutoscaleHeadroomArgs(
855
- cpu_per_unit=1024,
856
- memory_per_unit=512,
857
- num_of_units=2,
858
- ),
859
- autoscale_down=spotinst.gke.ElastigroupIntegrationGkeAutoscaleDownArgs(
860
- evaluation_periods=300,
861
- ),
862
- autoscale_labels=[spotinst.gke.ElastigroupIntegrationGkeAutoscaleLabelArgs(
863
- key="label_key",
864
- value="label_value",
865
- )],
866
- ),
867
- backend_services=[spotinst.gke.ElastigroupBackendServiceArgs(
868
- service_name="backend-service",
869
- location_type="global",
870
- named_ports=[spotinst.gke.ElastigroupBackendServiceNamedPortArgs(
871
- name="http",
872
- ports=[
979
+ integration_gke={
980
+ "location": "us-central1-a",
981
+ "cluster_id": "example-cluster-id",
982
+ "autoscale_is_enabled": True,
983
+ "autoscale_is_auto_config": False,
984
+ "autoscale_cooldown": 300,
985
+ "autoscale_headroom": {
986
+ "cpu_per_unit": 1024,
987
+ "memory_per_unit": 512,
988
+ "num_of_units": 2,
989
+ },
990
+ "autoscale_down": {
991
+ "evaluation_periods": 300,
992
+ },
993
+ "autoscale_labels": [{
994
+ "key": "label_key",
995
+ "value": "label_value",
996
+ }],
997
+ },
998
+ backend_services=[{
999
+ "service_name": "backend-service",
1000
+ "location_type": "global",
1001
+ "named_ports": [{
1002
+ "name": "http",
1003
+ "ports": [
873
1004
  "80",
874
1005
  "8080",
875
1006
  ],
876
- )],
877
- )])
1007
+ }],
1008
+ }])
878
1009
  ```
879
1010
 
880
1011
  :param str resource_name: The name of the resource.
@@ -915,36 +1046,36 @@ class Elastigroup(pulumi.CustomResource):
915
1046
  "n1-standard-2",
916
1047
  ],
917
1048
  preemptible_percentage=100,
918
- integration_gke=spotinst.gke.ElastigroupIntegrationGkeArgs(
919
- location="us-central1-a",
920
- cluster_id="example-cluster-id",
921
- autoscale_is_enabled=True,
922
- autoscale_is_auto_config=False,
923
- autoscale_cooldown=300,
924
- autoscale_headroom=spotinst.gke.ElastigroupIntegrationGkeAutoscaleHeadroomArgs(
925
- cpu_per_unit=1024,
926
- memory_per_unit=512,
927
- num_of_units=2,
928
- ),
929
- autoscale_down=spotinst.gke.ElastigroupIntegrationGkeAutoscaleDownArgs(
930
- evaluation_periods=300,
931
- ),
932
- autoscale_labels=[spotinst.gke.ElastigroupIntegrationGkeAutoscaleLabelArgs(
933
- key="label_key",
934
- value="label_value",
935
- )],
936
- ),
937
- backend_services=[spotinst.gke.ElastigroupBackendServiceArgs(
938
- service_name="backend-service",
939
- location_type="global",
940
- named_ports=[spotinst.gke.ElastigroupBackendServiceNamedPortArgs(
941
- name="http",
942
- ports=[
1049
+ integration_gke={
1050
+ "location": "us-central1-a",
1051
+ "cluster_id": "example-cluster-id",
1052
+ "autoscale_is_enabled": True,
1053
+ "autoscale_is_auto_config": False,
1054
+ "autoscale_cooldown": 300,
1055
+ "autoscale_headroom": {
1056
+ "cpu_per_unit": 1024,
1057
+ "memory_per_unit": 512,
1058
+ "num_of_units": 2,
1059
+ },
1060
+ "autoscale_down": {
1061
+ "evaluation_periods": 300,
1062
+ },
1063
+ "autoscale_labels": [{
1064
+ "key": "label_key",
1065
+ "value": "label_value",
1066
+ }],
1067
+ },
1068
+ backend_services=[{
1069
+ "service_name": "backend-service",
1070
+ "location_type": "global",
1071
+ "named_ports": [{
1072
+ "name": "http",
1073
+ "ports": [
943
1074
  "80",
944
1075
  "8080",
945
1076
  ],
946
- )],
947
- )])
1077
+ }],
1078
+ }])
948
1079
  ```
949
1080
 
950
1081
  :param str resource_name: The name of the resource.
@@ -962,37 +1093,42 @@ class Elastigroup(pulumi.CustomResource):
962
1093
  def _internal_init(__self__,
963
1094
  resource_name: str,
964
1095
  opts: Optional[pulumi.ResourceOptions] = None,
965
- backend_services: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupBackendServiceArgs']]]]] = None,
966
- cluster_id: Optional[pulumi.Input[str]] = None,
967
- cluster_zone_name: Optional[pulumi.Input[str]] = None,
968
- desired_capacity: Optional[pulumi.Input[int]] = None,
969
- disks: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupDiskArgs']]]]] = None,
970
- draining_timeout: Optional[pulumi.Input[int]] = None,
971
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
972
- gpu: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupGpuArgs']]]]] = None,
973
- instance_name_prefix: Optional[pulumi.Input[str]] = None,
974
- instance_types_customs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupInstanceTypesCustomArgs']]]]] = None,
975
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
976
- instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
977
- integration_docker_swarm: Optional[pulumi.Input[pulumi.InputType['ElastigroupIntegrationDockerSwarmArgs']]] = None,
978
- integration_gke: Optional[pulumi.Input[pulumi.InputType['ElastigroupIntegrationGkeArgs']]] = None,
979
- ip_forwarding: Optional[pulumi.Input[bool]] = None,
980
- labels: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupLabelArgs']]]]] = None,
981
- max_size: Optional[pulumi.Input[int]] = None,
982
- metadatas: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupMetadataArgs']]]]] = None,
983
- min_size: Optional[pulumi.Input[int]] = None,
984
- name: Optional[pulumi.Input[str]] = None,
985
- network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupNetworkInterfaceArgs']]]]] = None,
986
- node_image: Optional[pulumi.Input[str]] = None,
987
- ondemand_count: Optional[pulumi.Input[int]] = None,
988
- preemptible_percentage: Optional[pulumi.Input[int]] = None,
989
- provisioning_model: Optional[pulumi.Input[str]] = None,
990
- scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupScalingDownPolicyArgs']]]]] = None,
991
- scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupScalingUpPolicyArgs']]]]] = None,
992
- service_account: Optional[pulumi.Input[str]] = None,
993
- shutdown_script: Optional[pulumi.Input[str]] = None,
994
- startup_script: Optional[pulumi.Input[str]] = None,
995
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1096
+ backend_services: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupBackendServiceArgs', 'ElastigroupBackendServiceArgsDict']]]]] = None,
1097
+ cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
1098
+ cluster_zone_name: Optional[pulumi.Input[_builtins.str]] = None,
1099
+ desired_capacity: Optional[pulumi.Input[_builtins.int]] = None,
1100
+ disks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupDiskArgs', 'ElastigroupDiskArgsDict']]]]] = None,
1101
+ draining_timeout: Optional[pulumi.Input[_builtins.int]] = None,
1102
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
1103
+ gpu: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupGpuArgs', 'ElastigroupGpuArgsDict']]]]] = None,
1104
+ instance_name_prefix: Optional[pulumi.Input[_builtins.str]] = None,
1105
+ instance_types_customs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupInstanceTypesCustomArgs', 'ElastigroupInstanceTypesCustomArgsDict']]]]] = None,
1106
+ instance_types_ondemand: Optional[pulumi.Input[_builtins.str]] = None,
1107
+ instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1108
+ integration_docker_swarm: Optional[pulumi.Input[Union['ElastigroupIntegrationDockerSwarmArgs', 'ElastigroupIntegrationDockerSwarmArgsDict']]] = None,
1109
+ integration_gke: Optional[pulumi.Input[Union['ElastigroupIntegrationGkeArgs', 'ElastigroupIntegrationGkeArgsDict']]] = None,
1110
+ ip_forwarding: Optional[pulumi.Input[_builtins.bool]] = None,
1111
+ labels: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupLabelArgs', 'ElastigroupLabelArgsDict']]]]] = None,
1112
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
1113
+ metadatas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupMetadataArgs', 'ElastigroupMetadataArgsDict']]]]] = None,
1114
+ min_cpu_platform: Optional[pulumi.Input[_builtins.str]] = None,
1115
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
1116
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1117
+ network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupNetworkInterfaceArgs', 'ElastigroupNetworkInterfaceArgsDict']]]]] = None,
1118
+ node_image: Optional[pulumi.Input[_builtins.str]] = None,
1119
+ ondemand_count: Optional[pulumi.Input[_builtins.int]] = None,
1120
+ optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1121
+ preemptible_percentage: Optional[pulumi.Input[_builtins.int]] = None,
1122
+ provisioning_model: Optional[pulumi.Input[_builtins.str]] = None,
1123
+ revert_to_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupRevertToPreemptibleArgs', 'ElastigroupRevertToPreemptibleArgsDict']]]]] = None,
1124
+ scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingDownPolicyArgs', 'ElastigroupScalingDownPolicyArgsDict']]]]] = None,
1125
+ scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingUpPolicyArgs', 'ElastigroupScalingUpPolicyArgsDict']]]]] = None,
1126
+ service_account: Optional[pulumi.Input[_builtins.str]] = None,
1127
+ shielded_instance_config: Optional[pulumi.Input[Union['ElastigroupShieldedInstanceConfigArgs', 'ElastigroupShieldedInstanceConfigArgsDict']]] = None,
1128
+ should_utilize_commitments: Optional[pulumi.Input[_builtins.bool]] = None,
1129
+ shutdown_script: Optional[pulumi.Input[_builtins.str]] = None,
1130
+ startup_script: Optional[pulumi.Input[_builtins.str]] = None,
1131
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
996
1132
  __props__=None):
997
1133
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
998
1134
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -1024,16 +1160,21 @@ class Elastigroup(pulumi.CustomResource):
1024
1160
  __props__.__dict__["labels"] = labels
1025
1161
  __props__.__dict__["max_size"] = max_size
1026
1162
  __props__.__dict__["metadatas"] = metadatas
1163
+ __props__.__dict__["min_cpu_platform"] = min_cpu_platform
1027
1164
  __props__.__dict__["min_size"] = min_size
1028
1165
  __props__.__dict__["name"] = name
1029
1166
  __props__.__dict__["network_interfaces"] = network_interfaces
1030
1167
  __props__.__dict__["node_image"] = node_image
1031
1168
  __props__.__dict__["ondemand_count"] = ondemand_count
1169
+ __props__.__dict__["optimization_windows"] = optimization_windows
1032
1170
  __props__.__dict__["preemptible_percentage"] = preemptible_percentage
1033
1171
  __props__.__dict__["provisioning_model"] = provisioning_model
1172
+ __props__.__dict__["revert_to_preemptibles"] = revert_to_preemptibles
1034
1173
  __props__.__dict__["scaling_down_policies"] = scaling_down_policies
1035
1174
  __props__.__dict__["scaling_up_policies"] = scaling_up_policies
1036
1175
  __props__.__dict__["service_account"] = service_account
1176
+ __props__.__dict__["shielded_instance_config"] = shielded_instance_config
1177
+ __props__.__dict__["should_utilize_commitments"] = should_utilize_commitments
1037
1178
  __props__.__dict__["shutdown_script"] = shutdown_script
1038
1179
  __props__.__dict__["startup_script"] = startup_script
1039
1180
  __props__.__dict__["tags"] = tags
@@ -1047,37 +1188,42 @@ class Elastigroup(pulumi.CustomResource):
1047
1188
  def get(resource_name: str,
1048
1189
  id: pulumi.Input[str],
1049
1190
  opts: Optional[pulumi.ResourceOptions] = None,
1050
- backend_services: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupBackendServiceArgs']]]]] = None,
1051
- cluster_id: Optional[pulumi.Input[str]] = None,
1052
- cluster_zone_name: Optional[pulumi.Input[str]] = None,
1053
- desired_capacity: Optional[pulumi.Input[int]] = None,
1054
- disks: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupDiskArgs']]]]] = None,
1055
- draining_timeout: Optional[pulumi.Input[int]] = None,
1056
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
1057
- gpu: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupGpuArgs']]]]] = None,
1058
- instance_name_prefix: Optional[pulumi.Input[str]] = None,
1059
- instance_types_customs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupInstanceTypesCustomArgs']]]]] = None,
1060
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
1061
- instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1062
- integration_docker_swarm: Optional[pulumi.Input[pulumi.InputType['ElastigroupIntegrationDockerSwarmArgs']]] = None,
1063
- integration_gke: Optional[pulumi.Input[pulumi.InputType['ElastigroupIntegrationGkeArgs']]] = None,
1064
- ip_forwarding: Optional[pulumi.Input[bool]] = None,
1065
- labels: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupLabelArgs']]]]] = None,
1066
- max_size: Optional[pulumi.Input[int]] = None,
1067
- metadatas: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupMetadataArgs']]]]] = None,
1068
- min_size: Optional[pulumi.Input[int]] = None,
1069
- name: Optional[pulumi.Input[str]] = None,
1070
- network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupNetworkInterfaceArgs']]]]] = None,
1071
- node_image: Optional[pulumi.Input[str]] = None,
1072
- ondemand_count: Optional[pulumi.Input[int]] = None,
1073
- preemptible_percentage: Optional[pulumi.Input[int]] = None,
1074
- provisioning_model: Optional[pulumi.Input[str]] = None,
1075
- scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupScalingDownPolicyArgs']]]]] = None,
1076
- scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ElastigroupScalingUpPolicyArgs']]]]] = None,
1077
- service_account: Optional[pulumi.Input[str]] = None,
1078
- shutdown_script: Optional[pulumi.Input[str]] = None,
1079
- startup_script: Optional[pulumi.Input[str]] = None,
1080
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None) -> 'Elastigroup':
1191
+ backend_services: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupBackendServiceArgs', 'ElastigroupBackendServiceArgsDict']]]]] = None,
1192
+ cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
1193
+ cluster_zone_name: Optional[pulumi.Input[_builtins.str]] = None,
1194
+ desired_capacity: Optional[pulumi.Input[_builtins.int]] = None,
1195
+ disks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupDiskArgs', 'ElastigroupDiskArgsDict']]]]] = None,
1196
+ draining_timeout: Optional[pulumi.Input[_builtins.int]] = None,
1197
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
1198
+ gpu: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupGpuArgs', 'ElastigroupGpuArgsDict']]]]] = None,
1199
+ instance_name_prefix: Optional[pulumi.Input[_builtins.str]] = None,
1200
+ instance_types_customs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupInstanceTypesCustomArgs', 'ElastigroupInstanceTypesCustomArgsDict']]]]] = None,
1201
+ instance_types_ondemand: Optional[pulumi.Input[_builtins.str]] = None,
1202
+ instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1203
+ integration_docker_swarm: Optional[pulumi.Input[Union['ElastigroupIntegrationDockerSwarmArgs', 'ElastigroupIntegrationDockerSwarmArgsDict']]] = None,
1204
+ integration_gke: Optional[pulumi.Input[Union['ElastigroupIntegrationGkeArgs', 'ElastigroupIntegrationGkeArgsDict']]] = None,
1205
+ ip_forwarding: Optional[pulumi.Input[_builtins.bool]] = None,
1206
+ labels: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupLabelArgs', 'ElastigroupLabelArgsDict']]]]] = None,
1207
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
1208
+ metadatas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupMetadataArgs', 'ElastigroupMetadataArgsDict']]]]] = None,
1209
+ min_cpu_platform: Optional[pulumi.Input[_builtins.str]] = None,
1210
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
1211
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1212
+ network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupNetworkInterfaceArgs', 'ElastigroupNetworkInterfaceArgsDict']]]]] = None,
1213
+ node_image: Optional[pulumi.Input[_builtins.str]] = None,
1214
+ ondemand_count: Optional[pulumi.Input[_builtins.int]] = None,
1215
+ optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1216
+ preemptible_percentage: Optional[pulumi.Input[_builtins.int]] = None,
1217
+ provisioning_model: Optional[pulumi.Input[_builtins.str]] = None,
1218
+ revert_to_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupRevertToPreemptibleArgs', 'ElastigroupRevertToPreemptibleArgsDict']]]]] = None,
1219
+ scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingDownPolicyArgs', 'ElastigroupScalingDownPolicyArgsDict']]]]] = None,
1220
+ scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingUpPolicyArgs', 'ElastigroupScalingUpPolicyArgsDict']]]]] = None,
1221
+ service_account: Optional[pulumi.Input[_builtins.str]] = None,
1222
+ shielded_instance_config: Optional[pulumi.Input[Union['ElastigroupShieldedInstanceConfigArgs', 'ElastigroupShieldedInstanceConfigArgsDict']]] = None,
1223
+ should_utilize_commitments: Optional[pulumi.Input[_builtins.bool]] = None,
1224
+ shutdown_script: Optional[pulumi.Input[_builtins.str]] = None,
1225
+ startup_script: Optional[pulumi.Input[_builtins.str]] = None,
1226
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None) -> 'Elastigroup':
1081
1227
  """
1082
1228
  Get an existing Elastigroup resource's state with the given name, id, and optional extra
1083
1229
  properties used to qualify the lookup.
@@ -1108,174 +1254,204 @@ class Elastigroup(pulumi.CustomResource):
1108
1254
  __props__.__dict__["labels"] = labels
1109
1255
  __props__.__dict__["max_size"] = max_size
1110
1256
  __props__.__dict__["metadatas"] = metadatas
1257
+ __props__.__dict__["min_cpu_platform"] = min_cpu_platform
1111
1258
  __props__.__dict__["min_size"] = min_size
1112
1259
  __props__.__dict__["name"] = name
1113
1260
  __props__.__dict__["network_interfaces"] = network_interfaces
1114
1261
  __props__.__dict__["node_image"] = node_image
1115
1262
  __props__.__dict__["ondemand_count"] = ondemand_count
1263
+ __props__.__dict__["optimization_windows"] = optimization_windows
1116
1264
  __props__.__dict__["preemptible_percentage"] = preemptible_percentage
1117
1265
  __props__.__dict__["provisioning_model"] = provisioning_model
1266
+ __props__.__dict__["revert_to_preemptibles"] = revert_to_preemptibles
1118
1267
  __props__.__dict__["scaling_down_policies"] = scaling_down_policies
1119
1268
  __props__.__dict__["scaling_up_policies"] = scaling_up_policies
1120
1269
  __props__.__dict__["service_account"] = service_account
1270
+ __props__.__dict__["shielded_instance_config"] = shielded_instance_config
1271
+ __props__.__dict__["should_utilize_commitments"] = should_utilize_commitments
1121
1272
  __props__.__dict__["shutdown_script"] = shutdown_script
1122
1273
  __props__.__dict__["startup_script"] = startup_script
1123
1274
  __props__.__dict__["tags"] = tags
1124
1275
  return Elastigroup(resource_name, opts=opts, __props__=__props__)
1125
1276
 
1126
- @property
1277
+ @_builtins.property
1127
1278
  @pulumi.getter(name="backendServices")
1128
1279
  def backend_services(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupBackendService']]]:
1129
1280
  return pulumi.get(self, "backend_services")
1130
1281
 
1131
- @property
1282
+ @_builtins.property
1132
1283
  @pulumi.getter(name="clusterId")
1133
1284
  @_utilities.deprecated("""Please define cluster_id under integration_gke""")
1134
- def cluster_id(self) -> pulumi.Output[Optional[str]]:
1285
+ def cluster_id(self) -> pulumi.Output[Optional[_builtins.str]]:
1135
1286
  return pulumi.get(self, "cluster_id")
1136
1287
 
1137
- @property
1288
+ @_builtins.property
1138
1289
  @pulumi.getter(name="clusterZoneName")
1139
- def cluster_zone_name(self) -> pulumi.Output[str]:
1290
+ def cluster_zone_name(self) -> pulumi.Output[_builtins.str]:
1140
1291
  return pulumi.get(self, "cluster_zone_name")
1141
1292
 
1142
- @property
1293
+ @_builtins.property
1143
1294
  @pulumi.getter(name="desiredCapacity")
1144
- def desired_capacity(self) -> pulumi.Output[int]:
1295
+ def desired_capacity(self) -> pulumi.Output[_builtins.int]:
1145
1296
  return pulumi.get(self, "desired_capacity")
1146
1297
 
1147
- @property
1298
+ @_builtins.property
1148
1299
  @pulumi.getter
1149
1300
  def disks(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupDisk']]]:
1150
1301
  return pulumi.get(self, "disks")
1151
1302
 
1152
- @property
1303
+ @_builtins.property
1153
1304
  @pulumi.getter(name="drainingTimeout")
1154
- def draining_timeout(self) -> pulumi.Output[Optional[int]]:
1305
+ def draining_timeout(self) -> pulumi.Output[Optional[_builtins.int]]:
1155
1306
  return pulumi.get(self, "draining_timeout")
1156
1307
 
1157
- @property
1308
+ @_builtins.property
1158
1309
  @pulumi.getter(name="fallbackToOndemand")
1159
- def fallback_to_ondemand(self) -> pulumi.Output[Optional[bool]]:
1310
+ def fallback_to_ondemand(self) -> pulumi.Output[Optional[_builtins.bool]]:
1160
1311
  return pulumi.get(self, "fallback_to_ondemand")
1161
1312
 
1162
- @property
1313
+ @_builtins.property
1163
1314
  @pulumi.getter
1164
1315
  def gpu(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupGpu']]]:
1165
1316
  return pulumi.get(self, "gpu")
1166
1317
 
1167
- @property
1318
+ @_builtins.property
1168
1319
  @pulumi.getter(name="instanceNamePrefix")
1169
- def instance_name_prefix(self) -> pulumi.Output[Optional[str]]:
1320
+ def instance_name_prefix(self) -> pulumi.Output[Optional[_builtins.str]]:
1170
1321
  return pulumi.get(self, "instance_name_prefix")
1171
1322
 
1172
- @property
1323
+ @_builtins.property
1173
1324
  @pulumi.getter(name="instanceTypesCustoms")
1174
1325
  def instance_types_customs(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupInstanceTypesCustom']]]:
1175
1326
  return pulumi.get(self, "instance_types_customs")
1176
1327
 
1177
- @property
1328
+ @_builtins.property
1178
1329
  @pulumi.getter(name="instanceTypesOndemand")
1179
- def instance_types_ondemand(self) -> pulumi.Output[Optional[str]]:
1330
+ def instance_types_ondemand(self) -> pulumi.Output[Optional[_builtins.str]]:
1180
1331
  return pulumi.get(self, "instance_types_ondemand")
1181
1332
 
1182
- @property
1333
+ @_builtins.property
1183
1334
  @pulumi.getter(name="instanceTypesPreemptibles")
1184
- def instance_types_preemptibles(self) -> pulumi.Output[Optional[Sequence[str]]]:
1335
+ def instance_types_preemptibles(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1185
1336
  return pulumi.get(self, "instance_types_preemptibles")
1186
1337
 
1187
- @property
1338
+ @_builtins.property
1188
1339
  @pulumi.getter(name="integrationDockerSwarm")
1189
1340
  def integration_docker_swarm(self) -> pulumi.Output[Optional['outputs.ElastigroupIntegrationDockerSwarm']]:
1190
1341
  return pulumi.get(self, "integration_docker_swarm")
1191
1342
 
1192
- @property
1343
+ @_builtins.property
1193
1344
  @pulumi.getter(name="integrationGke")
1194
1345
  def integration_gke(self) -> pulumi.Output[Optional['outputs.ElastigroupIntegrationGke']]:
1195
1346
  return pulumi.get(self, "integration_gke")
1196
1347
 
1197
- @property
1348
+ @_builtins.property
1198
1349
  @pulumi.getter(name="ipForwarding")
1199
- def ip_forwarding(self) -> pulumi.Output[Optional[bool]]:
1350
+ def ip_forwarding(self) -> pulumi.Output[Optional[_builtins.bool]]:
1200
1351
  return pulumi.get(self, "ip_forwarding")
1201
1352
 
1202
- @property
1353
+ @_builtins.property
1203
1354
  @pulumi.getter
1204
1355
  def labels(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupLabel']]]:
1205
1356
  return pulumi.get(self, "labels")
1206
1357
 
1207
- @property
1358
+ @_builtins.property
1208
1359
  @pulumi.getter(name="maxSize")
1209
- def max_size(self) -> pulumi.Output[int]:
1360
+ def max_size(self) -> pulumi.Output[_builtins.int]:
1210
1361
  return pulumi.get(self, "max_size")
1211
1362
 
1212
- @property
1363
+ @_builtins.property
1213
1364
  @pulumi.getter
1214
1365
  def metadatas(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupMetadata']]]:
1215
1366
  return pulumi.get(self, "metadatas")
1216
1367
 
1217
- @property
1368
+ @_builtins.property
1369
+ @pulumi.getter(name="minCpuPlatform")
1370
+ def min_cpu_platform(self) -> pulumi.Output[Optional[_builtins.str]]:
1371
+ return pulumi.get(self, "min_cpu_platform")
1372
+
1373
+ @_builtins.property
1218
1374
  @pulumi.getter(name="minSize")
1219
- def min_size(self) -> pulumi.Output[int]:
1375
+ def min_size(self) -> pulumi.Output[_builtins.int]:
1220
1376
  return pulumi.get(self, "min_size")
1221
1377
 
1222
- @property
1378
+ @_builtins.property
1223
1379
  @pulumi.getter
1224
- def name(self) -> pulumi.Output[str]:
1380
+ def name(self) -> pulumi.Output[_builtins.str]:
1225
1381
  return pulumi.get(self, "name")
1226
1382
 
1227
- @property
1383
+ @_builtins.property
1228
1384
  @pulumi.getter(name="networkInterfaces")
1229
1385
  def network_interfaces(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupNetworkInterface']]]:
1230
1386
  return pulumi.get(self, "network_interfaces")
1231
1387
 
1232
- @property
1388
+ @_builtins.property
1233
1389
  @pulumi.getter(name="nodeImage")
1234
- def node_image(self) -> pulumi.Output[Optional[str]]:
1390
+ def node_image(self) -> pulumi.Output[Optional[_builtins.str]]:
1235
1391
  return pulumi.get(self, "node_image")
1236
1392
 
1237
- @property
1393
+ @_builtins.property
1238
1394
  @pulumi.getter(name="ondemandCount")
1239
- def ondemand_count(self) -> pulumi.Output[Optional[int]]:
1395
+ def ondemand_count(self) -> pulumi.Output[Optional[_builtins.int]]:
1240
1396
  return pulumi.get(self, "ondemand_count")
1241
1397
 
1242
- @property
1398
+ @_builtins.property
1399
+ @pulumi.getter(name="optimizationWindows")
1400
+ def optimization_windows(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1401
+ return pulumi.get(self, "optimization_windows")
1402
+
1403
+ @_builtins.property
1243
1404
  @pulumi.getter(name="preemptiblePercentage")
1244
- def preemptible_percentage(self) -> pulumi.Output[Optional[int]]:
1405
+ def preemptible_percentage(self) -> pulumi.Output[Optional[_builtins.int]]:
1245
1406
  return pulumi.get(self, "preemptible_percentage")
1246
1407
 
1247
- @property
1408
+ @_builtins.property
1248
1409
  @pulumi.getter(name="provisioningModel")
1249
- def provisioning_model(self) -> pulumi.Output[Optional[str]]:
1410
+ def provisioning_model(self) -> pulumi.Output[Optional[_builtins.str]]:
1250
1411
  return pulumi.get(self, "provisioning_model")
1251
1412
 
1252
- @property
1413
+ @_builtins.property
1414
+ @pulumi.getter(name="revertToPreemptibles")
1415
+ def revert_to_preemptibles(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupRevertToPreemptible']]]:
1416
+ return pulumi.get(self, "revert_to_preemptibles")
1417
+
1418
+ @_builtins.property
1253
1419
  @pulumi.getter(name="scalingDownPolicies")
1254
1420
  def scaling_down_policies(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupScalingDownPolicy']]]:
1255
1421
  return pulumi.get(self, "scaling_down_policies")
1256
1422
 
1257
- @property
1423
+ @_builtins.property
1258
1424
  @pulumi.getter(name="scalingUpPolicies")
1259
1425
  def scaling_up_policies(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupScalingUpPolicy']]]:
1260
1426
  return pulumi.get(self, "scaling_up_policies")
1261
1427
 
1262
- @property
1428
+ @_builtins.property
1263
1429
  @pulumi.getter(name="serviceAccount")
1264
- def service_account(self) -> pulumi.Output[Optional[str]]:
1430
+ def service_account(self) -> pulumi.Output[Optional[_builtins.str]]:
1265
1431
  return pulumi.get(self, "service_account")
1266
1432
 
1267
- @property
1433
+ @_builtins.property
1434
+ @pulumi.getter(name="shieldedInstanceConfig")
1435
+ def shielded_instance_config(self) -> pulumi.Output[Optional['outputs.ElastigroupShieldedInstanceConfig']]:
1436
+ return pulumi.get(self, "shielded_instance_config")
1437
+
1438
+ @_builtins.property
1439
+ @pulumi.getter(name="shouldUtilizeCommitments")
1440
+ def should_utilize_commitments(self) -> pulumi.Output[Optional[_builtins.bool]]:
1441
+ return pulumi.get(self, "should_utilize_commitments")
1442
+
1443
+ @_builtins.property
1268
1444
  @pulumi.getter(name="shutdownScript")
1269
- def shutdown_script(self) -> pulumi.Output[Optional[str]]:
1445
+ def shutdown_script(self) -> pulumi.Output[Optional[_builtins.str]]:
1270
1446
  return pulumi.get(self, "shutdown_script")
1271
1447
 
1272
- @property
1448
+ @_builtins.property
1273
1449
  @pulumi.getter(name="startupScript")
1274
- def startup_script(self) -> pulumi.Output[Optional[str]]:
1450
+ def startup_script(self) -> pulumi.Output[Optional[_builtins.str]]:
1275
1451
  return pulumi.get(self, "startup_script")
1276
1452
 
1277
- @property
1453
+ @_builtins.property
1278
1454
  @pulumi.getter
1279
- def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
1455
+ def tags(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1280
1456
  return pulumi.get(self, "tags")
1281
1457