pulumi-spotinst 3.112.0a1741317810__py3-none-any.whl → 3.128.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pulumi-spotinst might be problematic. Click here for more details.

Files changed (77) hide show
  1. pulumi_spotinst/__init__.py +11 -1
  2. pulumi_spotinst/_inputs.py +2283 -1519
  3. pulumi_spotinst/_utilities.py +1 -1
  4. pulumi_spotinst/account.py +20 -19
  5. pulumi_spotinst/aws/__init__.py +2 -1
  6. pulumi_spotinst/aws/_inputs.py +4047 -3607
  7. pulumi_spotinst/aws/account.py +20 -19
  8. pulumi_spotinst/aws/beanstalk.py +254 -177
  9. pulumi_spotinst/aws/credentials.py +37 -36
  10. pulumi_spotinst/aws/elastigroup.py +970 -924
  11. pulumi_spotinst/aws/managed_instance.py +507 -506
  12. pulumi_spotinst/aws/mr_scalar.py +658 -653
  13. pulumi_spotinst/aws/ocean.py +668 -526
  14. pulumi_spotinst/aws/ocean_extended_resource_definition.py +37 -36
  15. pulumi_spotinst/aws/ocean_launch_spec.py +439 -297
  16. pulumi_spotinst/aws/outputs.py +2697 -2363
  17. pulumi_spotinst/aws/suspension.py +23 -22
  18. pulumi_spotinst/azure/__init__.py +2 -1
  19. pulumi_spotinst/azure/_inputs.py +607 -607
  20. pulumi_spotinst/azure/ocean_np.py +387 -386
  21. pulumi_spotinst/azure/ocean_np_virtual_node_group.py +323 -322
  22. pulumi_spotinst/azure/outputs.py +411 -411
  23. pulumi_spotinst/config/__init__.py +2 -1
  24. pulumi_spotinst/config/__init__.pyi +2 -2
  25. pulumi_spotinst/config/vars.py +6 -6
  26. pulumi_spotinst/credentials_azure.py +139 -89
  27. pulumi_spotinst/credentials_gcp.py +190 -189
  28. pulumi_spotinst/data_integration.py +40 -39
  29. pulumi_spotinst/ecs/__init__.py +2 -1
  30. pulumi_spotinst/ecs/_inputs.py +584 -584
  31. pulumi_spotinst/ecs/ocean.py +628 -415
  32. pulumi_spotinst/ecs/ocean_launch_spec.py +197 -196
  33. pulumi_spotinst/ecs/outputs.py +394 -394
  34. pulumi_spotinst/elastigroup_azure_v3.py +326 -325
  35. pulumi_spotinst/gcp/__init__.py +2 -1
  36. pulumi_spotinst/gcp/_inputs.py +573 -499
  37. pulumi_spotinst/gcp/elastigroup.py +491 -482
  38. pulumi_spotinst/gcp/outputs.py +395 -330
  39. pulumi_spotinst/gke/__init__.py +2 -1
  40. pulumi_spotinst/gke/_inputs.py +1120 -895
  41. pulumi_spotinst/gke/elastigroup.py +341 -340
  42. pulumi_spotinst/gke/ocean_import.py +204 -203
  43. pulumi_spotinst/gke/ocean_launch_spec.py +288 -216
  44. pulumi_spotinst/gke/ocean_launch_spec_import.py +37 -36
  45. pulumi_spotinst/gke/outputs.py +769 -583
  46. pulumi_spotinst/health_check.py +106 -65
  47. pulumi_spotinst/notification_center.py +344 -0
  48. pulumi_spotinst/ocean_right_sizing_rule.py +424 -77
  49. pulumi_spotinst/oceancd/__init__.py +2 -1
  50. pulumi_spotinst/oceancd/_inputs.py +764 -764
  51. pulumi_spotinst/oceancd/outputs.py +526 -526
  52. pulumi_spotinst/oceancd/rollout_spec.py +35 -34
  53. pulumi_spotinst/oceancd/strategy.py +22 -21
  54. pulumi_spotinst/oceancd/verification_provider.py +52 -51
  55. pulumi_spotinst/oceancd/verification_template.py +26 -25
  56. pulumi_spotinst/organization/__init__.py +2 -1
  57. pulumi_spotinst/organization/_inputs.py +68 -68
  58. pulumi_spotinst/organization/outputs.py +46 -46
  59. pulumi_spotinst/organization/policy.py +40 -39
  60. pulumi_spotinst/organization/programmatic_user.py +60 -59
  61. pulumi_spotinst/organization/user.py +108 -107
  62. pulumi_spotinst/organization/user_group.py +57 -56
  63. pulumi_spotinst/outputs.py +1539 -932
  64. pulumi_spotinst/provider.py +61 -40
  65. pulumi_spotinst/pulumi-plugin.json +1 -1
  66. pulumi_spotinst/spark/__init__.py +2 -1
  67. pulumi_spotinst/spark/_inputs.py +104 -104
  68. pulumi_spotinst/spark/ocean.py +38 -37
  69. pulumi_spotinst/spark/ocean_virtual_node_group.py +29 -28
  70. pulumi_spotinst/spark/outputs.py +72 -72
  71. pulumi_spotinst/stateful_node_azure.py +340 -343
  72. pulumi_spotinst/subscription.py +88 -87
  73. {pulumi_spotinst-3.112.0a1741317810.dist-info → pulumi_spotinst-3.128.0.dist-info}/METADATA +4 -4
  74. pulumi_spotinst-3.128.0.dist-info/RECORD +77 -0
  75. {pulumi_spotinst-3.112.0a1741317810.dist-info → pulumi_spotinst-3.128.0.dist-info}/WHEEL +1 -1
  76. pulumi_spotinst-3.112.0a1741317810.dist-info/RECORD +0 -76
  77. {pulumi_spotinst-3.112.0a1741317810.dist-info → pulumi_spotinst-3.128.0.dist-info}/top_level.txt +0 -0
@@ -1,8 +1,8 @@
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
7
  import sys
8
8
  import pulumi
@@ -21,80 +21,80 @@ __all__ = ['ElastigroupArgs', 'Elastigroup']
21
21
  @pulumi.input_type
22
22
  class ElastigroupArgs:
23
23
  def __init__(__self__, *,
24
- desired_capacity: pulumi.Input[int],
25
- auto_healing: Optional[pulumi.Input[bool]] = None,
26
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
24
+ desired_capacity: pulumi.Input[_builtins.int],
25
+ auto_healing: Optional[pulumi.Input[_builtins.bool]] = None,
26
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
27
27
  backend_services: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupBackendServiceArgs']]]] = None,
28
- description: Optional[pulumi.Input[str]] = None,
28
+ description: Optional[pulumi.Input[_builtins.str]] = None,
29
29
  disks: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupDiskArgs']]]] = None,
30
- draining_timeout: Optional[pulumi.Input[int]] = None,
31
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
30
+ draining_timeout: Optional[pulumi.Input[_builtins.int]] = None,
31
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
32
32
  gpu: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupGpuArgs']]]] = None,
33
- health_check_grace_period: Optional[pulumi.Input[int]] = None,
34
- health_check_type: Optional[pulumi.Input[str]] = None,
35
- instance_name_prefix: Optional[pulumi.Input[str]] = None,
33
+ health_check_grace_period: Optional[pulumi.Input[_builtins.int]] = None,
34
+ health_check_type: Optional[pulumi.Input[_builtins.str]] = None,
35
+ instance_name_prefix: Optional[pulumi.Input[_builtins.str]] = None,
36
36
  instance_types_customs: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]]] = None,
37
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
38
- instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
37
+ instance_types_ondemand: Optional[pulumi.Input[_builtins.str]] = None,
38
+ instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
39
39
  integration_docker_swarm: Optional[pulumi.Input['ElastigroupIntegrationDockerSwarmArgs']] = None,
40
40
  integration_gke: Optional[pulumi.Input['ElastigroupIntegrationGkeArgs']] = None,
41
- ip_forwarding: Optional[pulumi.Input[bool]] = None,
41
+ ip_forwarding: Optional[pulumi.Input[_builtins.bool]] = None,
42
42
  labels: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]]] = None,
43
- max_size: Optional[pulumi.Input[int]] = None,
43
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
44
44
  metadatas: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]]] = None,
45
- min_cpu_platform: Optional[pulumi.Input[str]] = None,
46
- min_size: Optional[pulumi.Input[int]] = None,
47
- name: Optional[pulumi.Input[str]] = None,
45
+ min_cpu_platform: Optional[pulumi.Input[_builtins.str]] = None,
46
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
47
+ name: Optional[pulumi.Input[_builtins.str]] = None,
48
48
  network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]] = None,
49
- ondemand_count: Optional[pulumi.Input[int]] = None,
50
- optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
51
- preemptible_percentage: Optional[pulumi.Input[int]] = None,
52
- preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
53
- provisioning_model: Optional[pulumi.Input[str]] = None,
49
+ ondemand_count: Optional[pulumi.Input[_builtins.int]] = None,
50
+ optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
51
+ preemptible_percentage: Optional[pulumi.Input[_builtins.int]] = None,
52
+ preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
53
+ provisioning_model: Optional[pulumi.Input[_builtins.str]] = None,
54
54
  revert_to_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]]] = None,
55
55
  scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]] = None,
56
56
  scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]] = None,
57
57
  scheduled_tasks: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScheduledTaskArgs']]]] = None,
58
- service_account: Optional[pulumi.Input[str]] = None,
58
+ service_account: Optional[pulumi.Input[_builtins.str]] = None,
59
59
  shielded_instance_config: Optional[pulumi.Input['ElastigroupShieldedInstanceConfigArgs']] = None,
60
- should_utilize_commitments: Optional[pulumi.Input[bool]] = None,
61
- shutdown_script: Optional[pulumi.Input[str]] = None,
62
- startup_script: Optional[pulumi.Input[str]] = None,
60
+ should_utilize_commitments: Optional[pulumi.Input[_builtins.bool]] = None,
61
+ shutdown_script: Optional[pulumi.Input[_builtins.str]] = None,
62
+ startup_script: Optional[pulumi.Input[_builtins.str]] = None,
63
63
  subnets: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupSubnetArgs']]]] = None,
64
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
65
- unhealthy_duration: Optional[pulumi.Input[int]] = None):
64
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
65
+ unhealthy_duration: Optional[pulumi.Input[_builtins.int]] = None):
66
66
  """
67
67
  The set of arguments for constructing a Elastigroup resource.
68
- :param pulumi.Input[int] desired_capacity: The desired number of instances the group should have at any time.
69
- :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: List of availability zones for the group.
70
- :param pulumi.Input[str] description: The region your GCP group will be created in.
71
- :param pulumi.Input[int] draining_timeout: Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
72
- :param pulumi.Input[bool] fallback_to_ondemand: Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
73
- :param pulumi.Input[str] instance_name_prefix: Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:
68
+ :param pulumi.Input[_builtins.int] desired_capacity: The desired number of instances the group should have at any time.
69
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] availability_zones: List of availability zones for the group.
70
+ :param pulumi.Input[_builtins.str] description: The region your GCP group will be created in.
71
+ :param pulumi.Input[_builtins.int] draining_timeout: Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
72
+ :param pulumi.Input[_builtins.bool] fallback_to_ondemand: Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
73
+ :param pulumi.Input[_builtins.str] instance_name_prefix: Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:
74
74
  * A maximal length of 25 characters.
75
75
  * The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
76
76
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]] instance_types_customs: Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.
77
77
  * `vCPU` - (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
78
- :param pulumi.Input[str] instance_types_ondemand: The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
79
- :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types_preemptibles: The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
78
+ :param pulumi.Input[_builtins.str] instance_types_ondemand: The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
79
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] instance_types_preemptibles: The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
80
80
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]] labels: Array of objects with key-value pairs.
81
- :param pulumi.Input[int] max_size: The maximum number of instances the group should have at any time.
81
+ :param pulumi.Input[_builtins.int] max_size: The maximum number of instances the group should have at any time.
82
82
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]] metadatas: Array of objects with key-value pairs.
83
- :param pulumi.Input[str] min_cpu_platform: Select a minimum CPU platform for the compute instance.
84
- :param pulumi.Input[int] min_size: The minimum number of instances the group should have at any time.
85
- :param pulumi.Input[str] name: The group name.
86
- :param pulumi.Input[Sequence[pulumi.Input[str]]] optimization_windows: Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
87
- :param pulumi.Input[int] preemptible_percentage: Percentage of Preemptible VMs to spin up from the "desired_capacity".
88
- :param pulumi.Input[Sequence[pulumi.Input[str]]] preferred_availability_zones: prioritize availability zones when launching instances for the group. Must be a sublist of `availability_zones`.
89
- :param pulumi.Input[str] provisioning_model: Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
83
+ :param pulumi.Input[_builtins.str] min_cpu_platform: Select a minimum CPU platform for the compute instance.
84
+ :param pulumi.Input[_builtins.int] min_size: The minimum number of instances the group should have at any time.
85
+ :param pulumi.Input[_builtins.str] name: The group name.
86
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] optimization_windows: Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
87
+ :param pulumi.Input[_builtins.int] preemptible_percentage: Percentage of Preemptible VMs to spin up from the "desired_capacity".
88
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] preferred_availability_zones: prioritize availability zones when launching instances for the group. Must be a sublist of `availability_zones`.
89
+ :param pulumi.Input[_builtins.str] provisioning_model: Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
90
90
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]] revert_to_preemptibles: Setting for revert to preemptible option.
91
- :param pulumi.Input[str] service_account: The email of the service account in which the group instances will be launched.
91
+ :param pulumi.Input[_builtins.str] service_account: The email of the service account in which the group instances will be launched.
92
92
  :param pulumi.Input['ElastigroupShieldedInstanceConfigArgs'] shielded_instance_config: You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
93
- :param pulumi.Input[bool] should_utilize_commitments: Enable committed use discounts utilization.
94
- :param pulumi.Input[str] shutdown_script: The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: [Shutdown Script](https://api.spotinst.com/integration-docs/elastigroup/concepts/compute-concepts/shutdown-scripts/)
95
- :param pulumi.Input[str] startup_script: Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
93
+ :param pulumi.Input[_builtins.bool] should_utilize_commitments: Enable committed use discounts utilization.
94
+ :param pulumi.Input[_builtins.str] shutdown_script: The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: [Shutdown Script](https://api.spotinst.com/integration-docs/elastigroup/concepts/compute-concepts/shutdown-scripts/)
95
+ :param pulumi.Input[_builtins.str] startup_script: Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
96
96
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupSubnetArgs']]] subnets: A list of regions and subnets.
97
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to mark created instances.
97
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: Tags to mark created instances.
98
98
  """
99
99
  pulumi.set(__self__, "desired_capacity", desired_capacity)
100
100
  if auto_healing is not None:
@@ -183,41 +183,41 @@ class ElastigroupArgs:
183
183
  if unhealthy_duration is not None:
184
184
  pulumi.set(__self__, "unhealthy_duration", unhealthy_duration)
185
185
 
186
- @property
186
+ @_builtins.property
187
187
  @pulumi.getter(name="desiredCapacity")
188
- def desired_capacity(self) -> pulumi.Input[int]:
188
+ def desired_capacity(self) -> pulumi.Input[_builtins.int]:
189
189
  """
190
190
  The desired number of instances the group should have at any time.
191
191
  """
192
192
  return pulumi.get(self, "desired_capacity")
193
193
 
194
194
  @desired_capacity.setter
195
- def desired_capacity(self, value: pulumi.Input[int]):
195
+ def desired_capacity(self, value: pulumi.Input[_builtins.int]):
196
196
  pulumi.set(self, "desired_capacity", value)
197
197
 
198
- @property
198
+ @_builtins.property
199
199
  @pulumi.getter(name="autoHealing")
200
- def auto_healing(self) -> Optional[pulumi.Input[bool]]:
200
+ def auto_healing(self) -> Optional[pulumi.Input[_builtins.bool]]:
201
201
  return pulumi.get(self, "auto_healing")
202
202
 
203
203
  @auto_healing.setter
204
- def auto_healing(self, value: Optional[pulumi.Input[bool]]):
204
+ def auto_healing(self, value: Optional[pulumi.Input[_builtins.bool]]):
205
205
  pulumi.set(self, "auto_healing", value)
206
206
 
207
- @property
207
+ @_builtins.property
208
208
  @pulumi.getter(name="availabilityZones")
209
209
  @_utilities.deprecated("""This field will soon be handled by Region in Subnets""")
210
- def availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
210
+ def availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
211
211
  """
212
212
  List of availability zones for the group.
213
213
  """
214
214
  return pulumi.get(self, "availability_zones")
215
215
 
216
216
  @availability_zones.setter
217
- def availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
217
+ def availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
218
218
  pulumi.set(self, "availability_zones", value)
219
219
 
220
- @property
220
+ @_builtins.property
221
221
  @pulumi.getter(name="backendServices")
222
222
  def backend_services(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupBackendServiceArgs']]]]:
223
223
  return pulumi.get(self, "backend_services")
@@ -226,19 +226,19 @@ class ElastigroupArgs:
226
226
  def backend_services(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupBackendServiceArgs']]]]):
227
227
  pulumi.set(self, "backend_services", value)
228
228
 
229
- @property
229
+ @_builtins.property
230
230
  @pulumi.getter
231
- def description(self) -> Optional[pulumi.Input[str]]:
231
+ def description(self) -> Optional[pulumi.Input[_builtins.str]]:
232
232
  """
233
233
  The region your GCP group will be created in.
234
234
  """
235
235
  return pulumi.get(self, "description")
236
236
 
237
237
  @description.setter
238
- def description(self, value: Optional[pulumi.Input[str]]):
238
+ def description(self, value: Optional[pulumi.Input[_builtins.str]]):
239
239
  pulumi.set(self, "description", value)
240
240
 
241
- @property
241
+ @_builtins.property
242
242
  @pulumi.getter
243
243
  def disks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupDiskArgs']]]]:
244
244
  return pulumi.get(self, "disks")
@@ -247,31 +247,31 @@ class ElastigroupArgs:
247
247
  def disks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupDiskArgs']]]]):
248
248
  pulumi.set(self, "disks", value)
249
249
 
250
- @property
250
+ @_builtins.property
251
251
  @pulumi.getter(name="drainingTimeout")
252
- def draining_timeout(self) -> Optional[pulumi.Input[int]]:
252
+ def draining_timeout(self) -> Optional[pulumi.Input[_builtins.int]]:
253
253
  """
254
254
  Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
255
255
  """
256
256
  return pulumi.get(self, "draining_timeout")
257
257
 
258
258
  @draining_timeout.setter
259
- def draining_timeout(self, value: Optional[pulumi.Input[int]]):
259
+ def draining_timeout(self, value: Optional[pulumi.Input[_builtins.int]]):
260
260
  pulumi.set(self, "draining_timeout", value)
261
261
 
262
- @property
262
+ @_builtins.property
263
263
  @pulumi.getter(name="fallbackToOndemand")
264
- def fallback_to_ondemand(self) -> Optional[pulumi.Input[bool]]:
264
+ def fallback_to_ondemand(self) -> Optional[pulumi.Input[_builtins.bool]]:
265
265
  """
266
266
  Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
267
267
  """
268
268
  return pulumi.get(self, "fallback_to_ondemand")
269
269
 
270
270
  @fallback_to_ondemand.setter
271
- def fallback_to_ondemand(self, value: Optional[pulumi.Input[bool]]):
271
+ def fallback_to_ondemand(self, value: Optional[pulumi.Input[_builtins.bool]]):
272
272
  pulumi.set(self, "fallback_to_ondemand", value)
273
273
 
274
- @property
274
+ @_builtins.property
275
275
  @pulumi.getter
276
276
  def gpu(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupGpuArgs']]]]:
277
277
  return pulumi.get(self, "gpu")
@@ -280,27 +280,27 @@ class ElastigroupArgs:
280
280
  def gpu(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupGpuArgs']]]]):
281
281
  pulumi.set(self, "gpu", value)
282
282
 
283
- @property
283
+ @_builtins.property
284
284
  @pulumi.getter(name="healthCheckGracePeriod")
285
- def health_check_grace_period(self) -> Optional[pulumi.Input[int]]:
285
+ def health_check_grace_period(self) -> Optional[pulumi.Input[_builtins.int]]:
286
286
  return pulumi.get(self, "health_check_grace_period")
287
287
 
288
288
  @health_check_grace_period.setter
289
- def health_check_grace_period(self, value: Optional[pulumi.Input[int]]):
289
+ def health_check_grace_period(self, value: Optional[pulumi.Input[_builtins.int]]):
290
290
  pulumi.set(self, "health_check_grace_period", value)
291
291
 
292
- @property
292
+ @_builtins.property
293
293
  @pulumi.getter(name="healthCheckType")
294
- def health_check_type(self) -> Optional[pulumi.Input[str]]:
294
+ def health_check_type(self) -> Optional[pulumi.Input[_builtins.str]]:
295
295
  return pulumi.get(self, "health_check_type")
296
296
 
297
297
  @health_check_type.setter
298
- def health_check_type(self, value: Optional[pulumi.Input[str]]):
298
+ def health_check_type(self, value: Optional[pulumi.Input[_builtins.str]]):
299
299
  pulumi.set(self, "health_check_type", value)
300
300
 
301
- @property
301
+ @_builtins.property
302
302
  @pulumi.getter(name="instanceNamePrefix")
303
- def instance_name_prefix(self) -> Optional[pulumi.Input[str]]:
303
+ def instance_name_prefix(self) -> Optional[pulumi.Input[_builtins.str]]:
304
304
  """
305
305
  Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:
306
306
  * A maximal length of 25 characters.
@@ -309,10 +309,10 @@ class ElastigroupArgs:
309
309
  return pulumi.get(self, "instance_name_prefix")
310
310
 
311
311
  @instance_name_prefix.setter
312
- def instance_name_prefix(self, value: Optional[pulumi.Input[str]]):
312
+ def instance_name_prefix(self, value: Optional[pulumi.Input[_builtins.str]]):
313
313
  pulumi.set(self, "instance_name_prefix", value)
314
314
 
315
- @property
315
+ @_builtins.property
316
316
  @pulumi.getter(name="instanceTypesCustoms")
317
317
  def instance_types_customs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]]]:
318
318
  """
@@ -325,31 +325,31 @@ class ElastigroupArgs:
325
325
  def instance_types_customs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]]]):
326
326
  pulumi.set(self, "instance_types_customs", value)
327
327
 
328
- @property
328
+ @_builtins.property
329
329
  @pulumi.getter(name="instanceTypesOndemand")
330
- def instance_types_ondemand(self) -> Optional[pulumi.Input[str]]:
330
+ def instance_types_ondemand(self) -> Optional[pulumi.Input[_builtins.str]]:
331
331
  """
332
332
  The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
333
333
  """
334
334
  return pulumi.get(self, "instance_types_ondemand")
335
335
 
336
336
  @instance_types_ondemand.setter
337
- def instance_types_ondemand(self, value: Optional[pulumi.Input[str]]):
337
+ def instance_types_ondemand(self, value: Optional[pulumi.Input[_builtins.str]]):
338
338
  pulumi.set(self, "instance_types_ondemand", value)
339
339
 
340
- @property
340
+ @_builtins.property
341
341
  @pulumi.getter(name="instanceTypesPreemptibles")
342
- def instance_types_preemptibles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
342
+ def instance_types_preemptibles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
343
343
  """
344
344
  The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
345
345
  """
346
346
  return pulumi.get(self, "instance_types_preemptibles")
347
347
 
348
348
  @instance_types_preemptibles.setter
349
- def instance_types_preemptibles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
349
+ def instance_types_preemptibles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
350
350
  pulumi.set(self, "instance_types_preemptibles", value)
351
351
 
352
- @property
352
+ @_builtins.property
353
353
  @pulumi.getter(name="integrationDockerSwarm")
354
354
  def integration_docker_swarm(self) -> Optional[pulumi.Input['ElastigroupIntegrationDockerSwarmArgs']]:
355
355
  return pulumi.get(self, "integration_docker_swarm")
@@ -358,7 +358,7 @@ class ElastigroupArgs:
358
358
  def integration_docker_swarm(self, value: Optional[pulumi.Input['ElastigroupIntegrationDockerSwarmArgs']]):
359
359
  pulumi.set(self, "integration_docker_swarm", value)
360
360
 
361
- @property
361
+ @_builtins.property
362
362
  @pulumi.getter(name="integrationGke")
363
363
  def integration_gke(self) -> Optional[pulumi.Input['ElastigroupIntegrationGkeArgs']]:
364
364
  return pulumi.get(self, "integration_gke")
@@ -367,16 +367,16 @@ class ElastigroupArgs:
367
367
  def integration_gke(self, value: Optional[pulumi.Input['ElastigroupIntegrationGkeArgs']]):
368
368
  pulumi.set(self, "integration_gke", value)
369
369
 
370
- @property
370
+ @_builtins.property
371
371
  @pulumi.getter(name="ipForwarding")
372
- def ip_forwarding(self) -> Optional[pulumi.Input[bool]]:
372
+ def ip_forwarding(self) -> Optional[pulumi.Input[_builtins.bool]]:
373
373
  return pulumi.get(self, "ip_forwarding")
374
374
 
375
375
  @ip_forwarding.setter
376
- def ip_forwarding(self, value: Optional[pulumi.Input[bool]]):
376
+ def ip_forwarding(self, value: Optional[pulumi.Input[_builtins.bool]]):
377
377
  pulumi.set(self, "ip_forwarding", value)
378
378
 
379
- @property
379
+ @_builtins.property
380
380
  @pulumi.getter
381
381
  def labels(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]]]:
382
382
  """
@@ -388,19 +388,19 @@ class ElastigroupArgs:
388
388
  def labels(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]]]):
389
389
  pulumi.set(self, "labels", value)
390
390
 
391
- @property
391
+ @_builtins.property
392
392
  @pulumi.getter(name="maxSize")
393
- def max_size(self) -> Optional[pulumi.Input[int]]:
393
+ def max_size(self) -> Optional[pulumi.Input[_builtins.int]]:
394
394
  """
395
395
  The maximum number of instances the group should have at any time.
396
396
  """
397
397
  return pulumi.get(self, "max_size")
398
398
 
399
399
  @max_size.setter
400
- def max_size(self, value: Optional[pulumi.Input[int]]):
400
+ def max_size(self, value: Optional[pulumi.Input[_builtins.int]]):
401
401
  pulumi.set(self, "max_size", value)
402
402
 
403
- @property
403
+ @_builtins.property
404
404
  @pulumi.getter
405
405
  def metadatas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]]]:
406
406
  """
@@ -412,43 +412,43 @@ class ElastigroupArgs:
412
412
  def metadatas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]]]):
413
413
  pulumi.set(self, "metadatas", value)
414
414
 
415
- @property
415
+ @_builtins.property
416
416
  @pulumi.getter(name="minCpuPlatform")
417
- def min_cpu_platform(self) -> Optional[pulumi.Input[str]]:
417
+ def min_cpu_platform(self) -> Optional[pulumi.Input[_builtins.str]]:
418
418
  """
419
419
  Select a minimum CPU platform for the compute instance.
420
420
  """
421
421
  return pulumi.get(self, "min_cpu_platform")
422
422
 
423
423
  @min_cpu_platform.setter
424
- def min_cpu_platform(self, value: Optional[pulumi.Input[str]]):
424
+ def min_cpu_platform(self, value: Optional[pulumi.Input[_builtins.str]]):
425
425
  pulumi.set(self, "min_cpu_platform", value)
426
426
 
427
- @property
427
+ @_builtins.property
428
428
  @pulumi.getter(name="minSize")
429
- def min_size(self) -> Optional[pulumi.Input[int]]:
429
+ def min_size(self) -> Optional[pulumi.Input[_builtins.int]]:
430
430
  """
431
431
  The minimum number of instances the group should have at any time.
432
432
  """
433
433
  return pulumi.get(self, "min_size")
434
434
 
435
435
  @min_size.setter
436
- def min_size(self, value: Optional[pulumi.Input[int]]):
436
+ def min_size(self, value: Optional[pulumi.Input[_builtins.int]]):
437
437
  pulumi.set(self, "min_size", value)
438
438
 
439
- @property
439
+ @_builtins.property
440
440
  @pulumi.getter
441
- def name(self) -> Optional[pulumi.Input[str]]:
441
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
442
442
  """
443
443
  The group name.
444
444
  """
445
445
  return pulumi.get(self, "name")
446
446
 
447
447
  @name.setter
448
- def name(self, value: Optional[pulumi.Input[str]]):
448
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
449
449
  pulumi.set(self, "name", value)
450
450
 
451
- @property
451
+ @_builtins.property
452
452
  @pulumi.getter(name="networkInterfaces")
453
453
  def network_interfaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]]:
454
454
  return pulumi.get(self, "network_interfaces")
@@ -457,64 +457,64 @@ class ElastigroupArgs:
457
457
  def network_interfaces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]]):
458
458
  pulumi.set(self, "network_interfaces", value)
459
459
 
460
- @property
460
+ @_builtins.property
461
461
  @pulumi.getter(name="ondemandCount")
462
- def ondemand_count(self) -> Optional[pulumi.Input[int]]:
462
+ def ondemand_count(self) -> Optional[pulumi.Input[_builtins.int]]:
463
463
  return pulumi.get(self, "ondemand_count")
464
464
 
465
465
  @ondemand_count.setter
466
- def ondemand_count(self, value: Optional[pulumi.Input[int]]):
466
+ def ondemand_count(self, value: Optional[pulumi.Input[_builtins.int]]):
467
467
  pulumi.set(self, "ondemand_count", value)
468
468
 
469
- @property
469
+ @_builtins.property
470
470
  @pulumi.getter(name="optimizationWindows")
471
- def optimization_windows(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
471
+ def optimization_windows(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
472
472
  """
473
473
  Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
474
474
  """
475
475
  return pulumi.get(self, "optimization_windows")
476
476
 
477
477
  @optimization_windows.setter
478
- def optimization_windows(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
478
+ def optimization_windows(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
479
479
  pulumi.set(self, "optimization_windows", value)
480
480
 
481
- @property
481
+ @_builtins.property
482
482
  @pulumi.getter(name="preemptiblePercentage")
483
- def preemptible_percentage(self) -> Optional[pulumi.Input[int]]:
483
+ def preemptible_percentage(self) -> Optional[pulumi.Input[_builtins.int]]:
484
484
  """
485
485
  Percentage of Preemptible VMs to spin up from the "desired_capacity".
486
486
  """
487
487
  return pulumi.get(self, "preemptible_percentage")
488
488
 
489
489
  @preemptible_percentage.setter
490
- def preemptible_percentage(self, value: Optional[pulumi.Input[int]]):
490
+ def preemptible_percentage(self, value: Optional[pulumi.Input[_builtins.int]]):
491
491
  pulumi.set(self, "preemptible_percentage", value)
492
492
 
493
- @property
493
+ @_builtins.property
494
494
  @pulumi.getter(name="preferredAvailabilityZones")
495
- def preferred_availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
495
+ def preferred_availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
496
496
  """
497
497
  prioritize availability zones when launching instances for the group. Must be a sublist of `availability_zones`.
498
498
  """
499
499
  return pulumi.get(self, "preferred_availability_zones")
500
500
 
501
501
  @preferred_availability_zones.setter
502
- def preferred_availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
502
+ def preferred_availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
503
503
  pulumi.set(self, "preferred_availability_zones", value)
504
504
 
505
- @property
505
+ @_builtins.property
506
506
  @pulumi.getter(name="provisioningModel")
507
- def provisioning_model(self) -> Optional[pulumi.Input[str]]:
507
+ def provisioning_model(self) -> Optional[pulumi.Input[_builtins.str]]:
508
508
  """
509
509
  Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
510
510
  """
511
511
  return pulumi.get(self, "provisioning_model")
512
512
 
513
513
  @provisioning_model.setter
514
- def provisioning_model(self, value: Optional[pulumi.Input[str]]):
514
+ def provisioning_model(self, value: Optional[pulumi.Input[_builtins.str]]):
515
515
  pulumi.set(self, "provisioning_model", value)
516
516
 
517
- @property
517
+ @_builtins.property
518
518
  @pulumi.getter(name="revertToPreemptibles")
519
519
  def revert_to_preemptibles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]]]:
520
520
  """
@@ -526,7 +526,7 @@ class ElastigroupArgs:
526
526
  def revert_to_preemptibles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]]]):
527
527
  pulumi.set(self, "revert_to_preemptibles", value)
528
528
 
529
- @property
529
+ @_builtins.property
530
530
  @pulumi.getter(name="scalingDownPolicies")
531
531
  def scaling_down_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]]:
532
532
  return pulumi.get(self, "scaling_down_policies")
@@ -535,7 +535,7 @@ class ElastigroupArgs:
535
535
  def scaling_down_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]]):
536
536
  pulumi.set(self, "scaling_down_policies", value)
537
537
 
538
- @property
538
+ @_builtins.property
539
539
  @pulumi.getter(name="scalingUpPolicies")
540
540
  def scaling_up_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]]:
541
541
  return pulumi.get(self, "scaling_up_policies")
@@ -544,7 +544,7 @@ class ElastigroupArgs:
544
544
  def scaling_up_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]]):
545
545
  pulumi.set(self, "scaling_up_policies", value)
546
546
 
547
- @property
547
+ @_builtins.property
548
548
  @pulumi.getter(name="scheduledTasks")
549
549
  def scheduled_tasks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScheduledTaskArgs']]]]:
550
550
  return pulumi.get(self, "scheduled_tasks")
@@ -553,19 +553,19 @@ class ElastigroupArgs:
553
553
  def scheduled_tasks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScheduledTaskArgs']]]]):
554
554
  pulumi.set(self, "scheduled_tasks", value)
555
555
 
556
- @property
556
+ @_builtins.property
557
557
  @pulumi.getter(name="serviceAccount")
558
- def service_account(self) -> Optional[pulumi.Input[str]]:
558
+ def service_account(self) -> Optional[pulumi.Input[_builtins.str]]:
559
559
  """
560
560
  The email of the service account in which the group instances will be launched.
561
561
  """
562
562
  return pulumi.get(self, "service_account")
563
563
 
564
564
  @service_account.setter
565
- def service_account(self, value: Optional[pulumi.Input[str]]):
565
+ def service_account(self, value: Optional[pulumi.Input[_builtins.str]]):
566
566
  pulumi.set(self, "service_account", value)
567
567
 
568
- @property
568
+ @_builtins.property
569
569
  @pulumi.getter(name="shieldedInstanceConfig")
570
570
  def shielded_instance_config(self) -> Optional[pulumi.Input['ElastigroupShieldedInstanceConfigArgs']]:
571
571
  """
@@ -577,43 +577,43 @@ class ElastigroupArgs:
577
577
  def shielded_instance_config(self, value: Optional[pulumi.Input['ElastigroupShieldedInstanceConfigArgs']]):
578
578
  pulumi.set(self, "shielded_instance_config", value)
579
579
 
580
- @property
580
+ @_builtins.property
581
581
  @pulumi.getter(name="shouldUtilizeCommitments")
582
- def should_utilize_commitments(self) -> Optional[pulumi.Input[bool]]:
582
+ def should_utilize_commitments(self) -> Optional[pulumi.Input[_builtins.bool]]:
583
583
  """
584
584
  Enable committed use discounts utilization.
585
585
  """
586
586
  return pulumi.get(self, "should_utilize_commitments")
587
587
 
588
588
  @should_utilize_commitments.setter
589
- def should_utilize_commitments(self, value: Optional[pulumi.Input[bool]]):
589
+ def should_utilize_commitments(self, value: Optional[pulumi.Input[_builtins.bool]]):
590
590
  pulumi.set(self, "should_utilize_commitments", value)
591
591
 
592
- @property
592
+ @_builtins.property
593
593
  @pulumi.getter(name="shutdownScript")
594
- def shutdown_script(self) -> Optional[pulumi.Input[str]]:
594
+ def shutdown_script(self) -> Optional[pulumi.Input[_builtins.str]]:
595
595
  """
596
596
  The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: [Shutdown Script](https://api.spotinst.com/integration-docs/elastigroup/concepts/compute-concepts/shutdown-scripts/)
597
597
  """
598
598
  return pulumi.get(self, "shutdown_script")
599
599
 
600
600
  @shutdown_script.setter
601
- def shutdown_script(self, value: Optional[pulumi.Input[str]]):
601
+ def shutdown_script(self, value: Optional[pulumi.Input[_builtins.str]]):
602
602
  pulumi.set(self, "shutdown_script", value)
603
603
 
604
- @property
604
+ @_builtins.property
605
605
  @pulumi.getter(name="startupScript")
606
- def startup_script(self) -> Optional[pulumi.Input[str]]:
606
+ def startup_script(self) -> Optional[pulumi.Input[_builtins.str]]:
607
607
  """
608
608
  Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
609
609
  """
610
610
  return pulumi.get(self, "startup_script")
611
611
 
612
612
  @startup_script.setter
613
- def startup_script(self, value: Optional[pulumi.Input[str]]):
613
+ def startup_script(self, value: Optional[pulumi.Input[_builtins.str]]):
614
614
  pulumi.set(self, "startup_script", value)
615
615
 
616
- @property
616
+ @_builtins.property
617
617
  @pulumi.getter
618
618
  def subnets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupSubnetArgs']]]]:
619
619
  """
@@ -625,105 +625,105 @@ class ElastigroupArgs:
625
625
  def subnets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupSubnetArgs']]]]):
626
626
  pulumi.set(self, "subnets", value)
627
627
 
628
- @property
628
+ @_builtins.property
629
629
  @pulumi.getter
630
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
630
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
631
631
  """
632
632
  Tags to mark created instances.
633
633
  """
634
634
  return pulumi.get(self, "tags")
635
635
 
636
636
  @tags.setter
637
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
637
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
638
638
  pulumi.set(self, "tags", value)
639
639
 
640
- @property
640
+ @_builtins.property
641
641
  @pulumi.getter(name="unhealthyDuration")
642
- def unhealthy_duration(self) -> Optional[pulumi.Input[int]]:
642
+ def unhealthy_duration(self) -> Optional[pulumi.Input[_builtins.int]]:
643
643
  return pulumi.get(self, "unhealthy_duration")
644
644
 
645
645
  @unhealthy_duration.setter
646
- def unhealthy_duration(self, value: Optional[pulumi.Input[int]]):
646
+ def unhealthy_duration(self, value: Optional[pulumi.Input[_builtins.int]]):
647
647
  pulumi.set(self, "unhealthy_duration", value)
648
648
 
649
649
 
650
650
  @pulumi.input_type
651
651
  class _ElastigroupState:
652
652
  def __init__(__self__, *,
653
- auto_healing: Optional[pulumi.Input[bool]] = None,
654
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
653
+ auto_healing: Optional[pulumi.Input[_builtins.bool]] = None,
654
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
655
655
  backend_services: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupBackendServiceArgs']]]] = None,
656
- description: Optional[pulumi.Input[str]] = None,
657
- desired_capacity: Optional[pulumi.Input[int]] = None,
656
+ description: Optional[pulumi.Input[_builtins.str]] = None,
657
+ desired_capacity: Optional[pulumi.Input[_builtins.int]] = None,
658
658
  disks: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupDiskArgs']]]] = None,
659
- draining_timeout: Optional[pulumi.Input[int]] = None,
660
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
659
+ draining_timeout: Optional[pulumi.Input[_builtins.int]] = None,
660
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
661
661
  gpu: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupGpuArgs']]]] = None,
662
- health_check_grace_period: Optional[pulumi.Input[int]] = None,
663
- health_check_type: Optional[pulumi.Input[str]] = None,
664
- instance_name_prefix: Optional[pulumi.Input[str]] = None,
662
+ health_check_grace_period: Optional[pulumi.Input[_builtins.int]] = None,
663
+ health_check_type: Optional[pulumi.Input[_builtins.str]] = None,
664
+ instance_name_prefix: Optional[pulumi.Input[_builtins.str]] = None,
665
665
  instance_types_customs: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]]] = None,
666
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
667
- instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
666
+ instance_types_ondemand: Optional[pulumi.Input[_builtins.str]] = None,
667
+ instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
668
668
  integration_docker_swarm: Optional[pulumi.Input['ElastigroupIntegrationDockerSwarmArgs']] = None,
669
669
  integration_gke: Optional[pulumi.Input['ElastigroupIntegrationGkeArgs']] = None,
670
- ip_forwarding: Optional[pulumi.Input[bool]] = None,
670
+ ip_forwarding: Optional[pulumi.Input[_builtins.bool]] = None,
671
671
  labels: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]]] = None,
672
- max_size: Optional[pulumi.Input[int]] = None,
672
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
673
673
  metadatas: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]]] = None,
674
- min_cpu_platform: Optional[pulumi.Input[str]] = None,
675
- min_size: Optional[pulumi.Input[int]] = None,
676
- name: Optional[pulumi.Input[str]] = None,
674
+ min_cpu_platform: Optional[pulumi.Input[_builtins.str]] = None,
675
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
676
+ name: Optional[pulumi.Input[_builtins.str]] = None,
677
677
  network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]] = None,
678
- ondemand_count: Optional[pulumi.Input[int]] = None,
679
- optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
680
- preemptible_percentage: Optional[pulumi.Input[int]] = None,
681
- preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
682
- provisioning_model: Optional[pulumi.Input[str]] = None,
678
+ ondemand_count: Optional[pulumi.Input[_builtins.int]] = None,
679
+ optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
680
+ preemptible_percentage: Optional[pulumi.Input[_builtins.int]] = None,
681
+ preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
682
+ provisioning_model: Optional[pulumi.Input[_builtins.str]] = None,
683
683
  revert_to_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]]] = None,
684
684
  scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]] = None,
685
685
  scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]] = None,
686
686
  scheduled_tasks: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScheduledTaskArgs']]]] = None,
687
- service_account: Optional[pulumi.Input[str]] = None,
687
+ service_account: Optional[pulumi.Input[_builtins.str]] = None,
688
688
  shielded_instance_config: Optional[pulumi.Input['ElastigroupShieldedInstanceConfigArgs']] = None,
689
- should_utilize_commitments: Optional[pulumi.Input[bool]] = None,
690
- shutdown_script: Optional[pulumi.Input[str]] = None,
691
- startup_script: Optional[pulumi.Input[str]] = None,
689
+ should_utilize_commitments: Optional[pulumi.Input[_builtins.bool]] = None,
690
+ shutdown_script: Optional[pulumi.Input[_builtins.str]] = None,
691
+ startup_script: Optional[pulumi.Input[_builtins.str]] = None,
692
692
  subnets: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupSubnetArgs']]]] = None,
693
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
694
- unhealthy_duration: Optional[pulumi.Input[int]] = None):
693
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
694
+ unhealthy_duration: Optional[pulumi.Input[_builtins.int]] = None):
695
695
  """
696
696
  Input properties used for looking up and filtering Elastigroup resources.
697
- :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: List of availability zones for the group.
698
- :param pulumi.Input[str] description: The region your GCP group will be created in.
699
- :param pulumi.Input[int] desired_capacity: The desired number of instances the group should have at any time.
700
- :param pulumi.Input[int] draining_timeout: Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
701
- :param pulumi.Input[bool] fallback_to_ondemand: Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
702
- :param pulumi.Input[str] instance_name_prefix: Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:
697
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] availability_zones: List of availability zones for the group.
698
+ :param pulumi.Input[_builtins.str] description: The region your GCP group will be created in.
699
+ :param pulumi.Input[_builtins.int] desired_capacity: The desired number of instances the group should have at any time.
700
+ :param pulumi.Input[_builtins.int] draining_timeout: Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
701
+ :param pulumi.Input[_builtins.bool] fallback_to_ondemand: Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
702
+ :param pulumi.Input[_builtins.str] instance_name_prefix: Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:
703
703
  * A maximal length of 25 characters.
704
704
  * The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
705
705
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]] instance_types_customs: Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.
706
706
  * `vCPU` - (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
707
- :param pulumi.Input[str] instance_types_ondemand: The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
708
- :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types_preemptibles: The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
707
+ :param pulumi.Input[_builtins.str] instance_types_ondemand: The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
708
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] instance_types_preemptibles: The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
709
709
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]] labels: Array of objects with key-value pairs.
710
- :param pulumi.Input[int] max_size: The maximum number of instances the group should have at any time.
710
+ :param pulumi.Input[_builtins.int] max_size: The maximum number of instances the group should have at any time.
711
711
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]] metadatas: Array of objects with key-value pairs.
712
- :param pulumi.Input[str] min_cpu_platform: Select a minimum CPU platform for the compute instance.
713
- :param pulumi.Input[int] min_size: The minimum number of instances the group should have at any time.
714
- :param pulumi.Input[str] name: The group name.
715
- :param pulumi.Input[Sequence[pulumi.Input[str]]] optimization_windows: Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
716
- :param pulumi.Input[int] preemptible_percentage: Percentage of Preemptible VMs to spin up from the "desired_capacity".
717
- :param pulumi.Input[Sequence[pulumi.Input[str]]] preferred_availability_zones: prioritize availability zones when launching instances for the group. Must be a sublist of `availability_zones`.
718
- :param pulumi.Input[str] provisioning_model: Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
712
+ :param pulumi.Input[_builtins.str] min_cpu_platform: Select a minimum CPU platform for the compute instance.
713
+ :param pulumi.Input[_builtins.int] min_size: The minimum number of instances the group should have at any time.
714
+ :param pulumi.Input[_builtins.str] name: The group name.
715
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] optimization_windows: Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
716
+ :param pulumi.Input[_builtins.int] preemptible_percentage: Percentage of Preemptible VMs to spin up from the "desired_capacity".
717
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] preferred_availability_zones: prioritize availability zones when launching instances for the group. Must be a sublist of `availability_zones`.
718
+ :param pulumi.Input[_builtins.str] provisioning_model: Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
719
719
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]] revert_to_preemptibles: Setting for revert to preemptible option.
720
- :param pulumi.Input[str] service_account: The email of the service account in which the group instances will be launched.
720
+ :param pulumi.Input[_builtins.str] service_account: The email of the service account in which the group instances will be launched.
721
721
  :param pulumi.Input['ElastigroupShieldedInstanceConfigArgs'] shielded_instance_config: You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
722
- :param pulumi.Input[bool] should_utilize_commitments: Enable committed use discounts utilization.
723
- :param pulumi.Input[str] shutdown_script: The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: [Shutdown Script](https://api.spotinst.com/integration-docs/elastigroup/concepts/compute-concepts/shutdown-scripts/)
724
- :param pulumi.Input[str] startup_script: Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
722
+ :param pulumi.Input[_builtins.bool] should_utilize_commitments: Enable committed use discounts utilization.
723
+ :param pulumi.Input[_builtins.str] shutdown_script: The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: [Shutdown Script](https://api.spotinst.com/integration-docs/elastigroup/concepts/compute-concepts/shutdown-scripts/)
724
+ :param pulumi.Input[_builtins.str] startup_script: Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
725
725
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupSubnetArgs']]] subnets: A list of regions and subnets.
726
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to mark created instances.
726
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: Tags to mark created instances.
727
727
  """
728
728
  if auto_healing is not None:
729
729
  pulumi.set(__self__, "auto_healing", auto_healing)
@@ -813,29 +813,29 @@ class _ElastigroupState:
813
813
  if unhealthy_duration is not None:
814
814
  pulumi.set(__self__, "unhealthy_duration", unhealthy_duration)
815
815
 
816
- @property
816
+ @_builtins.property
817
817
  @pulumi.getter(name="autoHealing")
818
- def auto_healing(self) -> Optional[pulumi.Input[bool]]:
818
+ def auto_healing(self) -> Optional[pulumi.Input[_builtins.bool]]:
819
819
  return pulumi.get(self, "auto_healing")
820
820
 
821
821
  @auto_healing.setter
822
- def auto_healing(self, value: Optional[pulumi.Input[bool]]):
822
+ def auto_healing(self, value: Optional[pulumi.Input[_builtins.bool]]):
823
823
  pulumi.set(self, "auto_healing", value)
824
824
 
825
- @property
825
+ @_builtins.property
826
826
  @pulumi.getter(name="availabilityZones")
827
827
  @_utilities.deprecated("""This field will soon be handled by Region in Subnets""")
828
- def availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
828
+ def availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
829
829
  """
830
830
  List of availability zones for the group.
831
831
  """
832
832
  return pulumi.get(self, "availability_zones")
833
833
 
834
834
  @availability_zones.setter
835
- def availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
835
+ def availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
836
836
  pulumi.set(self, "availability_zones", value)
837
837
 
838
- @property
838
+ @_builtins.property
839
839
  @pulumi.getter(name="backendServices")
840
840
  def backend_services(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupBackendServiceArgs']]]]:
841
841
  return pulumi.get(self, "backend_services")
@@ -844,31 +844,31 @@ class _ElastigroupState:
844
844
  def backend_services(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupBackendServiceArgs']]]]):
845
845
  pulumi.set(self, "backend_services", value)
846
846
 
847
- @property
847
+ @_builtins.property
848
848
  @pulumi.getter
849
- def description(self) -> Optional[pulumi.Input[str]]:
849
+ def description(self) -> Optional[pulumi.Input[_builtins.str]]:
850
850
  """
851
851
  The region your GCP group will be created in.
852
852
  """
853
853
  return pulumi.get(self, "description")
854
854
 
855
855
  @description.setter
856
- def description(self, value: Optional[pulumi.Input[str]]):
856
+ def description(self, value: Optional[pulumi.Input[_builtins.str]]):
857
857
  pulumi.set(self, "description", value)
858
858
 
859
- @property
859
+ @_builtins.property
860
860
  @pulumi.getter(name="desiredCapacity")
861
- def desired_capacity(self) -> Optional[pulumi.Input[int]]:
861
+ def desired_capacity(self) -> Optional[pulumi.Input[_builtins.int]]:
862
862
  """
863
863
  The desired number of instances the group should have at any time.
864
864
  """
865
865
  return pulumi.get(self, "desired_capacity")
866
866
 
867
867
  @desired_capacity.setter
868
- def desired_capacity(self, value: Optional[pulumi.Input[int]]):
868
+ def desired_capacity(self, value: Optional[pulumi.Input[_builtins.int]]):
869
869
  pulumi.set(self, "desired_capacity", value)
870
870
 
871
- @property
871
+ @_builtins.property
872
872
  @pulumi.getter
873
873
  def disks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupDiskArgs']]]]:
874
874
  return pulumi.get(self, "disks")
@@ -877,31 +877,31 @@ class _ElastigroupState:
877
877
  def disks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupDiskArgs']]]]):
878
878
  pulumi.set(self, "disks", value)
879
879
 
880
- @property
880
+ @_builtins.property
881
881
  @pulumi.getter(name="drainingTimeout")
882
- def draining_timeout(self) -> Optional[pulumi.Input[int]]:
882
+ def draining_timeout(self) -> Optional[pulumi.Input[_builtins.int]]:
883
883
  """
884
884
  Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
885
885
  """
886
886
  return pulumi.get(self, "draining_timeout")
887
887
 
888
888
  @draining_timeout.setter
889
- def draining_timeout(self, value: Optional[pulumi.Input[int]]):
889
+ def draining_timeout(self, value: Optional[pulumi.Input[_builtins.int]]):
890
890
  pulumi.set(self, "draining_timeout", value)
891
891
 
892
- @property
892
+ @_builtins.property
893
893
  @pulumi.getter(name="fallbackToOndemand")
894
- def fallback_to_ondemand(self) -> Optional[pulumi.Input[bool]]:
894
+ def fallback_to_ondemand(self) -> Optional[pulumi.Input[_builtins.bool]]:
895
895
  """
896
896
  Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
897
897
  """
898
898
  return pulumi.get(self, "fallback_to_ondemand")
899
899
 
900
900
  @fallback_to_ondemand.setter
901
- def fallback_to_ondemand(self, value: Optional[pulumi.Input[bool]]):
901
+ def fallback_to_ondemand(self, value: Optional[pulumi.Input[_builtins.bool]]):
902
902
  pulumi.set(self, "fallback_to_ondemand", value)
903
903
 
904
- @property
904
+ @_builtins.property
905
905
  @pulumi.getter
906
906
  def gpu(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupGpuArgs']]]]:
907
907
  return pulumi.get(self, "gpu")
@@ -910,27 +910,27 @@ class _ElastigroupState:
910
910
  def gpu(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupGpuArgs']]]]):
911
911
  pulumi.set(self, "gpu", value)
912
912
 
913
- @property
913
+ @_builtins.property
914
914
  @pulumi.getter(name="healthCheckGracePeriod")
915
- def health_check_grace_period(self) -> Optional[pulumi.Input[int]]:
915
+ def health_check_grace_period(self) -> Optional[pulumi.Input[_builtins.int]]:
916
916
  return pulumi.get(self, "health_check_grace_period")
917
917
 
918
918
  @health_check_grace_period.setter
919
- def health_check_grace_period(self, value: Optional[pulumi.Input[int]]):
919
+ def health_check_grace_period(self, value: Optional[pulumi.Input[_builtins.int]]):
920
920
  pulumi.set(self, "health_check_grace_period", value)
921
921
 
922
- @property
922
+ @_builtins.property
923
923
  @pulumi.getter(name="healthCheckType")
924
- def health_check_type(self) -> Optional[pulumi.Input[str]]:
924
+ def health_check_type(self) -> Optional[pulumi.Input[_builtins.str]]:
925
925
  return pulumi.get(self, "health_check_type")
926
926
 
927
927
  @health_check_type.setter
928
- def health_check_type(self, value: Optional[pulumi.Input[str]]):
928
+ def health_check_type(self, value: Optional[pulumi.Input[_builtins.str]]):
929
929
  pulumi.set(self, "health_check_type", value)
930
930
 
931
- @property
931
+ @_builtins.property
932
932
  @pulumi.getter(name="instanceNamePrefix")
933
- def instance_name_prefix(self) -> Optional[pulumi.Input[str]]:
933
+ def instance_name_prefix(self) -> Optional[pulumi.Input[_builtins.str]]:
934
934
  """
935
935
  Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:
936
936
  * A maximal length of 25 characters.
@@ -939,10 +939,10 @@ class _ElastigroupState:
939
939
  return pulumi.get(self, "instance_name_prefix")
940
940
 
941
941
  @instance_name_prefix.setter
942
- def instance_name_prefix(self, value: Optional[pulumi.Input[str]]):
942
+ def instance_name_prefix(self, value: Optional[pulumi.Input[_builtins.str]]):
943
943
  pulumi.set(self, "instance_name_prefix", value)
944
944
 
945
- @property
945
+ @_builtins.property
946
946
  @pulumi.getter(name="instanceTypesCustoms")
947
947
  def instance_types_customs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]]]:
948
948
  """
@@ -955,31 +955,31 @@ class _ElastigroupState:
955
955
  def instance_types_customs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesCustomArgs']]]]):
956
956
  pulumi.set(self, "instance_types_customs", value)
957
957
 
958
- @property
958
+ @_builtins.property
959
959
  @pulumi.getter(name="instanceTypesOndemand")
960
- def instance_types_ondemand(self) -> Optional[pulumi.Input[str]]:
960
+ def instance_types_ondemand(self) -> Optional[pulumi.Input[_builtins.str]]:
961
961
  """
962
962
  The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
963
963
  """
964
964
  return pulumi.get(self, "instance_types_ondemand")
965
965
 
966
966
  @instance_types_ondemand.setter
967
- def instance_types_ondemand(self, value: Optional[pulumi.Input[str]]):
967
+ def instance_types_ondemand(self, value: Optional[pulumi.Input[_builtins.str]]):
968
968
  pulumi.set(self, "instance_types_ondemand", value)
969
969
 
970
- @property
970
+ @_builtins.property
971
971
  @pulumi.getter(name="instanceTypesPreemptibles")
972
- def instance_types_preemptibles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
972
+ def instance_types_preemptibles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
973
973
  """
974
974
  The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
975
975
  """
976
976
  return pulumi.get(self, "instance_types_preemptibles")
977
977
 
978
978
  @instance_types_preemptibles.setter
979
- def instance_types_preemptibles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
979
+ def instance_types_preemptibles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
980
980
  pulumi.set(self, "instance_types_preemptibles", value)
981
981
 
982
- @property
982
+ @_builtins.property
983
983
  @pulumi.getter(name="integrationDockerSwarm")
984
984
  def integration_docker_swarm(self) -> Optional[pulumi.Input['ElastigroupIntegrationDockerSwarmArgs']]:
985
985
  return pulumi.get(self, "integration_docker_swarm")
@@ -988,7 +988,7 @@ class _ElastigroupState:
988
988
  def integration_docker_swarm(self, value: Optional[pulumi.Input['ElastigroupIntegrationDockerSwarmArgs']]):
989
989
  pulumi.set(self, "integration_docker_swarm", value)
990
990
 
991
- @property
991
+ @_builtins.property
992
992
  @pulumi.getter(name="integrationGke")
993
993
  def integration_gke(self) -> Optional[pulumi.Input['ElastigroupIntegrationGkeArgs']]:
994
994
  return pulumi.get(self, "integration_gke")
@@ -997,16 +997,16 @@ class _ElastigroupState:
997
997
  def integration_gke(self, value: Optional[pulumi.Input['ElastigroupIntegrationGkeArgs']]):
998
998
  pulumi.set(self, "integration_gke", value)
999
999
 
1000
- @property
1000
+ @_builtins.property
1001
1001
  @pulumi.getter(name="ipForwarding")
1002
- def ip_forwarding(self) -> Optional[pulumi.Input[bool]]:
1002
+ def ip_forwarding(self) -> Optional[pulumi.Input[_builtins.bool]]:
1003
1003
  return pulumi.get(self, "ip_forwarding")
1004
1004
 
1005
1005
  @ip_forwarding.setter
1006
- def ip_forwarding(self, value: Optional[pulumi.Input[bool]]):
1006
+ def ip_forwarding(self, value: Optional[pulumi.Input[_builtins.bool]]):
1007
1007
  pulumi.set(self, "ip_forwarding", value)
1008
1008
 
1009
- @property
1009
+ @_builtins.property
1010
1010
  @pulumi.getter
1011
1011
  def labels(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]]]:
1012
1012
  """
@@ -1018,19 +1018,19 @@ class _ElastigroupState:
1018
1018
  def labels(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupLabelArgs']]]]):
1019
1019
  pulumi.set(self, "labels", value)
1020
1020
 
1021
- @property
1021
+ @_builtins.property
1022
1022
  @pulumi.getter(name="maxSize")
1023
- def max_size(self) -> Optional[pulumi.Input[int]]:
1023
+ def max_size(self) -> Optional[pulumi.Input[_builtins.int]]:
1024
1024
  """
1025
1025
  The maximum number of instances the group should have at any time.
1026
1026
  """
1027
1027
  return pulumi.get(self, "max_size")
1028
1028
 
1029
1029
  @max_size.setter
1030
- def max_size(self, value: Optional[pulumi.Input[int]]):
1030
+ def max_size(self, value: Optional[pulumi.Input[_builtins.int]]):
1031
1031
  pulumi.set(self, "max_size", value)
1032
1032
 
1033
- @property
1033
+ @_builtins.property
1034
1034
  @pulumi.getter
1035
1035
  def metadatas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]]]:
1036
1036
  """
@@ -1042,43 +1042,43 @@ class _ElastigroupState:
1042
1042
  def metadatas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupMetadataArgs']]]]):
1043
1043
  pulumi.set(self, "metadatas", value)
1044
1044
 
1045
- @property
1045
+ @_builtins.property
1046
1046
  @pulumi.getter(name="minCpuPlatform")
1047
- def min_cpu_platform(self) -> Optional[pulumi.Input[str]]:
1047
+ def min_cpu_platform(self) -> Optional[pulumi.Input[_builtins.str]]:
1048
1048
  """
1049
1049
  Select a minimum CPU platform for the compute instance.
1050
1050
  """
1051
1051
  return pulumi.get(self, "min_cpu_platform")
1052
1052
 
1053
1053
  @min_cpu_platform.setter
1054
- def min_cpu_platform(self, value: Optional[pulumi.Input[str]]):
1054
+ def min_cpu_platform(self, value: Optional[pulumi.Input[_builtins.str]]):
1055
1055
  pulumi.set(self, "min_cpu_platform", value)
1056
1056
 
1057
- @property
1057
+ @_builtins.property
1058
1058
  @pulumi.getter(name="minSize")
1059
- def min_size(self) -> Optional[pulumi.Input[int]]:
1059
+ def min_size(self) -> Optional[pulumi.Input[_builtins.int]]:
1060
1060
  """
1061
1061
  The minimum number of instances the group should have at any time.
1062
1062
  """
1063
1063
  return pulumi.get(self, "min_size")
1064
1064
 
1065
1065
  @min_size.setter
1066
- def min_size(self, value: Optional[pulumi.Input[int]]):
1066
+ def min_size(self, value: Optional[pulumi.Input[_builtins.int]]):
1067
1067
  pulumi.set(self, "min_size", value)
1068
1068
 
1069
- @property
1069
+ @_builtins.property
1070
1070
  @pulumi.getter
1071
- def name(self) -> Optional[pulumi.Input[str]]:
1071
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
1072
1072
  """
1073
1073
  The group name.
1074
1074
  """
1075
1075
  return pulumi.get(self, "name")
1076
1076
 
1077
1077
  @name.setter
1078
- def name(self, value: Optional[pulumi.Input[str]]):
1078
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
1079
1079
  pulumi.set(self, "name", value)
1080
1080
 
1081
- @property
1081
+ @_builtins.property
1082
1082
  @pulumi.getter(name="networkInterfaces")
1083
1083
  def network_interfaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]]:
1084
1084
  return pulumi.get(self, "network_interfaces")
@@ -1087,64 +1087,64 @@ class _ElastigroupState:
1087
1087
  def network_interfaces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]]):
1088
1088
  pulumi.set(self, "network_interfaces", value)
1089
1089
 
1090
- @property
1090
+ @_builtins.property
1091
1091
  @pulumi.getter(name="ondemandCount")
1092
- def ondemand_count(self) -> Optional[pulumi.Input[int]]:
1092
+ def ondemand_count(self) -> Optional[pulumi.Input[_builtins.int]]:
1093
1093
  return pulumi.get(self, "ondemand_count")
1094
1094
 
1095
1095
  @ondemand_count.setter
1096
- def ondemand_count(self, value: Optional[pulumi.Input[int]]):
1096
+ def ondemand_count(self, value: Optional[pulumi.Input[_builtins.int]]):
1097
1097
  pulumi.set(self, "ondemand_count", value)
1098
1098
 
1099
- @property
1099
+ @_builtins.property
1100
1100
  @pulumi.getter(name="optimizationWindows")
1101
- def optimization_windows(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1101
+ def optimization_windows(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
1102
1102
  """
1103
1103
  Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
1104
1104
  """
1105
1105
  return pulumi.get(self, "optimization_windows")
1106
1106
 
1107
1107
  @optimization_windows.setter
1108
- def optimization_windows(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1108
+ def optimization_windows(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
1109
1109
  pulumi.set(self, "optimization_windows", value)
1110
1110
 
1111
- @property
1111
+ @_builtins.property
1112
1112
  @pulumi.getter(name="preemptiblePercentage")
1113
- def preemptible_percentage(self) -> Optional[pulumi.Input[int]]:
1113
+ def preemptible_percentage(self) -> Optional[pulumi.Input[_builtins.int]]:
1114
1114
  """
1115
1115
  Percentage of Preemptible VMs to spin up from the "desired_capacity".
1116
1116
  """
1117
1117
  return pulumi.get(self, "preemptible_percentage")
1118
1118
 
1119
1119
  @preemptible_percentage.setter
1120
- def preemptible_percentage(self, value: Optional[pulumi.Input[int]]):
1120
+ def preemptible_percentage(self, value: Optional[pulumi.Input[_builtins.int]]):
1121
1121
  pulumi.set(self, "preemptible_percentage", value)
1122
1122
 
1123
- @property
1123
+ @_builtins.property
1124
1124
  @pulumi.getter(name="preferredAvailabilityZones")
1125
- def preferred_availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1125
+ def preferred_availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
1126
1126
  """
1127
1127
  prioritize availability zones when launching instances for the group. Must be a sublist of `availability_zones`.
1128
1128
  """
1129
1129
  return pulumi.get(self, "preferred_availability_zones")
1130
1130
 
1131
1131
  @preferred_availability_zones.setter
1132
- def preferred_availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1132
+ def preferred_availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
1133
1133
  pulumi.set(self, "preferred_availability_zones", value)
1134
1134
 
1135
- @property
1135
+ @_builtins.property
1136
1136
  @pulumi.getter(name="provisioningModel")
1137
- def provisioning_model(self) -> Optional[pulumi.Input[str]]:
1137
+ def provisioning_model(self) -> Optional[pulumi.Input[_builtins.str]]:
1138
1138
  """
1139
1139
  Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
1140
1140
  """
1141
1141
  return pulumi.get(self, "provisioning_model")
1142
1142
 
1143
1143
  @provisioning_model.setter
1144
- def provisioning_model(self, value: Optional[pulumi.Input[str]]):
1144
+ def provisioning_model(self, value: Optional[pulumi.Input[_builtins.str]]):
1145
1145
  pulumi.set(self, "provisioning_model", value)
1146
1146
 
1147
- @property
1147
+ @_builtins.property
1148
1148
  @pulumi.getter(name="revertToPreemptibles")
1149
1149
  def revert_to_preemptibles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]]]:
1150
1150
  """
@@ -1156,7 +1156,7 @@ class _ElastigroupState:
1156
1156
  def revert_to_preemptibles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupRevertToPreemptibleArgs']]]]):
1157
1157
  pulumi.set(self, "revert_to_preemptibles", value)
1158
1158
 
1159
- @property
1159
+ @_builtins.property
1160
1160
  @pulumi.getter(name="scalingDownPolicies")
1161
1161
  def scaling_down_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]]:
1162
1162
  return pulumi.get(self, "scaling_down_policies")
@@ -1165,7 +1165,7 @@ class _ElastigroupState:
1165
1165
  def scaling_down_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]]):
1166
1166
  pulumi.set(self, "scaling_down_policies", value)
1167
1167
 
1168
- @property
1168
+ @_builtins.property
1169
1169
  @pulumi.getter(name="scalingUpPolicies")
1170
1170
  def scaling_up_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]]:
1171
1171
  return pulumi.get(self, "scaling_up_policies")
@@ -1174,7 +1174,7 @@ class _ElastigroupState:
1174
1174
  def scaling_up_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]]):
1175
1175
  pulumi.set(self, "scaling_up_policies", value)
1176
1176
 
1177
- @property
1177
+ @_builtins.property
1178
1178
  @pulumi.getter(name="scheduledTasks")
1179
1179
  def scheduled_tasks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScheduledTaskArgs']]]]:
1180
1180
  return pulumi.get(self, "scheduled_tasks")
@@ -1183,19 +1183,19 @@ class _ElastigroupState:
1183
1183
  def scheduled_tasks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScheduledTaskArgs']]]]):
1184
1184
  pulumi.set(self, "scheduled_tasks", value)
1185
1185
 
1186
- @property
1186
+ @_builtins.property
1187
1187
  @pulumi.getter(name="serviceAccount")
1188
- def service_account(self) -> Optional[pulumi.Input[str]]:
1188
+ def service_account(self) -> Optional[pulumi.Input[_builtins.str]]:
1189
1189
  """
1190
1190
  The email of the service account in which the group instances will be launched.
1191
1191
  """
1192
1192
  return pulumi.get(self, "service_account")
1193
1193
 
1194
1194
  @service_account.setter
1195
- def service_account(self, value: Optional[pulumi.Input[str]]):
1195
+ def service_account(self, value: Optional[pulumi.Input[_builtins.str]]):
1196
1196
  pulumi.set(self, "service_account", value)
1197
1197
 
1198
- @property
1198
+ @_builtins.property
1199
1199
  @pulumi.getter(name="shieldedInstanceConfig")
1200
1200
  def shielded_instance_config(self) -> Optional[pulumi.Input['ElastigroupShieldedInstanceConfigArgs']]:
1201
1201
  """
@@ -1207,43 +1207,43 @@ class _ElastigroupState:
1207
1207
  def shielded_instance_config(self, value: Optional[pulumi.Input['ElastigroupShieldedInstanceConfigArgs']]):
1208
1208
  pulumi.set(self, "shielded_instance_config", value)
1209
1209
 
1210
- @property
1210
+ @_builtins.property
1211
1211
  @pulumi.getter(name="shouldUtilizeCommitments")
1212
- def should_utilize_commitments(self) -> Optional[pulumi.Input[bool]]:
1212
+ def should_utilize_commitments(self) -> Optional[pulumi.Input[_builtins.bool]]:
1213
1213
  """
1214
1214
  Enable committed use discounts utilization.
1215
1215
  """
1216
1216
  return pulumi.get(self, "should_utilize_commitments")
1217
1217
 
1218
1218
  @should_utilize_commitments.setter
1219
- def should_utilize_commitments(self, value: Optional[pulumi.Input[bool]]):
1219
+ def should_utilize_commitments(self, value: Optional[pulumi.Input[_builtins.bool]]):
1220
1220
  pulumi.set(self, "should_utilize_commitments", value)
1221
1221
 
1222
- @property
1222
+ @_builtins.property
1223
1223
  @pulumi.getter(name="shutdownScript")
1224
- def shutdown_script(self) -> Optional[pulumi.Input[str]]:
1224
+ def shutdown_script(self) -> Optional[pulumi.Input[_builtins.str]]:
1225
1225
  """
1226
1226
  The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: [Shutdown Script](https://api.spotinst.com/integration-docs/elastigroup/concepts/compute-concepts/shutdown-scripts/)
1227
1227
  """
1228
1228
  return pulumi.get(self, "shutdown_script")
1229
1229
 
1230
1230
  @shutdown_script.setter
1231
- def shutdown_script(self, value: Optional[pulumi.Input[str]]):
1231
+ def shutdown_script(self, value: Optional[pulumi.Input[_builtins.str]]):
1232
1232
  pulumi.set(self, "shutdown_script", value)
1233
1233
 
1234
- @property
1234
+ @_builtins.property
1235
1235
  @pulumi.getter(name="startupScript")
1236
- def startup_script(self) -> Optional[pulumi.Input[str]]:
1236
+ def startup_script(self) -> Optional[pulumi.Input[_builtins.str]]:
1237
1237
  """
1238
1238
  Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
1239
1239
  """
1240
1240
  return pulumi.get(self, "startup_script")
1241
1241
 
1242
1242
  @startup_script.setter
1243
- def startup_script(self, value: Optional[pulumi.Input[str]]):
1243
+ def startup_script(self, value: Optional[pulumi.Input[_builtins.str]]):
1244
1244
  pulumi.set(self, "startup_script", value)
1245
1245
 
1246
- @property
1246
+ @_builtins.property
1247
1247
  @pulumi.getter
1248
1248
  def subnets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupSubnetArgs']]]]:
1249
1249
  """
@@ -1255,75 +1255,76 @@ class _ElastigroupState:
1255
1255
  def subnets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupSubnetArgs']]]]):
1256
1256
  pulumi.set(self, "subnets", value)
1257
1257
 
1258
- @property
1258
+ @_builtins.property
1259
1259
  @pulumi.getter
1260
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1260
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
1261
1261
  """
1262
1262
  Tags to mark created instances.
1263
1263
  """
1264
1264
  return pulumi.get(self, "tags")
1265
1265
 
1266
1266
  @tags.setter
1267
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1267
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
1268
1268
  pulumi.set(self, "tags", value)
1269
1269
 
1270
- @property
1270
+ @_builtins.property
1271
1271
  @pulumi.getter(name="unhealthyDuration")
1272
- def unhealthy_duration(self) -> Optional[pulumi.Input[int]]:
1272
+ def unhealthy_duration(self) -> Optional[pulumi.Input[_builtins.int]]:
1273
1273
  return pulumi.get(self, "unhealthy_duration")
1274
1274
 
1275
1275
  @unhealthy_duration.setter
1276
- def unhealthy_duration(self, value: Optional[pulumi.Input[int]]):
1276
+ def unhealthy_duration(self, value: Optional[pulumi.Input[_builtins.int]]):
1277
1277
  pulumi.set(self, "unhealthy_duration", value)
1278
1278
 
1279
1279
 
1280
+ @pulumi.type_token("spotinst:gcp/elastigroup:Elastigroup")
1280
1281
  class Elastigroup(pulumi.CustomResource):
1281
1282
  @overload
1282
1283
  def __init__(__self__,
1283
1284
  resource_name: str,
1284
1285
  opts: Optional[pulumi.ResourceOptions] = None,
1285
- auto_healing: Optional[pulumi.Input[bool]] = None,
1286
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1286
+ auto_healing: Optional[pulumi.Input[_builtins.bool]] = None,
1287
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1287
1288
  backend_services: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupBackendServiceArgs', 'ElastigroupBackendServiceArgsDict']]]]] = None,
1288
- description: Optional[pulumi.Input[str]] = None,
1289
- desired_capacity: Optional[pulumi.Input[int]] = None,
1289
+ description: Optional[pulumi.Input[_builtins.str]] = None,
1290
+ desired_capacity: Optional[pulumi.Input[_builtins.int]] = None,
1290
1291
  disks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupDiskArgs', 'ElastigroupDiskArgsDict']]]]] = None,
1291
- draining_timeout: Optional[pulumi.Input[int]] = None,
1292
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
1292
+ draining_timeout: Optional[pulumi.Input[_builtins.int]] = None,
1293
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
1293
1294
  gpu: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupGpuArgs', 'ElastigroupGpuArgsDict']]]]] = None,
1294
- health_check_grace_period: Optional[pulumi.Input[int]] = None,
1295
- health_check_type: Optional[pulumi.Input[str]] = None,
1296
- instance_name_prefix: Optional[pulumi.Input[str]] = None,
1295
+ health_check_grace_period: Optional[pulumi.Input[_builtins.int]] = None,
1296
+ health_check_type: Optional[pulumi.Input[_builtins.str]] = None,
1297
+ instance_name_prefix: Optional[pulumi.Input[_builtins.str]] = None,
1297
1298
  instance_types_customs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupInstanceTypesCustomArgs', 'ElastigroupInstanceTypesCustomArgsDict']]]]] = None,
1298
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
1299
- instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1299
+ instance_types_ondemand: Optional[pulumi.Input[_builtins.str]] = None,
1300
+ instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1300
1301
  integration_docker_swarm: Optional[pulumi.Input[Union['ElastigroupIntegrationDockerSwarmArgs', 'ElastigroupIntegrationDockerSwarmArgsDict']]] = None,
1301
1302
  integration_gke: Optional[pulumi.Input[Union['ElastigroupIntegrationGkeArgs', 'ElastigroupIntegrationGkeArgsDict']]] = None,
1302
- ip_forwarding: Optional[pulumi.Input[bool]] = None,
1303
+ ip_forwarding: Optional[pulumi.Input[_builtins.bool]] = None,
1303
1304
  labels: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupLabelArgs', 'ElastigroupLabelArgsDict']]]]] = None,
1304
- max_size: Optional[pulumi.Input[int]] = None,
1305
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
1305
1306
  metadatas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupMetadataArgs', 'ElastigroupMetadataArgsDict']]]]] = None,
1306
- min_cpu_platform: Optional[pulumi.Input[str]] = None,
1307
- min_size: Optional[pulumi.Input[int]] = None,
1308
- name: Optional[pulumi.Input[str]] = None,
1307
+ min_cpu_platform: Optional[pulumi.Input[_builtins.str]] = None,
1308
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
1309
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1309
1310
  network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupNetworkInterfaceArgs', 'ElastigroupNetworkInterfaceArgsDict']]]]] = None,
1310
- ondemand_count: Optional[pulumi.Input[int]] = None,
1311
- optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1312
- preemptible_percentage: Optional[pulumi.Input[int]] = None,
1313
- preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1314
- provisioning_model: Optional[pulumi.Input[str]] = None,
1311
+ ondemand_count: Optional[pulumi.Input[_builtins.int]] = None,
1312
+ optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1313
+ preemptible_percentage: Optional[pulumi.Input[_builtins.int]] = None,
1314
+ preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1315
+ provisioning_model: Optional[pulumi.Input[_builtins.str]] = None,
1315
1316
  revert_to_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupRevertToPreemptibleArgs', 'ElastigroupRevertToPreemptibleArgsDict']]]]] = None,
1316
1317
  scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingDownPolicyArgs', 'ElastigroupScalingDownPolicyArgsDict']]]]] = None,
1317
1318
  scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingUpPolicyArgs', 'ElastigroupScalingUpPolicyArgsDict']]]]] = None,
1318
1319
  scheduled_tasks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScheduledTaskArgs', 'ElastigroupScheduledTaskArgsDict']]]]] = None,
1319
- service_account: Optional[pulumi.Input[str]] = None,
1320
+ service_account: Optional[pulumi.Input[_builtins.str]] = None,
1320
1321
  shielded_instance_config: Optional[pulumi.Input[Union['ElastigroupShieldedInstanceConfigArgs', 'ElastigroupShieldedInstanceConfigArgsDict']]] = None,
1321
- should_utilize_commitments: Optional[pulumi.Input[bool]] = None,
1322
- shutdown_script: Optional[pulumi.Input[str]] = None,
1323
- startup_script: Optional[pulumi.Input[str]] = None,
1322
+ should_utilize_commitments: Optional[pulumi.Input[_builtins.bool]] = None,
1323
+ shutdown_script: Optional[pulumi.Input[_builtins.str]] = None,
1324
+ startup_script: Optional[pulumi.Input[_builtins.str]] = None,
1324
1325
  subnets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupSubnetArgs', 'ElastigroupSubnetArgsDict']]]]] = None,
1325
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1326
- unhealthy_duration: Optional[pulumi.Input[int]] = None,
1326
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1327
+ unhealthy_duration: Optional[pulumi.Input[_builtins.int]] = None,
1327
1328
  __props__=None):
1328
1329
  """
1329
1330
  Provides a Spotinst elastigroup GCP resource.
@@ -1377,6 +1378,10 @@ class Elastigroup(pulumi.CustomResource):
1377
1378
  "6000",
1378
1379
  ],
1379
1380
  }],
1381
+ "backend_balancing": {
1382
+ "backend_balancing_mode": "RATE",
1383
+ "max_rate_per_instance": 500,
1384
+ },
1380
1385
  }],
1381
1386
  disks=[{
1382
1387
  "device_name": "device",
@@ -1434,36 +1439,36 @@ class Elastigroup(pulumi.CustomResource):
1434
1439
 
1435
1440
  :param str resource_name: The name of the resource.
1436
1441
  :param pulumi.ResourceOptions opts: Options for the resource.
1437
- :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: List of availability zones for the group.
1438
- :param pulumi.Input[str] description: The region your GCP group will be created in.
1439
- :param pulumi.Input[int] desired_capacity: The desired number of instances the group should have at any time.
1440
- :param pulumi.Input[int] draining_timeout: Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
1441
- :param pulumi.Input[bool] fallback_to_ondemand: Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
1442
- :param pulumi.Input[str] instance_name_prefix: Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:
1442
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] availability_zones: List of availability zones for the group.
1443
+ :param pulumi.Input[_builtins.str] description: The region your GCP group will be created in.
1444
+ :param pulumi.Input[_builtins.int] desired_capacity: The desired number of instances the group should have at any time.
1445
+ :param pulumi.Input[_builtins.int] draining_timeout: Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
1446
+ :param pulumi.Input[_builtins.bool] fallback_to_ondemand: Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
1447
+ :param pulumi.Input[_builtins.str] instance_name_prefix: Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:
1443
1448
  * A maximal length of 25 characters.
1444
1449
  * The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
1445
1450
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupInstanceTypesCustomArgs', 'ElastigroupInstanceTypesCustomArgsDict']]]] instance_types_customs: Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.
1446
1451
  * `vCPU` - (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
1447
- :param pulumi.Input[str] instance_types_ondemand: The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
1448
- :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types_preemptibles: The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
1452
+ :param pulumi.Input[_builtins.str] instance_types_ondemand: The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
1453
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] instance_types_preemptibles: The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
1449
1454
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupLabelArgs', 'ElastigroupLabelArgsDict']]]] labels: Array of objects with key-value pairs.
1450
- :param pulumi.Input[int] max_size: The maximum number of instances the group should have at any time.
1455
+ :param pulumi.Input[_builtins.int] max_size: The maximum number of instances the group should have at any time.
1451
1456
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupMetadataArgs', 'ElastigroupMetadataArgsDict']]]] metadatas: Array of objects with key-value pairs.
1452
- :param pulumi.Input[str] min_cpu_platform: Select a minimum CPU platform for the compute instance.
1453
- :param pulumi.Input[int] min_size: The minimum number of instances the group should have at any time.
1454
- :param pulumi.Input[str] name: The group name.
1455
- :param pulumi.Input[Sequence[pulumi.Input[str]]] optimization_windows: Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
1456
- :param pulumi.Input[int] preemptible_percentage: Percentage of Preemptible VMs to spin up from the "desired_capacity".
1457
- :param pulumi.Input[Sequence[pulumi.Input[str]]] preferred_availability_zones: prioritize availability zones when launching instances for the group. Must be a sublist of `availability_zones`.
1458
- :param pulumi.Input[str] provisioning_model: Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
1457
+ :param pulumi.Input[_builtins.str] min_cpu_platform: Select a minimum CPU platform for the compute instance.
1458
+ :param pulumi.Input[_builtins.int] min_size: The minimum number of instances the group should have at any time.
1459
+ :param pulumi.Input[_builtins.str] name: The group name.
1460
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] optimization_windows: Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
1461
+ :param pulumi.Input[_builtins.int] preemptible_percentage: Percentage of Preemptible VMs to spin up from the "desired_capacity".
1462
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] preferred_availability_zones: prioritize availability zones when launching instances for the group. Must be a sublist of `availability_zones`.
1463
+ :param pulumi.Input[_builtins.str] provisioning_model: Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
1459
1464
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupRevertToPreemptibleArgs', 'ElastigroupRevertToPreemptibleArgsDict']]]] revert_to_preemptibles: Setting for revert to preemptible option.
1460
- :param pulumi.Input[str] service_account: The email of the service account in which the group instances will be launched.
1465
+ :param pulumi.Input[_builtins.str] service_account: The email of the service account in which the group instances will be launched.
1461
1466
  :param pulumi.Input[Union['ElastigroupShieldedInstanceConfigArgs', 'ElastigroupShieldedInstanceConfigArgsDict']] shielded_instance_config: You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
1462
- :param pulumi.Input[bool] should_utilize_commitments: Enable committed use discounts utilization.
1463
- :param pulumi.Input[str] shutdown_script: The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: [Shutdown Script](https://api.spotinst.com/integration-docs/elastigroup/concepts/compute-concepts/shutdown-scripts/)
1464
- :param pulumi.Input[str] startup_script: Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
1467
+ :param pulumi.Input[_builtins.bool] should_utilize_commitments: Enable committed use discounts utilization.
1468
+ :param pulumi.Input[_builtins.str] shutdown_script: The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: [Shutdown Script](https://api.spotinst.com/integration-docs/elastigroup/concepts/compute-concepts/shutdown-scripts/)
1469
+ :param pulumi.Input[_builtins.str] startup_script: Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
1465
1470
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupSubnetArgs', 'ElastigroupSubnetArgsDict']]]] subnets: A list of regions and subnets.
1466
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to mark created instances.
1471
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: Tags to mark created instances.
1467
1472
  """
1468
1473
  ...
1469
1474
  @overload
@@ -1523,6 +1528,10 @@ class Elastigroup(pulumi.CustomResource):
1523
1528
  "6000",
1524
1529
  ],
1525
1530
  }],
1531
+ "backend_balancing": {
1532
+ "backend_balancing_mode": "RATE",
1533
+ "max_rate_per_instance": 500,
1534
+ },
1526
1535
  }],
1527
1536
  disks=[{
1528
1537
  "device_name": "device",
@@ -1593,48 +1602,48 @@ class Elastigroup(pulumi.CustomResource):
1593
1602
  def _internal_init(__self__,
1594
1603
  resource_name: str,
1595
1604
  opts: Optional[pulumi.ResourceOptions] = None,
1596
- auto_healing: Optional[pulumi.Input[bool]] = None,
1597
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1605
+ auto_healing: Optional[pulumi.Input[_builtins.bool]] = None,
1606
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1598
1607
  backend_services: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupBackendServiceArgs', 'ElastigroupBackendServiceArgsDict']]]]] = None,
1599
- description: Optional[pulumi.Input[str]] = None,
1600
- desired_capacity: Optional[pulumi.Input[int]] = None,
1608
+ description: Optional[pulumi.Input[_builtins.str]] = None,
1609
+ desired_capacity: Optional[pulumi.Input[_builtins.int]] = None,
1601
1610
  disks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupDiskArgs', 'ElastigroupDiskArgsDict']]]]] = None,
1602
- draining_timeout: Optional[pulumi.Input[int]] = None,
1603
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
1611
+ draining_timeout: Optional[pulumi.Input[_builtins.int]] = None,
1612
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
1604
1613
  gpu: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupGpuArgs', 'ElastigroupGpuArgsDict']]]]] = None,
1605
- health_check_grace_period: Optional[pulumi.Input[int]] = None,
1606
- health_check_type: Optional[pulumi.Input[str]] = None,
1607
- instance_name_prefix: Optional[pulumi.Input[str]] = None,
1614
+ health_check_grace_period: Optional[pulumi.Input[_builtins.int]] = None,
1615
+ health_check_type: Optional[pulumi.Input[_builtins.str]] = None,
1616
+ instance_name_prefix: Optional[pulumi.Input[_builtins.str]] = None,
1608
1617
  instance_types_customs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupInstanceTypesCustomArgs', 'ElastigroupInstanceTypesCustomArgsDict']]]]] = None,
1609
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
1610
- instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1618
+ instance_types_ondemand: Optional[pulumi.Input[_builtins.str]] = None,
1619
+ instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1611
1620
  integration_docker_swarm: Optional[pulumi.Input[Union['ElastigroupIntegrationDockerSwarmArgs', 'ElastigroupIntegrationDockerSwarmArgsDict']]] = None,
1612
1621
  integration_gke: Optional[pulumi.Input[Union['ElastigroupIntegrationGkeArgs', 'ElastigroupIntegrationGkeArgsDict']]] = None,
1613
- ip_forwarding: Optional[pulumi.Input[bool]] = None,
1622
+ ip_forwarding: Optional[pulumi.Input[_builtins.bool]] = None,
1614
1623
  labels: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupLabelArgs', 'ElastigroupLabelArgsDict']]]]] = None,
1615
- max_size: Optional[pulumi.Input[int]] = None,
1624
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
1616
1625
  metadatas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupMetadataArgs', 'ElastigroupMetadataArgsDict']]]]] = None,
1617
- min_cpu_platform: Optional[pulumi.Input[str]] = None,
1618
- min_size: Optional[pulumi.Input[int]] = None,
1619
- name: Optional[pulumi.Input[str]] = None,
1626
+ min_cpu_platform: Optional[pulumi.Input[_builtins.str]] = None,
1627
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
1628
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1620
1629
  network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupNetworkInterfaceArgs', 'ElastigroupNetworkInterfaceArgsDict']]]]] = None,
1621
- ondemand_count: Optional[pulumi.Input[int]] = None,
1622
- optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1623
- preemptible_percentage: Optional[pulumi.Input[int]] = None,
1624
- preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1625
- provisioning_model: Optional[pulumi.Input[str]] = None,
1630
+ ondemand_count: Optional[pulumi.Input[_builtins.int]] = None,
1631
+ optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1632
+ preemptible_percentage: Optional[pulumi.Input[_builtins.int]] = None,
1633
+ preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1634
+ provisioning_model: Optional[pulumi.Input[_builtins.str]] = None,
1626
1635
  revert_to_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupRevertToPreemptibleArgs', 'ElastigroupRevertToPreemptibleArgsDict']]]]] = None,
1627
1636
  scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingDownPolicyArgs', 'ElastigroupScalingDownPolicyArgsDict']]]]] = None,
1628
1637
  scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingUpPolicyArgs', 'ElastigroupScalingUpPolicyArgsDict']]]]] = None,
1629
1638
  scheduled_tasks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScheduledTaskArgs', 'ElastigroupScheduledTaskArgsDict']]]]] = None,
1630
- service_account: Optional[pulumi.Input[str]] = None,
1639
+ service_account: Optional[pulumi.Input[_builtins.str]] = None,
1631
1640
  shielded_instance_config: Optional[pulumi.Input[Union['ElastigroupShieldedInstanceConfigArgs', 'ElastigroupShieldedInstanceConfigArgsDict']]] = None,
1632
- should_utilize_commitments: Optional[pulumi.Input[bool]] = None,
1633
- shutdown_script: Optional[pulumi.Input[str]] = None,
1634
- startup_script: Optional[pulumi.Input[str]] = None,
1641
+ should_utilize_commitments: Optional[pulumi.Input[_builtins.bool]] = None,
1642
+ shutdown_script: Optional[pulumi.Input[_builtins.str]] = None,
1643
+ startup_script: Optional[pulumi.Input[_builtins.str]] = None,
1635
1644
  subnets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupSubnetArgs', 'ElastigroupSubnetArgsDict']]]]] = None,
1636
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1637
- unhealthy_duration: Optional[pulumi.Input[int]] = None,
1645
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1646
+ unhealthy_duration: Optional[pulumi.Input[_builtins.int]] = None,
1638
1647
  __props__=None):
1639
1648
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1640
1649
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -1698,48 +1707,48 @@ class Elastigroup(pulumi.CustomResource):
1698
1707
  def get(resource_name: str,
1699
1708
  id: pulumi.Input[str],
1700
1709
  opts: Optional[pulumi.ResourceOptions] = None,
1701
- auto_healing: Optional[pulumi.Input[bool]] = None,
1702
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1710
+ auto_healing: Optional[pulumi.Input[_builtins.bool]] = None,
1711
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1703
1712
  backend_services: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupBackendServiceArgs', 'ElastigroupBackendServiceArgsDict']]]]] = None,
1704
- description: Optional[pulumi.Input[str]] = None,
1705
- desired_capacity: Optional[pulumi.Input[int]] = None,
1713
+ description: Optional[pulumi.Input[_builtins.str]] = None,
1714
+ desired_capacity: Optional[pulumi.Input[_builtins.int]] = None,
1706
1715
  disks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupDiskArgs', 'ElastigroupDiskArgsDict']]]]] = None,
1707
- draining_timeout: Optional[pulumi.Input[int]] = None,
1708
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
1716
+ draining_timeout: Optional[pulumi.Input[_builtins.int]] = None,
1717
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
1709
1718
  gpu: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupGpuArgs', 'ElastigroupGpuArgsDict']]]]] = None,
1710
- health_check_grace_period: Optional[pulumi.Input[int]] = None,
1711
- health_check_type: Optional[pulumi.Input[str]] = None,
1712
- instance_name_prefix: Optional[pulumi.Input[str]] = None,
1719
+ health_check_grace_period: Optional[pulumi.Input[_builtins.int]] = None,
1720
+ health_check_type: Optional[pulumi.Input[_builtins.str]] = None,
1721
+ instance_name_prefix: Optional[pulumi.Input[_builtins.str]] = None,
1713
1722
  instance_types_customs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupInstanceTypesCustomArgs', 'ElastigroupInstanceTypesCustomArgsDict']]]]] = None,
1714
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
1715
- instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1723
+ instance_types_ondemand: Optional[pulumi.Input[_builtins.str]] = None,
1724
+ instance_types_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1716
1725
  integration_docker_swarm: Optional[pulumi.Input[Union['ElastigroupIntegrationDockerSwarmArgs', 'ElastigroupIntegrationDockerSwarmArgsDict']]] = None,
1717
1726
  integration_gke: Optional[pulumi.Input[Union['ElastigroupIntegrationGkeArgs', 'ElastigroupIntegrationGkeArgsDict']]] = None,
1718
- ip_forwarding: Optional[pulumi.Input[bool]] = None,
1727
+ ip_forwarding: Optional[pulumi.Input[_builtins.bool]] = None,
1719
1728
  labels: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupLabelArgs', 'ElastigroupLabelArgsDict']]]]] = None,
1720
- max_size: Optional[pulumi.Input[int]] = None,
1729
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
1721
1730
  metadatas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupMetadataArgs', 'ElastigroupMetadataArgsDict']]]]] = None,
1722
- min_cpu_platform: Optional[pulumi.Input[str]] = None,
1723
- min_size: Optional[pulumi.Input[int]] = None,
1724
- name: Optional[pulumi.Input[str]] = None,
1731
+ min_cpu_platform: Optional[pulumi.Input[_builtins.str]] = None,
1732
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
1733
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1725
1734
  network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupNetworkInterfaceArgs', 'ElastigroupNetworkInterfaceArgsDict']]]]] = None,
1726
- ondemand_count: Optional[pulumi.Input[int]] = None,
1727
- optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1728
- preemptible_percentage: Optional[pulumi.Input[int]] = None,
1729
- preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1730
- provisioning_model: Optional[pulumi.Input[str]] = None,
1735
+ ondemand_count: Optional[pulumi.Input[_builtins.int]] = None,
1736
+ optimization_windows: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1737
+ preemptible_percentage: Optional[pulumi.Input[_builtins.int]] = None,
1738
+ preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1739
+ provisioning_model: Optional[pulumi.Input[_builtins.str]] = None,
1731
1740
  revert_to_preemptibles: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupRevertToPreemptibleArgs', 'ElastigroupRevertToPreemptibleArgsDict']]]]] = None,
1732
1741
  scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingDownPolicyArgs', 'ElastigroupScalingDownPolicyArgsDict']]]]] = None,
1733
1742
  scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingUpPolicyArgs', 'ElastigroupScalingUpPolicyArgsDict']]]]] = None,
1734
1743
  scheduled_tasks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScheduledTaskArgs', 'ElastigroupScheduledTaskArgsDict']]]]] = None,
1735
- service_account: Optional[pulumi.Input[str]] = None,
1744
+ service_account: Optional[pulumi.Input[_builtins.str]] = None,
1736
1745
  shielded_instance_config: Optional[pulumi.Input[Union['ElastigroupShieldedInstanceConfigArgs', 'ElastigroupShieldedInstanceConfigArgsDict']]] = None,
1737
- should_utilize_commitments: Optional[pulumi.Input[bool]] = None,
1738
- shutdown_script: Optional[pulumi.Input[str]] = None,
1739
- startup_script: Optional[pulumi.Input[str]] = None,
1746
+ should_utilize_commitments: Optional[pulumi.Input[_builtins.bool]] = None,
1747
+ shutdown_script: Optional[pulumi.Input[_builtins.str]] = None,
1748
+ startup_script: Optional[pulumi.Input[_builtins.str]] = None,
1740
1749
  subnets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupSubnetArgs', 'ElastigroupSubnetArgsDict']]]]] = None,
1741
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1742
- unhealthy_duration: Optional[pulumi.Input[int]] = None) -> 'Elastigroup':
1750
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1751
+ unhealthy_duration: Optional[pulumi.Input[_builtins.int]] = None) -> 'Elastigroup':
1743
1752
  """
1744
1753
  Get an existing Elastigroup resource's state with the given name, id, and optional extra
1745
1754
  properties used to qualify the lookup.
@@ -1747,36 +1756,36 @@ class Elastigroup(pulumi.CustomResource):
1747
1756
  :param str resource_name: The unique name of the resulting resource.
1748
1757
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1749
1758
  :param pulumi.ResourceOptions opts: Options for the resource.
1750
- :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: List of availability zones for the group.
1751
- :param pulumi.Input[str] description: The region your GCP group will be created in.
1752
- :param pulumi.Input[int] desired_capacity: The desired number of instances the group should have at any time.
1753
- :param pulumi.Input[int] draining_timeout: Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
1754
- :param pulumi.Input[bool] fallback_to_ondemand: Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
1755
- :param pulumi.Input[str] instance_name_prefix: Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:
1759
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] availability_zones: List of availability zones for the group.
1760
+ :param pulumi.Input[_builtins.str] description: The region your GCP group will be created in.
1761
+ :param pulumi.Input[_builtins.int] desired_capacity: The desired number of instances the group should have at any time.
1762
+ :param pulumi.Input[_builtins.int] draining_timeout: Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
1763
+ :param pulumi.Input[_builtins.bool] fallback_to_ondemand: Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
1764
+ :param pulumi.Input[_builtins.str] instance_name_prefix: Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:
1756
1765
  * A maximal length of 25 characters.
1757
1766
  * The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
1758
1767
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupInstanceTypesCustomArgs', 'ElastigroupInstanceTypesCustomArgsDict']]]] instance_types_customs: Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.
1759
1768
  * `vCPU` - (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
1760
- :param pulumi.Input[str] instance_types_ondemand: The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
1761
- :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types_preemptibles: The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
1769
+ :param pulumi.Input[_builtins.str] instance_types_ondemand: The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
1770
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] instance_types_preemptibles: The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
1762
1771
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupLabelArgs', 'ElastigroupLabelArgsDict']]]] labels: Array of objects with key-value pairs.
1763
- :param pulumi.Input[int] max_size: The maximum number of instances the group should have at any time.
1772
+ :param pulumi.Input[_builtins.int] max_size: The maximum number of instances the group should have at any time.
1764
1773
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupMetadataArgs', 'ElastigroupMetadataArgsDict']]]] metadatas: Array of objects with key-value pairs.
1765
- :param pulumi.Input[str] min_cpu_platform: Select a minimum CPU platform for the compute instance.
1766
- :param pulumi.Input[int] min_size: The minimum number of instances the group should have at any time.
1767
- :param pulumi.Input[str] name: The group name.
1768
- :param pulumi.Input[Sequence[pulumi.Input[str]]] optimization_windows: Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
1769
- :param pulumi.Input[int] preemptible_percentage: Percentage of Preemptible VMs to spin up from the "desired_capacity".
1770
- :param pulumi.Input[Sequence[pulumi.Input[str]]] preferred_availability_zones: prioritize availability zones when launching instances for the group. Must be a sublist of `availability_zones`.
1771
- :param pulumi.Input[str] provisioning_model: Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
1774
+ :param pulumi.Input[_builtins.str] min_cpu_platform: Select a minimum CPU platform for the compute instance.
1775
+ :param pulumi.Input[_builtins.int] min_size: The minimum number of instances the group should have at any time.
1776
+ :param pulumi.Input[_builtins.str] name: The group name.
1777
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] optimization_windows: Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
1778
+ :param pulumi.Input[_builtins.int] preemptible_percentage: Percentage of Preemptible VMs to spin up from the "desired_capacity".
1779
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] preferred_availability_zones: prioritize availability zones when launching instances for the group. Must be a sublist of `availability_zones`.
1780
+ :param pulumi.Input[_builtins.str] provisioning_model: Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
1772
1781
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupRevertToPreemptibleArgs', 'ElastigroupRevertToPreemptibleArgsDict']]]] revert_to_preemptibles: Setting for revert to preemptible option.
1773
- :param pulumi.Input[str] service_account: The email of the service account in which the group instances will be launched.
1782
+ :param pulumi.Input[_builtins.str] service_account: The email of the service account in which the group instances will be launched.
1774
1783
  :param pulumi.Input[Union['ElastigroupShieldedInstanceConfigArgs', 'ElastigroupShieldedInstanceConfigArgsDict']] shielded_instance_config: You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
1775
- :param pulumi.Input[bool] should_utilize_commitments: Enable committed use discounts utilization.
1776
- :param pulumi.Input[str] shutdown_script: The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: [Shutdown Script](https://api.spotinst.com/integration-docs/elastigroup/concepts/compute-concepts/shutdown-scripts/)
1777
- :param pulumi.Input[str] startup_script: Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
1784
+ :param pulumi.Input[_builtins.bool] should_utilize_commitments: Enable committed use discounts utilization.
1785
+ :param pulumi.Input[_builtins.str] shutdown_script: The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: [Shutdown Script](https://api.spotinst.com/integration-docs/elastigroup/concepts/compute-concepts/shutdown-scripts/)
1786
+ :param pulumi.Input[_builtins.str] startup_script: Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
1778
1787
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupSubnetArgs', 'ElastigroupSubnetArgsDict']]]] subnets: A list of regions and subnets.
1779
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to mark created instances.
1788
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: Tags to mark created instances.
1780
1789
  """
1781
1790
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1782
1791
 
@@ -1826,80 +1835,80 @@ class Elastigroup(pulumi.CustomResource):
1826
1835
  __props__.__dict__["unhealthy_duration"] = unhealthy_duration
1827
1836
  return Elastigroup(resource_name, opts=opts, __props__=__props__)
1828
1837
 
1829
- @property
1838
+ @_builtins.property
1830
1839
  @pulumi.getter(name="autoHealing")
1831
- def auto_healing(self) -> pulumi.Output[Optional[bool]]:
1840
+ def auto_healing(self) -> pulumi.Output[Optional[_builtins.bool]]:
1832
1841
  return pulumi.get(self, "auto_healing")
1833
1842
 
1834
- @property
1843
+ @_builtins.property
1835
1844
  @pulumi.getter(name="availabilityZones")
1836
1845
  @_utilities.deprecated("""This field will soon be handled by Region in Subnets""")
1837
- def availability_zones(self) -> pulumi.Output[Optional[Sequence[str]]]:
1846
+ def availability_zones(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1838
1847
  """
1839
1848
  List of availability zones for the group.
1840
1849
  """
1841
1850
  return pulumi.get(self, "availability_zones")
1842
1851
 
1843
- @property
1852
+ @_builtins.property
1844
1853
  @pulumi.getter(name="backendServices")
1845
1854
  def backend_services(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupBackendService']]]:
1846
1855
  return pulumi.get(self, "backend_services")
1847
1856
 
1848
- @property
1857
+ @_builtins.property
1849
1858
  @pulumi.getter
1850
- def description(self) -> pulumi.Output[Optional[str]]:
1859
+ def description(self) -> pulumi.Output[Optional[_builtins.str]]:
1851
1860
  """
1852
1861
  The region your GCP group will be created in.
1853
1862
  """
1854
1863
  return pulumi.get(self, "description")
1855
1864
 
1856
- @property
1865
+ @_builtins.property
1857
1866
  @pulumi.getter(name="desiredCapacity")
1858
- def desired_capacity(self) -> pulumi.Output[int]:
1867
+ def desired_capacity(self) -> pulumi.Output[_builtins.int]:
1859
1868
  """
1860
1869
  The desired number of instances the group should have at any time.
1861
1870
  """
1862
1871
  return pulumi.get(self, "desired_capacity")
1863
1872
 
1864
- @property
1873
+ @_builtins.property
1865
1874
  @pulumi.getter
1866
1875
  def disks(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupDisk']]]:
1867
1876
  return pulumi.get(self, "disks")
1868
1877
 
1869
- @property
1878
+ @_builtins.property
1870
1879
  @pulumi.getter(name="drainingTimeout")
1871
- def draining_timeout(self) -> pulumi.Output[Optional[int]]:
1880
+ def draining_timeout(self) -> pulumi.Output[Optional[_builtins.int]]:
1872
1881
  """
1873
1882
  Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
1874
1883
  """
1875
1884
  return pulumi.get(self, "draining_timeout")
1876
1885
 
1877
- @property
1886
+ @_builtins.property
1878
1887
  @pulumi.getter(name="fallbackToOndemand")
1879
- def fallback_to_ondemand(self) -> pulumi.Output[Optional[bool]]:
1888
+ def fallback_to_ondemand(self) -> pulumi.Output[Optional[_builtins.bool]]:
1880
1889
  """
1881
1890
  Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
1882
1891
  """
1883
1892
  return pulumi.get(self, "fallback_to_ondemand")
1884
1893
 
1885
- @property
1894
+ @_builtins.property
1886
1895
  @pulumi.getter
1887
1896
  def gpu(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupGpu']]]:
1888
1897
  return pulumi.get(self, "gpu")
1889
1898
 
1890
- @property
1899
+ @_builtins.property
1891
1900
  @pulumi.getter(name="healthCheckGracePeriod")
1892
- def health_check_grace_period(self) -> pulumi.Output[Optional[int]]:
1901
+ def health_check_grace_period(self) -> pulumi.Output[Optional[_builtins.int]]:
1893
1902
  return pulumi.get(self, "health_check_grace_period")
1894
1903
 
1895
- @property
1904
+ @_builtins.property
1896
1905
  @pulumi.getter(name="healthCheckType")
1897
- def health_check_type(self) -> pulumi.Output[Optional[str]]:
1906
+ def health_check_type(self) -> pulumi.Output[Optional[_builtins.str]]:
1898
1907
  return pulumi.get(self, "health_check_type")
1899
1908
 
1900
- @property
1909
+ @_builtins.property
1901
1910
  @pulumi.getter(name="instanceNamePrefix")
1902
- def instance_name_prefix(self) -> pulumi.Output[Optional[str]]:
1911
+ def instance_name_prefix(self) -> pulumi.Output[Optional[_builtins.str]]:
1903
1912
  """
1904
1913
  Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:
1905
1914
  * A maximal length of 25 characters.
@@ -1907,7 +1916,7 @@ class Elastigroup(pulumi.CustomResource):
1907
1916
  """
1908
1917
  return pulumi.get(self, "instance_name_prefix")
1909
1918
 
1910
- @property
1919
+ @_builtins.property
1911
1920
  @pulumi.getter(name="instanceTypesCustoms")
1912
1921
  def instance_types_customs(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupInstanceTypesCustom']]]:
1913
1922
  """
@@ -1916,38 +1925,38 @@ class Elastigroup(pulumi.CustomResource):
1916
1925
  """
1917
1926
  return pulumi.get(self, "instance_types_customs")
1918
1927
 
1919
- @property
1928
+ @_builtins.property
1920
1929
  @pulumi.getter(name="instanceTypesOndemand")
1921
- def instance_types_ondemand(self) -> pulumi.Output[Optional[str]]:
1930
+ def instance_types_ondemand(self) -> pulumi.Output[Optional[_builtins.str]]:
1922
1931
  """
1923
1932
  The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
1924
1933
  """
1925
1934
  return pulumi.get(self, "instance_types_ondemand")
1926
1935
 
1927
- @property
1936
+ @_builtins.property
1928
1937
  @pulumi.getter(name="instanceTypesPreemptibles")
1929
- def instance_types_preemptibles(self) -> pulumi.Output[Optional[Sequence[str]]]:
1938
+ def instance_types_preemptibles(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1930
1939
  """
1931
1940
  The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
1932
1941
  """
1933
1942
  return pulumi.get(self, "instance_types_preemptibles")
1934
1943
 
1935
- @property
1944
+ @_builtins.property
1936
1945
  @pulumi.getter(name="integrationDockerSwarm")
1937
1946
  def integration_docker_swarm(self) -> pulumi.Output[Optional['outputs.ElastigroupIntegrationDockerSwarm']]:
1938
1947
  return pulumi.get(self, "integration_docker_swarm")
1939
1948
 
1940
- @property
1949
+ @_builtins.property
1941
1950
  @pulumi.getter(name="integrationGke")
1942
1951
  def integration_gke(self) -> pulumi.Output[Optional['outputs.ElastigroupIntegrationGke']]:
1943
1952
  return pulumi.get(self, "integration_gke")
1944
1953
 
1945
- @property
1954
+ @_builtins.property
1946
1955
  @pulumi.getter(name="ipForwarding")
1947
- def ip_forwarding(self) -> pulumi.Output[Optional[bool]]:
1956
+ def ip_forwarding(self) -> pulumi.Output[Optional[_builtins.bool]]:
1948
1957
  return pulumi.get(self, "ip_forwarding")
1949
1958
 
1950
- @property
1959
+ @_builtins.property
1951
1960
  @pulumi.getter
1952
1961
  def labels(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupLabel']]]:
1953
1962
  """
@@ -1955,15 +1964,15 @@ class Elastigroup(pulumi.CustomResource):
1955
1964
  """
1956
1965
  return pulumi.get(self, "labels")
1957
1966
 
1958
- @property
1967
+ @_builtins.property
1959
1968
  @pulumi.getter(name="maxSize")
1960
- def max_size(self) -> pulumi.Output[int]:
1969
+ def max_size(self) -> pulumi.Output[_builtins.int]:
1961
1970
  """
1962
1971
  The maximum number of instances the group should have at any time.
1963
1972
  """
1964
1973
  return pulumi.get(self, "max_size")
1965
1974
 
1966
- @property
1975
+ @_builtins.property
1967
1976
  @pulumi.getter
1968
1977
  def metadatas(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupMetadata']]]:
1969
1978
  """
@@ -1971,73 +1980,73 @@ class Elastigroup(pulumi.CustomResource):
1971
1980
  """
1972
1981
  return pulumi.get(self, "metadatas")
1973
1982
 
1974
- @property
1983
+ @_builtins.property
1975
1984
  @pulumi.getter(name="minCpuPlatform")
1976
- def min_cpu_platform(self) -> pulumi.Output[Optional[str]]:
1985
+ def min_cpu_platform(self) -> pulumi.Output[Optional[_builtins.str]]:
1977
1986
  """
1978
1987
  Select a minimum CPU platform for the compute instance.
1979
1988
  """
1980
1989
  return pulumi.get(self, "min_cpu_platform")
1981
1990
 
1982
- @property
1991
+ @_builtins.property
1983
1992
  @pulumi.getter(name="minSize")
1984
- def min_size(self) -> pulumi.Output[int]:
1993
+ def min_size(self) -> pulumi.Output[_builtins.int]:
1985
1994
  """
1986
1995
  The minimum number of instances the group should have at any time.
1987
1996
  """
1988
1997
  return pulumi.get(self, "min_size")
1989
1998
 
1990
- @property
1999
+ @_builtins.property
1991
2000
  @pulumi.getter
1992
- def name(self) -> pulumi.Output[str]:
2001
+ def name(self) -> pulumi.Output[_builtins.str]:
1993
2002
  """
1994
2003
  The group name.
1995
2004
  """
1996
2005
  return pulumi.get(self, "name")
1997
2006
 
1998
- @property
2007
+ @_builtins.property
1999
2008
  @pulumi.getter(name="networkInterfaces")
2000
2009
  def network_interfaces(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupNetworkInterface']]]:
2001
2010
  return pulumi.get(self, "network_interfaces")
2002
2011
 
2003
- @property
2012
+ @_builtins.property
2004
2013
  @pulumi.getter(name="ondemandCount")
2005
- def ondemand_count(self) -> pulumi.Output[Optional[int]]:
2014
+ def ondemand_count(self) -> pulumi.Output[Optional[_builtins.int]]:
2006
2015
  return pulumi.get(self, "ondemand_count")
2007
2016
 
2008
- @property
2017
+ @_builtins.property
2009
2018
  @pulumi.getter(name="optimizationWindows")
2010
- def optimization_windows(self) -> pulumi.Output[Optional[Sequence[str]]]:
2019
+ def optimization_windows(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
2011
2020
  """
2012
2021
  Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
2013
2022
  """
2014
2023
  return pulumi.get(self, "optimization_windows")
2015
2024
 
2016
- @property
2025
+ @_builtins.property
2017
2026
  @pulumi.getter(name="preemptiblePercentage")
2018
- def preemptible_percentage(self) -> pulumi.Output[Optional[int]]:
2027
+ def preemptible_percentage(self) -> pulumi.Output[Optional[_builtins.int]]:
2019
2028
  """
2020
2029
  Percentage of Preemptible VMs to spin up from the "desired_capacity".
2021
2030
  """
2022
2031
  return pulumi.get(self, "preemptible_percentage")
2023
2032
 
2024
- @property
2033
+ @_builtins.property
2025
2034
  @pulumi.getter(name="preferredAvailabilityZones")
2026
- def preferred_availability_zones(self) -> pulumi.Output[Optional[Sequence[str]]]:
2035
+ def preferred_availability_zones(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
2027
2036
  """
2028
2037
  prioritize availability zones when launching instances for the group. Must be a sublist of `availability_zones`.
2029
2038
  """
2030
2039
  return pulumi.get(self, "preferred_availability_zones")
2031
2040
 
2032
- @property
2041
+ @_builtins.property
2033
2042
  @pulumi.getter(name="provisioningModel")
2034
- def provisioning_model(self) -> pulumi.Output[Optional[str]]:
2043
+ def provisioning_model(self) -> pulumi.Output[Optional[_builtins.str]]:
2035
2044
  """
2036
2045
  Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
2037
2046
  """
2038
2047
  return pulumi.get(self, "provisioning_model")
2039
2048
 
2040
- @property
2049
+ @_builtins.property
2041
2050
  @pulumi.getter(name="revertToPreemptibles")
2042
2051
  def revert_to_preemptibles(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupRevertToPreemptible']]]:
2043
2052
  """
@@ -2045,30 +2054,30 @@ class Elastigroup(pulumi.CustomResource):
2045
2054
  """
2046
2055
  return pulumi.get(self, "revert_to_preemptibles")
2047
2056
 
2048
- @property
2057
+ @_builtins.property
2049
2058
  @pulumi.getter(name="scalingDownPolicies")
2050
2059
  def scaling_down_policies(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupScalingDownPolicy']]]:
2051
2060
  return pulumi.get(self, "scaling_down_policies")
2052
2061
 
2053
- @property
2062
+ @_builtins.property
2054
2063
  @pulumi.getter(name="scalingUpPolicies")
2055
2064
  def scaling_up_policies(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupScalingUpPolicy']]]:
2056
2065
  return pulumi.get(self, "scaling_up_policies")
2057
2066
 
2058
- @property
2067
+ @_builtins.property
2059
2068
  @pulumi.getter(name="scheduledTasks")
2060
2069
  def scheduled_tasks(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupScheduledTask']]]:
2061
2070
  return pulumi.get(self, "scheduled_tasks")
2062
2071
 
2063
- @property
2072
+ @_builtins.property
2064
2073
  @pulumi.getter(name="serviceAccount")
2065
- def service_account(self) -> pulumi.Output[Optional[str]]:
2074
+ def service_account(self) -> pulumi.Output[Optional[_builtins.str]]:
2066
2075
  """
2067
2076
  The email of the service account in which the group instances will be launched.
2068
2077
  """
2069
2078
  return pulumi.get(self, "service_account")
2070
2079
 
2071
- @property
2080
+ @_builtins.property
2072
2081
  @pulumi.getter(name="shieldedInstanceConfig")
2073
2082
  def shielded_instance_config(self) -> pulumi.Output[Optional['outputs.ElastigroupShieldedInstanceConfig']]:
2074
2083
  """
@@ -2076,31 +2085,31 @@ class Elastigroup(pulumi.CustomResource):
2076
2085
  """
2077
2086
  return pulumi.get(self, "shielded_instance_config")
2078
2087
 
2079
- @property
2088
+ @_builtins.property
2080
2089
  @pulumi.getter(name="shouldUtilizeCommitments")
2081
- def should_utilize_commitments(self) -> pulumi.Output[Optional[bool]]:
2090
+ def should_utilize_commitments(self) -> pulumi.Output[Optional[_builtins.bool]]:
2082
2091
  """
2083
2092
  Enable committed use discounts utilization.
2084
2093
  """
2085
2094
  return pulumi.get(self, "should_utilize_commitments")
2086
2095
 
2087
- @property
2096
+ @_builtins.property
2088
2097
  @pulumi.getter(name="shutdownScript")
2089
- def shutdown_script(self) -> pulumi.Output[Optional[str]]:
2098
+ def shutdown_script(self) -> pulumi.Output[Optional[_builtins.str]]:
2090
2099
  """
2091
2100
  The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: [Shutdown Script](https://api.spotinst.com/integration-docs/elastigroup/concepts/compute-concepts/shutdown-scripts/)
2092
2101
  """
2093
2102
  return pulumi.get(self, "shutdown_script")
2094
2103
 
2095
- @property
2104
+ @_builtins.property
2096
2105
  @pulumi.getter(name="startupScript")
2097
- def startup_script(self) -> pulumi.Output[Optional[str]]:
2106
+ def startup_script(self) -> pulumi.Output[Optional[_builtins.str]]:
2098
2107
  """
2099
2108
  Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
2100
2109
  """
2101
2110
  return pulumi.get(self, "startup_script")
2102
2111
 
2103
- @property
2112
+ @_builtins.property
2104
2113
  @pulumi.getter
2105
2114
  def subnets(self) -> pulumi.Output[Optional[Sequence['outputs.ElastigroupSubnet']]]:
2106
2115
  """
@@ -2108,16 +2117,16 @@ class Elastigroup(pulumi.CustomResource):
2108
2117
  """
2109
2118
  return pulumi.get(self, "subnets")
2110
2119
 
2111
- @property
2120
+ @_builtins.property
2112
2121
  @pulumi.getter
2113
- def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
2122
+ def tags(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
2114
2123
  """
2115
2124
  Tags to mark created instances.
2116
2125
  """
2117
2126
  return pulumi.get(self, "tags")
2118
2127
 
2119
- @property
2128
+ @_builtins.property
2120
2129
  @pulumi.getter(name="unhealthyDuration")
2121
- def unhealthy_duration(self) -> pulumi.Output[Optional[int]]:
2130
+ def unhealthy_duration(self) -> pulumi.Output[Optional[_builtins.int]]:
2122
2131
  return pulumi.get(self, "unhealthy_duration")
2123
2132