pulumi-spotinst 3.116.0a1743057343__py3-none-any.whl → 3.116.1a1744342106__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 (75) hide show
  1. pulumi_spotinst/__init__.py +1 -0
  2. pulumi_spotinst/_inputs.py +1181 -1180
  3. pulumi_spotinst/account.py +15 -14
  4. pulumi_spotinst/aws/__init__.py +1 -0
  5. pulumi_spotinst/aws/_inputs.py +2919 -2918
  6. pulumi_spotinst/aws/account.py +15 -14
  7. pulumi_spotinst/aws/beanstalk.py +137 -136
  8. pulumi_spotinst/aws/credentials.py +29 -28
  9. pulumi_spotinst/aws/elastigroup.py +681 -693
  10. pulumi_spotinst/aws/managed_instance.py +361 -360
  11. pulumi_spotinst/aws/mr_scalar.py +470 -469
  12. pulumi_spotinst/aws/ocean.py +399 -398
  13. pulumi_spotinst/aws/ocean_extended_resource_definition.py +29 -28
  14. pulumi_spotinst/aws/ocean_launch_spec.py +197 -196
  15. pulumi_spotinst/aws/outputs.py +1673 -1672
  16. pulumi_spotinst/aws/suspension.py +15 -14
  17. pulumi_spotinst/azure/__init__.py +1 -0
  18. pulumi_spotinst/azure/_inputs.py +489 -488
  19. pulumi_spotinst/azure/ocean_np.py +289 -288
  20. pulumi_spotinst/azure/ocean_np_virtual_node_group.py +249 -248
  21. pulumi_spotinst/azure/outputs.py +293 -292
  22. pulumi_spotinst/config/__init__.py +1 -0
  23. pulumi_spotinst/config/__init__.pyi +1 -0
  24. pulumi_spotinst/config/vars.py +1 -0
  25. pulumi_spotinst/credentials_azure.py +71 -70
  26. pulumi_spotinst/credentials_gcp.py +155 -154
  27. pulumi_spotinst/data_integration.py +29 -28
  28. pulumi_spotinst/ecs/__init__.py +1 -0
  29. pulumi_spotinst/ecs/_inputs.py +475 -474
  30. pulumi_spotinst/ecs/ocean.py +315 -314
  31. pulumi_spotinst/ecs/ocean_launch_spec.py +141 -140
  32. pulumi_spotinst/ecs/outputs.py +285 -284
  33. pulumi_spotinst/elastigroup_azure_v3.py +201 -200
  34. pulumi_spotinst/gcp/__init__.py +1 -0
  35. pulumi_spotinst/gcp/_inputs.py +400 -399
  36. pulumi_spotinst/gcp/elastigroup.py +355 -354
  37. pulumi_spotinst/gcp/outputs.py +234 -233
  38. pulumi_spotinst/gke/__init__.py +1 -0
  39. pulumi_spotinst/gke/_inputs.py +756 -715
  40. pulumi_spotinst/gke/elastigroup.py +231 -230
  41. pulumi_spotinst/gke/ocean_import.py +146 -145
  42. pulumi_spotinst/gke/ocean_launch_spec.py +143 -140
  43. pulumi_spotinst/gke/ocean_launch_spec_import.py +29 -28
  44. pulumi_spotinst/gke/outputs.py +432 -403
  45. pulumi_spotinst/health_check.py +89 -48
  46. pulumi_spotinst/ocean_right_sizing_rule.py +41 -40
  47. pulumi_spotinst/oceancd/__init__.py +1 -0
  48. pulumi_spotinst/oceancd/_inputs.py +594 -593
  49. pulumi_spotinst/oceancd/outputs.py +356 -355
  50. pulumi_spotinst/oceancd/rollout_spec.py +15 -14
  51. pulumi_spotinst/oceancd/strategy.py +11 -10
  52. pulumi_spotinst/oceancd/verification_provider.py +29 -28
  53. pulumi_spotinst/oceancd/verification_template.py +15 -14
  54. pulumi_spotinst/organization/__init__.py +1 -0
  55. pulumi_spotinst/organization/_inputs.py +55 -54
  56. pulumi_spotinst/organization/outputs.py +33 -32
  57. pulumi_spotinst/organization/policy.py +29 -28
  58. pulumi_spotinst/organization/programmatic_user.py +43 -42
  59. pulumi_spotinst/organization/user.py +85 -84
  60. pulumi_spotinst/organization/user_group.py +43 -42
  61. pulumi_spotinst/outputs.py +595 -594
  62. pulumi_spotinst/provider.py +32 -31
  63. pulumi_spotinst/pulumi-plugin.json +1 -1
  64. pulumi_spotinst/spark/__init__.py +1 -0
  65. pulumi_spotinst/spark/_inputs.py +81 -80
  66. pulumi_spotinst/spark/ocean.py +15 -14
  67. pulumi_spotinst/spark/ocean_virtual_node_group.py +21 -20
  68. pulumi_spotinst/spark/outputs.py +49 -48
  69. pulumi_spotinst/stateful_node_azure.py +191 -190
  70. pulumi_spotinst/subscription.py +71 -70
  71. {pulumi_spotinst-3.116.0a1743057343.dist-info → pulumi_spotinst-3.116.1a1744342106.dist-info}/METADATA +1 -1
  72. pulumi_spotinst-3.116.1a1744342106.dist-info/RECORD +76 -0
  73. pulumi_spotinst-3.116.0a1743057343.dist-info/RECORD +0 -76
  74. {pulumi_spotinst-3.116.0a1743057343.dist-info → pulumi_spotinst-3.116.1a1744342106.dist-info}/WHEEL +0 -0
  75. {pulumi_spotinst-3.116.0a1743057343.dist-info → pulumi_spotinst-3.116.1a1744342106.dist-info}/top_level.txt +0 -0
@@ -2,6 +2,7 @@
2
2
  # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
+ import builtins
5
6
  import copy
6
7
  import warnings
7
8
  import sys
@@ -21,36 +22,36 @@ __all__ = ['ElastigroupArgs', 'Elastigroup']
21
22
  @pulumi.input_type
22
23
  class ElastigroupArgs:
23
24
  def __init__(__self__, *,
24
- fallback_to_ondemand: pulumi.Input[bool],
25
- orientation: pulumi.Input[str],
26
- product: pulumi.Input[str],
27
- security_groups: pulumi.Input[Sequence[pulumi.Input[str]]],
28
- auto_healing: Optional[pulumi.Input[bool]] = None,
29
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
30
- block_devices_mode: Optional[pulumi.Input[str]] = None,
31
- capacity_unit: Optional[pulumi.Input[str]] = None,
32
- consider_od_pricing: Optional[pulumi.Input[bool]] = None,
33
- cpu_credits: Optional[pulumi.Input[str]] = None,
25
+ fallback_to_ondemand: pulumi.Input[builtins.bool],
26
+ orientation: pulumi.Input[builtins.str],
27
+ product: pulumi.Input[builtins.str],
28
+ security_groups: pulumi.Input[Sequence[pulumi.Input[builtins.str]]],
29
+ auto_healing: Optional[pulumi.Input[builtins.bool]] = None,
30
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
31
+ block_devices_mode: Optional[pulumi.Input[builtins.str]] = None,
32
+ capacity_unit: Optional[pulumi.Input[builtins.str]] = None,
33
+ consider_od_pricing: Optional[pulumi.Input[builtins.bool]] = None,
34
+ cpu_credits: Optional[pulumi.Input[builtins.str]] = None,
34
35
  cpu_options: Optional[pulumi.Input['ElastigroupCpuOptionsArgs']] = None,
35
- description: Optional[pulumi.Input[str]] = None,
36
- desired_capacity: Optional[pulumi.Input[int]] = None,
37
- draining_timeout: Optional[pulumi.Input[int]] = None,
36
+ description: Optional[pulumi.Input[builtins.str]] = None,
37
+ desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
38
+ draining_timeout: Optional[pulumi.Input[builtins.int]] = None,
38
39
  ebs_block_devices: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupEbsBlockDeviceArgs']]]] = None,
39
- ebs_optimized: Optional[pulumi.Input[bool]] = None,
40
- elastic_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
41
- elastic_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
42
- enable_monitoring: Optional[pulumi.Input[bool]] = None,
40
+ ebs_optimized: Optional[pulumi.Input[builtins.bool]] = None,
41
+ elastic_ips: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
42
+ elastic_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
43
+ enable_monitoring: Optional[pulumi.Input[builtins.bool]] = None,
43
44
  ephemeral_block_devices: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupEphemeralBlockDeviceArgs']]]] = None,
44
- health_check_grace_period: Optional[pulumi.Input[int]] = None,
45
- health_check_type: Optional[pulumi.Input[str]] = None,
46
- health_check_unhealthy_duration_before_replacement: Optional[pulumi.Input[int]] = None,
47
- iam_instance_profile: Optional[pulumi.Input[str]] = None,
48
- image_id: Optional[pulumi.Input[str]] = None,
45
+ health_check_grace_period: Optional[pulumi.Input[builtins.int]] = None,
46
+ health_check_type: Optional[pulumi.Input[builtins.str]] = None,
47
+ health_check_unhealthy_duration_before_replacement: Optional[pulumi.Input[builtins.int]] = None,
48
+ iam_instance_profile: Optional[pulumi.Input[builtins.str]] = None,
49
+ image_id: Optional[pulumi.Input[builtins.str]] = None,
49
50
  images: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupImageArgs']]]] = None,
50
- immediate_od_recover_threshold: Optional[pulumi.Input[int]] = None,
51
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
52
- instance_types_preferred_spots: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
53
- instance_types_spots: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
51
+ immediate_od_recover_threshold: Optional[pulumi.Input[builtins.int]] = None,
52
+ instance_types_ondemand: Optional[pulumi.Input[builtins.str]] = None,
53
+ instance_types_preferred_spots: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
54
+ instance_types_spots: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
54
55
  instance_types_weights: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesWeightArgs']]]] = None,
55
56
  integration_beanstalk: Optional[pulumi.Input['ElastigroupIntegrationBeanstalkArgs']] = None,
56
57
  integration_codedeploy: Optional[pulumi.Input['ElastigroupIntegrationCodedeployArgs']] = None,
@@ -63,109 +64,108 @@ class ElastigroupArgs:
63
64
  integration_rancher: Optional[pulumi.Input['ElastigroupIntegrationRancherArgs']] = None,
64
65
  integration_route53: Optional[pulumi.Input['ElastigroupIntegrationRoute53Args']] = None,
65
66
  itfs: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupItfArgs']]]] = None,
66
- key_name: Optional[pulumi.Input[str]] = None,
67
- lifetime_period: Optional[pulumi.Input[str]] = None,
67
+ key_name: Optional[pulumi.Input[builtins.str]] = None,
68
+ lifetime_period: Optional[pulumi.Input[builtins.str]] = None,
68
69
  logging: Optional[pulumi.Input['ElastigroupLoggingArgs']] = None,
69
- max_replacements_percentage: Optional[pulumi.Input[int]] = None,
70
- max_size: Optional[pulumi.Input[int]] = None,
70
+ max_replacements_percentage: Optional[pulumi.Input[builtins.int]] = None,
71
+ max_size: Optional[pulumi.Input[builtins.int]] = None,
71
72
  metadata_options: Optional[pulumi.Input['ElastigroupMetadataOptionsArgs']] = None,
72
- min_size: Optional[pulumi.Input[int]] = None,
73
- minimum_instance_lifetime: Optional[pulumi.Input[int]] = None,
73
+ min_size: Optional[pulumi.Input[builtins.int]] = None,
74
+ minimum_instance_lifetime: Optional[pulumi.Input[builtins.int]] = None,
74
75
  multiple_metrics: Optional[pulumi.Input['ElastigroupMultipleMetricsArgs']] = None,
75
- name: Optional[pulumi.Input[str]] = None,
76
+ name: Optional[pulumi.Input[builtins.str]] = None,
76
77
  network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]] = None,
77
- on_demand_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
78
- ondemand_count: Optional[pulumi.Input[int]] = None,
79
- persist_block_devices: Optional[pulumi.Input[bool]] = None,
80
- persist_private_ip: Optional[pulumi.Input[bool]] = None,
81
- persist_root_device: Optional[pulumi.Input[bool]] = None,
82
- placement_tenancy: Optional[pulumi.Input[str]] = None,
83
- preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
84
- private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
85
- region: Optional[pulumi.Input[str]] = None,
78
+ on_demand_types: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
79
+ ondemand_count: Optional[pulumi.Input[builtins.int]] = None,
80
+ persist_block_devices: Optional[pulumi.Input[builtins.bool]] = None,
81
+ persist_private_ip: Optional[pulumi.Input[builtins.bool]] = None,
82
+ persist_root_device: Optional[pulumi.Input[builtins.bool]] = None,
83
+ placement_tenancy: Optional[pulumi.Input[builtins.str]] = None,
84
+ preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
85
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
86
+ region: Optional[pulumi.Input[builtins.str]] = None,
86
87
  resource_requirements: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupResourceRequirementArgs']]]] = None,
87
88
  resource_tag_specifications: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupResourceTagSpecificationArgs']]]] = None,
88
- restrict_single_az: Optional[pulumi.Input[bool]] = None,
89
+ restrict_single_az: Optional[pulumi.Input[builtins.bool]] = None,
89
90
  revert_to_spot: Optional[pulumi.Input['ElastigroupRevertToSpotArgs']] = None,
90
91
  scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]] = None,
91
92
  scaling_strategies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingStrategyArgs']]]] = None,
92
93
  scaling_target_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingTargetPolicyArgs']]]] = None,
93
94
  scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]] = None,
94
95
  scheduled_tasks: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScheduledTaskArgs']]]] = None,
95
- shutdown_script: Optional[pulumi.Input[str]] = None,
96
+ shutdown_script: Optional[pulumi.Input[builtins.str]] = None,
96
97
  signals: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupSignalArgs']]]] = None,
97
- spot_percentage: Optional[pulumi.Input[int]] = None,
98
+ spot_percentage: Optional[pulumi.Input[builtins.int]] = None,
98
99
  stateful_deallocation: Optional[pulumi.Input['ElastigroupStatefulDeallocationArgs']] = None,
99
100
  stateful_instance_actions: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupStatefulInstanceActionArgs']]]] = None,
100
- subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
101
+ subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
101
102
  tags: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupTagArgs']]]] = None,
102
- target_group_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
103
+ target_group_arns: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
103
104
  update_policy: Optional[pulumi.Input['ElastigroupUpdatePolicyArgs']] = None,
104
- user_data: Optional[pulumi.Input[str]] = None,
105
- utilize_commitments: Optional[pulumi.Input[bool]] = None,
106
- utilize_reserved_instances: Optional[pulumi.Input[bool]] = None,
107
- wait_for_capacity: Optional[pulumi.Input[int]] = None,
108
- wait_for_capacity_timeout: Optional[pulumi.Input[int]] = None):
105
+ user_data: Optional[pulumi.Input[builtins.str]] = None,
106
+ utilize_commitments: Optional[pulumi.Input[builtins.bool]] = None,
107
+ utilize_reserved_instances: Optional[pulumi.Input[builtins.bool]] = None,
108
+ wait_for_capacity: Optional[pulumi.Input[builtins.int]] = None,
109
+ wait_for_capacity_timeout: Optional[pulumi.Input[builtins.int]] = None):
109
110
  """
110
111
  The set of arguments for constructing a Elastigroup resource.
111
- :param pulumi.Input[bool] fallback_to_ondemand: In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
112
- :param pulumi.Input[str] orientation: Select a prediction strategy. Valid values: `balanced`, `costOriented`, `equalAzDistribution`, `availabilityOriented`. You can read more in our documentation.
113
- :param pulumi.Input[str] product: Operation system type. Valid values: `"Linux/UNIX"`, `"SUSE Linux"`, `"Windows"`.
112
+ :param pulumi.Input[builtins.bool] fallback_to_ondemand: In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
113
+ :param pulumi.Input[builtins.str] orientation: Select a prediction strategy. Valid values: `balanced`, `costOriented`, `equalAzDistribution`, `availabilityOriented`. You can read more in our documentation.
114
+ :param pulumi.Input[builtins.str] product: Operation system type. Valid values: `"Linux/UNIX"`, `"SUSE Linux"`, `"Windows"`.
114
115
  For EC2 Classic instances: `"SUSE Linux (Amazon VPC)"`, `"Windows (Amazon VPC)"`.
115
- :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: A list of associated security group IDS.
116
- :param pulumi.Input[bool] auto_healing: Auto-healing replacement won't be triggered if this parameter value is "false". In a case of a stateful group - no recycling will start if this parameter value is "false".
117
- :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: List of Strings of availability zones. When this parameter is set, `subnet_ids` should be left unused.
116
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] security_groups: A list of associated security group IDS.
117
+ :param pulumi.Input[builtins.bool] auto_healing: Auto-healing replacement won't be triggered if this parameter value is "false". In a case of a stateful group - no recycling will start if this parameter value is "false".
118
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] availability_zones: List of Strings of availability zones. When this parameter is set, `subnet_ids` should be left unused.
118
119
  Note: `availability_zones` naming syntax follows the convention `availability-zone:subnet:placement-group-name`. For example, to set an AZ in `us-east-1` with subnet `subnet-123456` and placement group `ClusterI03`, you would set:
119
120
  `availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]`
120
- :param pulumi.Input[str] capacity_unit: The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: `instance`, `weight`.
121
- :param pulumi.Input[str] cpu_credits: Controls how T3 instances are launched. Valid values: `standard`, `unlimited`.
121
+ :param pulumi.Input[builtins.str] capacity_unit: The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: `instance`, `weight`.
122
+ :param pulumi.Input[builtins.str] cpu_credits: Controls how T3 instances are launched. Valid values: `standard`, `unlimited`.
122
123
  :param pulumi.Input['ElastigroupCpuOptionsArgs'] cpu_options: The CPU options for the instances that are launched within the group:
123
- :param pulumi.Input[str] description: The group description.
124
- :param pulumi.Input[int] desired_capacity: The desired number of instances the group should have at any time.
125
- :param pulumi.Input[int] draining_timeout: The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
126
- :param pulumi.Input[bool] ebs_optimized: Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
127
- :param pulumi.Input[Sequence[pulumi.Input[str]]] elastic_ips: A list of [AWS Elastic IP](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) allocation IDs to associate to the group instances.
128
- :param pulumi.Input[bool] enable_monitoring: Indicates whether monitoring is enabled for the instance.
129
- :param pulumi.Input[int] health_check_grace_period: The amount of time, in seconds, after the instance has launched to starts and check its health.
130
- :param pulumi.Input[str] health_check_type: The service that will perform health checks for the instance. Valid values: `"ELB"`, `"HCS"`, `"TARGET_GROUP"`, `"EC2"`, `"K8S_NODE"`, `"NOMAD_NODE"`, `"ECS_CLUSTER_INSTANCE"`.
131
- :param pulumi.Input[int] health_check_unhealthy_duration_before_replacement: The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
132
- :param pulumi.Input[str] iam_instance_profile: The ARN or name of an IAM instance profile to associate with launched instances.
133
- :param pulumi.Input[str] image_id: The ID of the AMI used to launch the instance.
124
+ :param pulumi.Input[builtins.str] description: The group description.
125
+ :param pulumi.Input[builtins.int] desired_capacity: The desired number of instances the group should have at any time.
126
+ :param pulumi.Input[builtins.int] draining_timeout: The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
127
+ :param pulumi.Input[builtins.bool] ebs_optimized: Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
128
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] elastic_ips: A list of [AWS Elastic IP](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) allocation IDs to associate to the group instances.
129
+ :param pulumi.Input[builtins.bool] enable_monitoring: Indicates whether monitoring is enabled for the instance.
130
+ :param pulumi.Input[builtins.int] health_check_grace_period: The amount of time, in seconds, after the instance has launched to starts and check its health.
131
+ :param pulumi.Input[builtins.str] health_check_type: The service that will perform health checks for the instance. Valid values: `"ELB"`, `"HCS"`, `"TARGET_GROUP"`, `"EC2"`, `"K8S_NODE"`, `"NOMAD_NODE"`, `"ECS_CLUSTER_INSTANCE"`.
132
+ :param pulumi.Input[builtins.int] health_check_unhealthy_duration_before_replacement: The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
133
+ :param pulumi.Input[builtins.str] iam_instance_profile: The ARN or name of an IAM instance profile to associate with launched instances.
134
+ :param pulumi.Input[builtins.str] image_id: The ID of the AMI used to launch the instance.
134
135
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupImageArgs']]] images: An array of image objects.
135
136
  Note: Elastigroup can be configured with either imageId or images, but not both.
136
- :param pulumi.Input[str] instance_types_ondemand: The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
137
- :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types_preferred_spots: Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
138
- :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types_spots: One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
137
+ :param pulumi.Input[builtins.str] instance_types_ondemand: The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
138
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] instance_types_preferred_spots: Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
139
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] instance_types_spots: One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
139
140
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesWeightArgs']]] instance_types_weights: List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
140
- :param pulumi.Input[str] key_name: The key name that should be used for the instance.
141
+ :param pulumi.Input[builtins.str] key_name: The key name that should be used for the instance.
141
142
  :param pulumi.Input['ElastigroupLoggingArgs'] logging: Logging configuration.
142
- :param pulumi.Input[int] max_replacements_percentage: The percentage of active instances that can be replaced in parallel. This is used to prevent a large number of instances from being replaced at once.
143
- :param pulumi.Input[int] max_size: The maximum number of instances the group should have at any time.
143
+ :param pulumi.Input[builtins.int] max_size: The maximum number of instances the group should have at any time.
144
144
  :param pulumi.Input['ElastigroupMetadataOptionsArgs'] metadata_options: Data that used to configure or manage the running instances:
145
- :param pulumi.Input[int] min_size: The minimum number of instances the group should have at any time.
146
- :param pulumi.Input[int] minimum_instance_lifetime: Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
147
- :param pulumi.Input[str] name: The group name.
148
- :param pulumi.Input[Sequence[pulumi.Input[str]]] on_demand_types: Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
149
- :param pulumi.Input[int] ondemand_count: Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the `spot_percentage` parameter is being ignored.
150
- :param pulumi.Input[str] placement_tenancy: Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
151
- :param pulumi.Input[Sequence[pulumi.Input[str]]] preferred_availability_zones: The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs.
145
+ :param pulumi.Input[builtins.int] min_size: The minimum number of instances the group should have at any time.
146
+ :param pulumi.Input[builtins.int] minimum_instance_lifetime: Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
147
+ :param pulumi.Input[builtins.str] name: The group name.
148
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] on_demand_types: Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
149
+ :param pulumi.Input[builtins.int] ondemand_count: Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the `spot_percentage` parameter is being ignored.
150
+ :param pulumi.Input[builtins.str] placement_tenancy: Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
151
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] preferred_availability_zones: The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs.
152
152
  Note: Must be a sublist of `availability_zones` and `orientation` value must not be `"equalAzDistribution"`.
153
- :param pulumi.Input[str] region: The AWS region your group will be created in.
153
+ :param pulumi.Input[builtins.str] region: The AWS region your group will be created in.
154
154
  Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
155
155
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupResourceRequirementArgs']]] resource_requirements: Required instance attributes. Instance types will be selected based on these requirements.
156
156
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupResourceTagSpecificationArgs']]] resource_tag_specifications: User will specify which resources should be tagged with group tags.
157
- :param pulumi.Input[bool] restrict_single_az: Elastigroup will automatically scale your instances in the most available and cost efficient availability zone. Every evaluation will be done when there are no active instances in the group.
157
+ :param pulumi.Input[builtins.bool] restrict_single_az: Elastigroup will automatically scale your instances in the most available and cost efficient availability zone. Every evaluation will be done when there are no active instances in the group.
158
158
  :param pulumi.Input['ElastigroupRevertToSpotArgs'] revert_to_spot: Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: `"never"`, `"always"`, `"timeWindow"`
159
159
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingStrategyArgs']]] scaling_strategies: Set termination policy.
160
- :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/)
161
- :param pulumi.Input[int] spot_percentage: The percentage of Spot instances that would spin up from the `desired_capacity` number.
162
- :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: List of Strings of subnet identifiers.
160
+ :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/)
161
+ :param pulumi.Input[builtins.int] spot_percentage: The percentage of Spot instances that would spin up from the `desired_capacity` number.
162
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] subnet_ids: List of Strings of subnet identifiers.
163
163
  Note: When this parameter is set, `availability_zones` should be left unused.
164
164
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupTagArgs']]] tags: A key/value mapping of tags to assign to the resource.
165
- :param pulumi.Input[str] user_data: The user data to provide when launching the instance.
166
- :param pulumi.Input[bool] utilize_reserved_instances: In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
167
- :param pulumi.Input[int] wait_for_capacity: Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed `desired_capacity`.
168
- :param pulumi.Input[int] wait_for_capacity_timeout: Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to `0` to indicate no wait. This is ignored when updating with blue/green deployment.
165
+ :param pulumi.Input[builtins.str] user_data: The user data to provide when launching the instance.
166
+ :param pulumi.Input[builtins.bool] utilize_reserved_instances: In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
167
+ :param pulumi.Input[builtins.int] wait_for_capacity: Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed `desired_capacity`.
168
+ :param pulumi.Input[builtins.int] wait_for_capacity_timeout: Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to `0` to indicate no wait. This is ignored when updating with blue/green deployment.
169
169
  """
170
170
  pulumi.set(__self__, "fallback_to_ondemand", fallback_to_ondemand)
171
171
  pulumi.set(__self__, "orientation", orientation)
@@ -339,31 +339,31 @@ class ElastigroupArgs:
339
339
 
340
340
  @property
341
341
  @pulumi.getter(name="fallbackToOndemand")
342
- def fallback_to_ondemand(self) -> pulumi.Input[bool]:
342
+ def fallback_to_ondemand(self) -> pulumi.Input[builtins.bool]:
343
343
  """
344
344
  In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
345
345
  """
346
346
  return pulumi.get(self, "fallback_to_ondemand")
347
347
 
348
348
  @fallback_to_ondemand.setter
349
- def fallback_to_ondemand(self, value: pulumi.Input[bool]):
349
+ def fallback_to_ondemand(self, value: pulumi.Input[builtins.bool]):
350
350
  pulumi.set(self, "fallback_to_ondemand", value)
351
351
 
352
352
  @property
353
353
  @pulumi.getter
354
- def orientation(self) -> pulumi.Input[str]:
354
+ def orientation(self) -> pulumi.Input[builtins.str]:
355
355
  """
356
356
  Select a prediction strategy. Valid values: `balanced`, `costOriented`, `equalAzDistribution`, `availabilityOriented`. You can read more in our documentation.
357
357
  """
358
358
  return pulumi.get(self, "orientation")
359
359
 
360
360
  @orientation.setter
361
- def orientation(self, value: pulumi.Input[str]):
361
+ def orientation(self, value: pulumi.Input[builtins.str]):
362
362
  pulumi.set(self, "orientation", value)
363
363
 
364
364
  @property
365
365
  @pulumi.getter
366
- def product(self) -> pulumi.Input[str]:
366
+ def product(self) -> pulumi.Input[builtins.str]:
367
367
  """
368
368
  Operation system type. Valid values: `"Linux/UNIX"`, `"SUSE Linux"`, `"Windows"`.
369
369
  For EC2 Classic instances: `"SUSE Linux (Amazon VPC)"`, `"Windows (Amazon VPC)"`.
@@ -371,36 +371,36 @@ class ElastigroupArgs:
371
371
  return pulumi.get(self, "product")
372
372
 
373
373
  @product.setter
374
- def product(self, value: pulumi.Input[str]):
374
+ def product(self, value: pulumi.Input[builtins.str]):
375
375
  pulumi.set(self, "product", value)
376
376
 
377
377
  @property
378
378
  @pulumi.getter(name="securityGroups")
379
- def security_groups(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
379
+ def security_groups(self) -> pulumi.Input[Sequence[pulumi.Input[builtins.str]]]:
380
380
  """
381
381
  A list of associated security group IDS.
382
382
  """
383
383
  return pulumi.get(self, "security_groups")
384
384
 
385
385
  @security_groups.setter
386
- def security_groups(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
386
+ def security_groups(self, value: pulumi.Input[Sequence[pulumi.Input[builtins.str]]]):
387
387
  pulumi.set(self, "security_groups", value)
388
388
 
389
389
  @property
390
390
  @pulumi.getter(name="autoHealing")
391
- def auto_healing(self) -> Optional[pulumi.Input[bool]]:
391
+ def auto_healing(self) -> Optional[pulumi.Input[builtins.bool]]:
392
392
  """
393
393
  Auto-healing replacement won't be triggered if this parameter value is "false". In a case of a stateful group - no recycling will start if this parameter value is "false".
394
394
  """
395
395
  return pulumi.get(self, "auto_healing")
396
396
 
397
397
  @auto_healing.setter
398
- def auto_healing(self, value: Optional[pulumi.Input[bool]]):
398
+ def auto_healing(self, value: Optional[pulumi.Input[builtins.bool]]):
399
399
  pulumi.set(self, "auto_healing", value)
400
400
 
401
401
  @property
402
402
  @pulumi.getter(name="availabilityZones")
403
- def availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
403
+ def availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
404
404
  """
405
405
  List of Strings of availability zones. When this parameter is set, `subnet_ids` should be left unused.
406
406
  Note: `availability_zones` naming syntax follows the convention `availability-zone:subnet:placement-group-name`. For example, to set an AZ in `us-east-1` with subnet `subnet-123456` and placement group `ClusterI03`, you would set:
@@ -409,49 +409,49 @@ class ElastigroupArgs:
409
409
  return pulumi.get(self, "availability_zones")
410
410
 
411
411
  @availability_zones.setter
412
- def availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
412
+ def availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
413
413
  pulumi.set(self, "availability_zones", value)
414
414
 
415
415
  @property
416
416
  @pulumi.getter(name="blockDevicesMode")
417
- def block_devices_mode(self) -> Optional[pulumi.Input[str]]:
417
+ def block_devices_mode(self) -> Optional[pulumi.Input[builtins.str]]:
418
418
  return pulumi.get(self, "block_devices_mode")
419
419
 
420
420
  @block_devices_mode.setter
421
- def block_devices_mode(self, value: Optional[pulumi.Input[str]]):
421
+ def block_devices_mode(self, value: Optional[pulumi.Input[builtins.str]]):
422
422
  pulumi.set(self, "block_devices_mode", value)
423
423
 
424
424
  @property
425
425
  @pulumi.getter(name="capacityUnit")
426
- def capacity_unit(self) -> Optional[pulumi.Input[str]]:
426
+ def capacity_unit(self) -> Optional[pulumi.Input[builtins.str]]:
427
427
  """
428
428
  The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: `instance`, `weight`.
429
429
  """
430
430
  return pulumi.get(self, "capacity_unit")
431
431
 
432
432
  @capacity_unit.setter
433
- def capacity_unit(self, value: Optional[pulumi.Input[str]]):
433
+ def capacity_unit(self, value: Optional[pulumi.Input[builtins.str]]):
434
434
  pulumi.set(self, "capacity_unit", value)
435
435
 
436
436
  @property
437
437
  @pulumi.getter(name="considerOdPricing")
438
- def consider_od_pricing(self) -> Optional[pulumi.Input[bool]]:
438
+ def consider_od_pricing(self) -> Optional[pulumi.Input[builtins.bool]]:
439
439
  return pulumi.get(self, "consider_od_pricing")
440
440
 
441
441
  @consider_od_pricing.setter
442
- def consider_od_pricing(self, value: Optional[pulumi.Input[bool]]):
442
+ def consider_od_pricing(self, value: Optional[pulumi.Input[builtins.bool]]):
443
443
  pulumi.set(self, "consider_od_pricing", value)
444
444
 
445
445
  @property
446
446
  @pulumi.getter(name="cpuCredits")
447
- def cpu_credits(self) -> Optional[pulumi.Input[str]]:
447
+ def cpu_credits(self) -> Optional[pulumi.Input[builtins.str]]:
448
448
  """
449
449
  Controls how T3 instances are launched. Valid values: `standard`, `unlimited`.
450
450
  """
451
451
  return pulumi.get(self, "cpu_credits")
452
452
 
453
453
  @cpu_credits.setter
454
- def cpu_credits(self, value: Optional[pulumi.Input[str]]):
454
+ def cpu_credits(self, value: Optional[pulumi.Input[builtins.str]]):
455
455
  pulumi.set(self, "cpu_credits", value)
456
456
 
457
457
  @property
@@ -468,38 +468,38 @@ class ElastigroupArgs:
468
468
 
469
469
  @property
470
470
  @pulumi.getter
471
- def description(self) -> Optional[pulumi.Input[str]]:
471
+ def description(self) -> Optional[pulumi.Input[builtins.str]]:
472
472
  """
473
473
  The group description.
474
474
  """
475
475
  return pulumi.get(self, "description")
476
476
 
477
477
  @description.setter
478
- def description(self, value: Optional[pulumi.Input[str]]):
478
+ def description(self, value: Optional[pulumi.Input[builtins.str]]):
479
479
  pulumi.set(self, "description", value)
480
480
 
481
481
  @property
482
482
  @pulumi.getter(name="desiredCapacity")
483
- def desired_capacity(self) -> Optional[pulumi.Input[int]]:
483
+ def desired_capacity(self) -> Optional[pulumi.Input[builtins.int]]:
484
484
  """
485
485
  The desired number of instances the group should have at any time.
486
486
  """
487
487
  return pulumi.get(self, "desired_capacity")
488
488
 
489
489
  @desired_capacity.setter
490
- def desired_capacity(self, value: Optional[pulumi.Input[int]]):
490
+ def desired_capacity(self, value: Optional[pulumi.Input[builtins.int]]):
491
491
  pulumi.set(self, "desired_capacity", value)
492
492
 
493
493
  @property
494
494
  @pulumi.getter(name="drainingTimeout")
495
- def draining_timeout(self) -> Optional[pulumi.Input[int]]:
495
+ def draining_timeout(self) -> Optional[pulumi.Input[builtins.int]]:
496
496
  """
497
497
  The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
498
498
  """
499
499
  return pulumi.get(self, "draining_timeout")
500
500
 
501
501
  @draining_timeout.setter
502
- def draining_timeout(self, value: Optional[pulumi.Input[int]]):
502
+ def draining_timeout(self, value: Optional[pulumi.Input[builtins.int]]):
503
503
  pulumi.set(self, "draining_timeout", value)
504
504
 
505
505
  @property
@@ -513,47 +513,47 @@ class ElastigroupArgs:
513
513
 
514
514
  @property
515
515
  @pulumi.getter(name="ebsOptimized")
516
- def ebs_optimized(self) -> Optional[pulumi.Input[bool]]:
516
+ def ebs_optimized(self) -> Optional[pulumi.Input[builtins.bool]]:
517
517
  """
518
518
  Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
519
519
  """
520
520
  return pulumi.get(self, "ebs_optimized")
521
521
 
522
522
  @ebs_optimized.setter
523
- def ebs_optimized(self, value: Optional[pulumi.Input[bool]]):
523
+ def ebs_optimized(self, value: Optional[pulumi.Input[builtins.bool]]):
524
524
  pulumi.set(self, "ebs_optimized", value)
525
525
 
526
526
  @property
527
527
  @pulumi.getter(name="elasticIps")
528
- def elastic_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
528
+ def elastic_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
529
529
  """
530
530
  A list of [AWS Elastic IP](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) allocation IDs to associate to the group instances.
531
531
  """
532
532
  return pulumi.get(self, "elastic_ips")
533
533
 
534
534
  @elastic_ips.setter
535
- def elastic_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
535
+ def elastic_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
536
536
  pulumi.set(self, "elastic_ips", value)
537
537
 
538
538
  @property
539
539
  @pulumi.getter(name="elasticLoadBalancers")
540
- def elastic_load_balancers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
540
+ def elastic_load_balancers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
541
541
  return pulumi.get(self, "elastic_load_balancers")
542
542
 
543
543
  @elastic_load_balancers.setter
544
- def elastic_load_balancers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
544
+ def elastic_load_balancers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
545
545
  pulumi.set(self, "elastic_load_balancers", value)
546
546
 
547
547
  @property
548
548
  @pulumi.getter(name="enableMonitoring")
549
- def enable_monitoring(self) -> Optional[pulumi.Input[bool]]:
549
+ def enable_monitoring(self) -> Optional[pulumi.Input[builtins.bool]]:
550
550
  """
551
551
  Indicates whether monitoring is enabled for the instance.
552
552
  """
553
553
  return pulumi.get(self, "enable_monitoring")
554
554
 
555
555
  @enable_monitoring.setter
556
- def enable_monitoring(self, value: Optional[pulumi.Input[bool]]):
556
+ def enable_monitoring(self, value: Optional[pulumi.Input[builtins.bool]]):
557
557
  pulumi.set(self, "enable_monitoring", value)
558
558
 
559
559
  @property
@@ -567,62 +567,62 @@ class ElastigroupArgs:
567
567
 
568
568
  @property
569
569
  @pulumi.getter(name="healthCheckGracePeriod")
570
- def health_check_grace_period(self) -> Optional[pulumi.Input[int]]:
570
+ def health_check_grace_period(self) -> Optional[pulumi.Input[builtins.int]]:
571
571
  """
572
572
  The amount of time, in seconds, after the instance has launched to starts and check its health.
573
573
  """
574
574
  return pulumi.get(self, "health_check_grace_period")
575
575
 
576
576
  @health_check_grace_period.setter
577
- def health_check_grace_period(self, value: Optional[pulumi.Input[int]]):
577
+ def health_check_grace_period(self, value: Optional[pulumi.Input[builtins.int]]):
578
578
  pulumi.set(self, "health_check_grace_period", value)
579
579
 
580
580
  @property
581
581
  @pulumi.getter(name="healthCheckType")
582
- def health_check_type(self) -> Optional[pulumi.Input[str]]:
582
+ def health_check_type(self) -> Optional[pulumi.Input[builtins.str]]:
583
583
  """
584
584
  The service that will perform health checks for the instance. Valid values: `"ELB"`, `"HCS"`, `"TARGET_GROUP"`, `"EC2"`, `"K8S_NODE"`, `"NOMAD_NODE"`, `"ECS_CLUSTER_INSTANCE"`.
585
585
  """
586
586
  return pulumi.get(self, "health_check_type")
587
587
 
588
588
  @health_check_type.setter
589
- def health_check_type(self, value: Optional[pulumi.Input[str]]):
589
+ def health_check_type(self, value: Optional[pulumi.Input[builtins.str]]):
590
590
  pulumi.set(self, "health_check_type", value)
591
591
 
592
592
  @property
593
593
  @pulumi.getter(name="healthCheckUnhealthyDurationBeforeReplacement")
594
- def health_check_unhealthy_duration_before_replacement(self) -> Optional[pulumi.Input[int]]:
594
+ def health_check_unhealthy_duration_before_replacement(self) -> Optional[pulumi.Input[builtins.int]]:
595
595
  """
596
596
  The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
597
597
  """
598
598
  return pulumi.get(self, "health_check_unhealthy_duration_before_replacement")
599
599
 
600
600
  @health_check_unhealthy_duration_before_replacement.setter
601
- def health_check_unhealthy_duration_before_replacement(self, value: Optional[pulumi.Input[int]]):
601
+ def health_check_unhealthy_duration_before_replacement(self, value: Optional[pulumi.Input[builtins.int]]):
602
602
  pulumi.set(self, "health_check_unhealthy_duration_before_replacement", value)
603
603
 
604
604
  @property
605
605
  @pulumi.getter(name="iamInstanceProfile")
606
- def iam_instance_profile(self) -> Optional[pulumi.Input[str]]:
606
+ def iam_instance_profile(self) -> Optional[pulumi.Input[builtins.str]]:
607
607
  """
608
608
  The ARN or name of an IAM instance profile to associate with launched instances.
609
609
  """
610
610
  return pulumi.get(self, "iam_instance_profile")
611
611
 
612
612
  @iam_instance_profile.setter
613
- def iam_instance_profile(self, value: Optional[pulumi.Input[str]]):
613
+ def iam_instance_profile(self, value: Optional[pulumi.Input[builtins.str]]):
614
614
  pulumi.set(self, "iam_instance_profile", value)
615
615
 
616
616
  @property
617
617
  @pulumi.getter(name="imageId")
618
- def image_id(self) -> Optional[pulumi.Input[str]]:
618
+ def image_id(self) -> Optional[pulumi.Input[builtins.str]]:
619
619
  """
620
620
  The ID of the AMI used to launch the instance.
621
621
  """
622
622
  return pulumi.get(self, "image_id")
623
623
 
624
624
  @image_id.setter
625
- def image_id(self, value: Optional[pulumi.Input[str]]):
625
+ def image_id(self, value: Optional[pulumi.Input[builtins.str]]):
626
626
  pulumi.set(self, "image_id", value)
627
627
 
628
628
  @property
@@ -640,47 +640,47 @@ class ElastigroupArgs:
640
640
 
641
641
  @property
642
642
  @pulumi.getter(name="immediateOdRecoverThreshold")
643
- def immediate_od_recover_threshold(self) -> Optional[pulumi.Input[int]]:
643
+ def immediate_od_recover_threshold(self) -> Optional[pulumi.Input[builtins.int]]:
644
644
  return pulumi.get(self, "immediate_od_recover_threshold")
645
645
 
646
646
  @immediate_od_recover_threshold.setter
647
- def immediate_od_recover_threshold(self, value: Optional[pulumi.Input[int]]):
647
+ def immediate_od_recover_threshold(self, value: Optional[pulumi.Input[builtins.int]]):
648
648
  pulumi.set(self, "immediate_od_recover_threshold", value)
649
649
 
650
650
  @property
651
651
  @pulumi.getter(name="instanceTypesOndemand")
652
- def instance_types_ondemand(self) -> Optional[pulumi.Input[str]]:
652
+ def instance_types_ondemand(self) -> Optional[pulumi.Input[builtins.str]]:
653
653
  """
654
654
  The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
655
655
  """
656
656
  return pulumi.get(self, "instance_types_ondemand")
657
657
 
658
658
  @instance_types_ondemand.setter
659
- def instance_types_ondemand(self, value: Optional[pulumi.Input[str]]):
659
+ def instance_types_ondemand(self, value: Optional[pulumi.Input[builtins.str]]):
660
660
  pulumi.set(self, "instance_types_ondemand", value)
661
661
 
662
662
  @property
663
663
  @pulumi.getter(name="instanceTypesPreferredSpots")
664
- def instance_types_preferred_spots(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
664
+ def instance_types_preferred_spots(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
665
665
  """
666
666
  Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
667
667
  """
668
668
  return pulumi.get(self, "instance_types_preferred_spots")
669
669
 
670
670
  @instance_types_preferred_spots.setter
671
- def instance_types_preferred_spots(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
671
+ def instance_types_preferred_spots(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
672
672
  pulumi.set(self, "instance_types_preferred_spots", value)
673
673
 
674
674
  @property
675
675
  @pulumi.getter(name="instanceTypesSpots")
676
- def instance_types_spots(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
676
+ def instance_types_spots(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
677
677
  """
678
678
  One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
679
679
  """
680
680
  return pulumi.get(self, "instance_types_spots")
681
681
 
682
682
  @instance_types_spots.setter
683
- def instance_types_spots(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
683
+ def instance_types_spots(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
684
684
  pulumi.set(self, "instance_types_spots", value)
685
685
 
686
686
  @property
@@ -796,23 +796,23 @@ class ElastigroupArgs:
796
796
 
797
797
  @property
798
798
  @pulumi.getter(name="keyName")
799
- def key_name(self) -> Optional[pulumi.Input[str]]:
799
+ def key_name(self) -> Optional[pulumi.Input[builtins.str]]:
800
800
  """
801
801
  The key name that should be used for the instance.
802
802
  """
803
803
  return pulumi.get(self, "key_name")
804
804
 
805
805
  @key_name.setter
806
- def key_name(self, value: Optional[pulumi.Input[str]]):
806
+ def key_name(self, value: Optional[pulumi.Input[builtins.str]]):
807
807
  pulumi.set(self, "key_name", value)
808
808
 
809
809
  @property
810
810
  @pulumi.getter(name="lifetimePeriod")
811
- def lifetime_period(self) -> Optional[pulumi.Input[str]]:
811
+ def lifetime_period(self) -> Optional[pulumi.Input[builtins.str]]:
812
812
  return pulumi.get(self, "lifetime_period")
813
813
 
814
814
  @lifetime_period.setter
815
- def lifetime_period(self, value: Optional[pulumi.Input[str]]):
815
+ def lifetime_period(self, value: Optional[pulumi.Input[builtins.str]]):
816
816
  pulumi.set(self, "lifetime_period", value)
817
817
 
818
818
  @property
@@ -829,26 +829,23 @@ class ElastigroupArgs:
829
829
 
830
830
  @property
831
831
  @pulumi.getter(name="maxReplacementsPercentage")
832
- def max_replacements_percentage(self) -> Optional[pulumi.Input[int]]:
833
- """
834
- The percentage of active instances that can be replaced in parallel. This is used to prevent a large number of instances from being replaced at once.
835
- """
832
+ def max_replacements_percentage(self) -> Optional[pulumi.Input[builtins.int]]:
836
833
  return pulumi.get(self, "max_replacements_percentage")
837
834
 
838
835
  @max_replacements_percentage.setter
839
- def max_replacements_percentage(self, value: Optional[pulumi.Input[int]]):
836
+ def max_replacements_percentage(self, value: Optional[pulumi.Input[builtins.int]]):
840
837
  pulumi.set(self, "max_replacements_percentage", value)
841
838
 
842
839
  @property
843
840
  @pulumi.getter(name="maxSize")
844
- def max_size(self) -> Optional[pulumi.Input[int]]:
841
+ def max_size(self) -> Optional[pulumi.Input[builtins.int]]:
845
842
  """
846
843
  The maximum number of instances the group should have at any time.
847
844
  """
848
845
  return pulumi.get(self, "max_size")
849
846
 
850
847
  @max_size.setter
851
- def max_size(self, value: Optional[pulumi.Input[int]]):
848
+ def max_size(self, value: Optional[pulumi.Input[builtins.int]]):
852
849
  pulumi.set(self, "max_size", value)
853
850
 
854
851
  @property
@@ -865,26 +862,26 @@ class ElastigroupArgs:
865
862
 
866
863
  @property
867
864
  @pulumi.getter(name="minSize")
868
- def min_size(self) -> Optional[pulumi.Input[int]]:
865
+ def min_size(self) -> Optional[pulumi.Input[builtins.int]]:
869
866
  """
870
867
  The minimum number of instances the group should have at any time.
871
868
  """
872
869
  return pulumi.get(self, "min_size")
873
870
 
874
871
  @min_size.setter
875
- def min_size(self, value: Optional[pulumi.Input[int]]):
872
+ def min_size(self, value: Optional[pulumi.Input[builtins.int]]):
876
873
  pulumi.set(self, "min_size", value)
877
874
 
878
875
  @property
879
876
  @pulumi.getter(name="minimumInstanceLifetime")
880
- def minimum_instance_lifetime(self) -> Optional[pulumi.Input[int]]:
877
+ def minimum_instance_lifetime(self) -> Optional[pulumi.Input[builtins.int]]:
881
878
  """
882
879
  Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
883
880
  """
884
881
  return pulumi.get(self, "minimum_instance_lifetime")
885
882
 
886
883
  @minimum_instance_lifetime.setter
887
- def minimum_instance_lifetime(self, value: Optional[pulumi.Input[int]]):
884
+ def minimum_instance_lifetime(self, value: Optional[pulumi.Input[builtins.int]]):
888
885
  pulumi.set(self, "minimum_instance_lifetime", value)
889
886
 
890
887
  @property
@@ -898,14 +895,14 @@ class ElastigroupArgs:
898
895
 
899
896
  @property
900
897
  @pulumi.getter
901
- def name(self) -> Optional[pulumi.Input[str]]:
898
+ def name(self) -> Optional[pulumi.Input[builtins.str]]:
902
899
  """
903
900
  The group name.
904
901
  """
905
902
  return pulumi.get(self, "name")
906
903
 
907
904
  @name.setter
908
- def name(self, value: Optional[pulumi.Input[str]]):
905
+ def name(self, value: Optional[pulumi.Input[builtins.str]]):
909
906
  pulumi.set(self, "name", value)
910
907
 
911
908
  @property
@@ -919,70 +916,70 @@ class ElastigroupArgs:
919
916
 
920
917
  @property
921
918
  @pulumi.getter(name="onDemandTypes")
922
- def on_demand_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
919
+ def on_demand_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
923
920
  """
924
921
  Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
925
922
  """
926
923
  return pulumi.get(self, "on_demand_types")
927
924
 
928
925
  @on_demand_types.setter
929
- def on_demand_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
926
+ def on_demand_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
930
927
  pulumi.set(self, "on_demand_types", value)
931
928
 
932
929
  @property
933
930
  @pulumi.getter(name="ondemandCount")
934
- def ondemand_count(self) -> Optional[pulumi.Input[int]]:
931
+ def ondemand_count(self) -> Optional[pulumi.Input[builtins.int]]:
935
932
  """
936
933
  Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the `spot_percentage` parameter is being ignored.
937
934
  """
938
935
  return pulumi.get(self, "ondemand_count")
939
936
 
940
937
  @ondemand_count.setter
941
- def ondemand_count(self, value: Optional[pulumi.Input[int]]):
938
+ def ondemand_count(self, value: Optional[pulumi.Input[builtins.int]]):
942
939
  pulumi.set(self, "ondemand_count", value)
943
940
 
944
941
  @property
945
942
  @pulumi.getter(name="persistBlockDevices")
946
- def persist_block_devices(self) -> Optional[pulumi.Input[bool]]:
943
+ def persist_block_devices(self) -> Optional[pulumi.Input[builtins.bool]]:
947
944
  return pulumi.get(self, "persist_block_devices")
948
945
 
949
946
  @persist_block_devices.setter
950
- def persist_block_devices(self, value: Optional[pulumi.Input[bool]]):
947
+ def persist_block_devices(self, value: Optional[pulumi.Input[builtins.bool]]):
951
948
  pulumi.set(self, "persist_block_devices", value)
952
949
 
953
950
  @property
954
951
  @pulumi.getter(name="persistPrivateIp")
955
- def persist_private_ip(self) -> Optional[pulumi.Input[bool]]:
952
+ def persist_private_ip(self) -> Optional[pulumi.Input[builtins.bool]]:
956
953
  return pulumi.get(self, "persist_private_ip")
957
954
 
958
955
  @persist_private_ip.setter
959
- def persist_private_ip(self, value: Optional[pulumi.Input[bool]]):
956
+ def persist_private_ip(self, value: Optional[pulumi.Input[builtins.bool]]):
960
957
  pulumi.set(self, "persist_private_ip", value)
961
958
 
962
959
  @property
963
960
  @pulumi.getter(name="persistRootDevice")
964
- def persist_root_device(self) -> Optional[pulumi.Input[bool]]:
961
+ def persist_root_device(self) -> Optional[pulumi.Input[builtins.bool]]:
965
962
  return pulumi.get(self, "persist_root_device")
966
963
 
967
964
  @persist_root_device.setter
968
- def persist_root_device(self, value: Optional[pulumi.Input[bool]]):
965
+ def persist_root_device(self, value: Optional[pulumi.Input[builtins.bool]]):
969
966
  pulumi.set(self, "persist_root_device", value)
970
967
 
971
968
  @property
972
969
  @pulumi.getter(name="placementTenancy")
973
- def placement_tenancy(self) -> Optional[pulumi.Input[str]]:
970
+ def placement_tenancy(self) -> Optional[pulumi.Input[builtins.str]]:
974
971
  """
975
972
  Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
976
973
  """
977
974
  return pulumi.get(self, "placement_tenancy")
978
975
 
979
976
  @placement_tenancy.setter
980
- def placement_tenancy(self, value: Optional[pulumi.Input[str]]):
977
+ def placement_tenancy(self, value: Optional[pulumi.Input[builtins.str]]):
981
978
  pulumi.set(self, "placement_tenancy", value)
982
979
 
983
980
  @property
984
981
  @pulumi.getter(name="preferredAvailabilityZones")
985
- def preferred_availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
982
+ def preferred_availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
986
983
  """
987
984
  The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs.
988
985
  Note: Must be a sublist of `availability_zones` and `orientation` value must not be `"equalAzDistribution"`.
@@ -990,21 +987,21 @@ class ElastigroupArgs:
990
987
  return pulumi.get(self, "preferred_availability_zones")
991
988
 
992
989
  @preferred_availability_zones.setter
993
- def preferred_availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
990
+ def preferred_availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
994
991
  pulumi.set(self, "preferred_availability_zones", value)
995
992
 
996
993
  @property
997
994
  @pulumi.getter(name="privateIps")
998
- def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
995
+ def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
999
996
  return pulumi.get(self, "private_ips")
1000
997
 
1001
998
  @private_ips.setter
1002
- def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
999
+ def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
1003
1000
  pulumi.set(self, "private_ips", value)
1004
1001
 
1005
1002
  @property
1006
1003
  @pulumi.getter
1007
- def region(self) -> Optional[pulumi.Input[str]]:
1004
+ def region(self) -> Optional[pulumi.Input[builtins.str]]:
1008
1005
  """
1009
1006
  The AWS region your group will be created in.
1010
1007
  Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
@@ -1012,7 +1009,7 @@ class ElastigroupArgs:
1012
1009
  return pulumi.get(self, "region")
1013
1010
 
1014
1011
  @region.setter
1015
- def region(self, value: Optional[pulumi.Input[str]]):
1012
+ def region(self, value: Optional[pulumi.Input[builtins.str]]):
1016
1013
  pulumi.set(self, "region", value)
1017
1014
 
1018
1015
  @property
@@ -1041,14 +1038,14 @@ class ElastigroupArgs:
1041
1038
 
1042
1039
  @property
1043
1040
  @pulumi.getter(name="restrictSingleAz")
1044
- def restrict_single_az(self) -> Optional[pulumi.Input[bool]]:
1041
+ def restrict_single_az(self) -> Optional[pulumi.Input[builtins.bool]]:
1045
1042
  """
1046
1043
  Elastigroup will automatically scale your instances in the most available and cost efficient availability zone. Every evaluation will be done when there are no active instances in the group.
1047
1044
  """
1048
1045
  return pulumi.get(self, "restrict_single_az")
1049
1046
 
1050
1047
  @restrict_single_az.setter
1051
- def restrict_single_az(self, value: Optional[pulumi.Input[bool]]):
1048
+ def restrict_single_az(self, value: Optional[pulumi.Input[builtins.bool]]):
1052
1049
  pulumi.set(self, "restrict_single_az", value)
1053
1050
 
1054
1051
  @property
@@ -1113,14 +1110,14 @@ class ElastigroupArgs:
1113
1110
 
1114
1111
  @property
1115
1112
  @pulumi.getter(name="shutdownScript")
1116
- def shutdown_script(self) -> Optional[pulumi.Input[str]]:
1113
+ def shutdown_script(self) -> Optional[pulumi.Input[builtins.str]]:
1117
1114
  """
1118
1115
  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/)
1119
1116
  """
1120
1117
  return pulumi.get(self, "shutdown_script")
1121
1118
 
1122
1119
  @shutdown_script.setter
1123
- def shutdown_script(self, value: Optional[pulumi.Input[str]]):
1120
+ def shutdown_script(self, value: Optional[pulumi.Input[builtins.str]]):
1124
1121
  pulumi.set(self, "shutdown_script", value)
1125
1122
 
1126
1123
  @property
@@ -1134,14 +1131,14 @@ class ElastigroupArgs:
1134
1131
 
1135
1132
  @property
1136
1133
  @pulumi.getter(name="spotPercentage")
1137
- def spot_percentage(self) -> Optional[pulumi.Input[int]]:
1134
+ def spot_percentage(self) -> Optional[pulumi.Input[builtins.int]]:
1138
1135
  """
1139
1136
  The percentage of Spot instances that would spin up from the `desired_capacity` number.
1140
1137
  """
1141
1138
  return pulumi.get(self, "spot_percentage")
1142
1139
 
1143
1140
  @spot_percentage.setter
1144
- def spot_percentage(self, value: Optional[pulumi.Input[int]]):
1141
+ def spot_percentage(self, value: Optional[pulumi.Input[builtins.int]]):
1145
1142
  pulumi.set(self, "spot_percentage", value)
1146
1143
 
1147
1144
  @property
@@ -1165,7 +1162,7 @@ class ElastigroupArgs:
1165
1162
  @property
1166
1163
  @pulumi.getter(name="subnetIds")
1167
1164
  @_utilities.deprecated("""This field will soon be deprecated and handled by availability_zones""")
1168
- def subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1165
+ def subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
1169
1166
  """
1170
1167
  List of Strings of subnet identifiers.
1171
1168
  Note: When this parameter is set, `availability_zones` should be left unused.
@@ -1173,7 +1170,7 @@ class ElastigroupArgs:
1173
1170
  return pulumi.get(self, "subnet_ids")
1174
1171
 
1175
1172
  @subnet_ids.setter
1176
- def subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1173
+ def subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
1177
1174
  pulumi.set(self, "subnet_ids", value)
1178
1175
 
1179
1176
  @property
@@ -1190,11 +1187,11 @@ class ElastigroupArgs:
1190
1187
 
1191
1188
  @property
1192
1189
  @pulumi.getter(name="targetGroupArns")
1193
- def target_group_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1190
+ def target_group_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
1194
1191
  return pulumi.get(self, "target_group_arns")
1195
1192
 
1196
1193
  @target_group_arns.setter
1197
- def target_group_arns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1194
+ def target_group_arns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
1198
1195
  pulumi.set(self, "target_group_arns", value)
1199
1196
 
1200
1197
  @property
@@ -1208,92 +1205,92 @@ class ElastigroupArgs:
1208
1205
 
1209
1206
  @property
1210
1207
  @pulumi.getter(name="userData")
1211
- def user_data(self) -> Optional[pulumi.Input[str]]:
1208
+ def user_data(self) -> Optional[pulumi.Input[builtins.str]]:
1212
1209
  """
1213
1210
  The user data to provide when launching the instance.
1214
1211
  """
1215
1212
  return pulumi.get(self, "user_data")
1216
1213
 
1217
1214
  @user_data.setter
1218
- def user_data(self, value: Optional[pulumi.Input[str]]):
1215
+ def user_data(self, value: Optional[pulumi.Input[builtins.str]]):
1219
1216
  pulumi.set(self, "user_data", value)
1220
1217
 
1221
1218
  @property
1222
1219
  @pulumi.getter(name="utilizeCommitments")
1223
- def utilize_commitments(self) -> Optional[pulumi.Input[bool]]:
1220
+ def utilize_commitments(self) -> Optional[pulumi.Input[builtins.bool]]:
1224
1221
  return pulumi.get(self, "utilize_commitments")
1225
1222
 
1226
1223
  @utilize_commitments.setter
1227
- def utilize_commitments(self, value: Optional[pulumi.Input[bool]]):
1224
+ def utilize_commitments(self, value: Optional[pulumi.Input[builtins.bool]]):
1228
1225
  pulumi.set(self, "utilize_commitments", value)
1229
1226
 
1230
1227
  @property
1231
1228
  @pulumi.getter(name="utilizeReservedInstances")
1232
- def utilize_reserved_instances(self) -> Optional[pulumi.Input[bool]]:
1229
+ def utilize_reserved_instances(self) -> Optional[pulumi.Input[builtins.bool]]:
1233
1230
  """
1234
1231
  In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
1235
1232
  """
1236
1233
  return pulumi.get(self, "utilize_reserved_instances")
1237
1234
 
1238
1235
  @utilize_reserved_instances.setter
1239
- def utilize_reserved_instances(self, value: Optional[pulumi.Input[bool]]):
1236
+ def utilize_reserved_instances(self, value: Optional[pulumi.Input[builtins.bool]]):
1240
1237
  pulumi.set(self, "utilize_reserved_instances", value)
1241
1238
 
1242
1239
  @property
1243
1240
  @pulumi.getter(name="waitForCapacity")
1244
- def wait_for_capacity(self) -> Optional[pulumi.Input[int]]:
1241
+ def wait_for_capacity(self) -> Optional[pulumi.Input[builtins.int]]:
1245
1242
  """
1246
1243
  Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed `desired_capacity`.
1247
1244
  """
1248
1245
  return pulumi.get(self, "wait_for_capacity")
1249
1246
 
1250
1247
  @wait_for_capacity.setter
1251
- def wait_for_capacity(self, value: Optional[pulumi.Input[int]]):
1248
+ def wait_for_capacity(self, value: Optional[pulumi.Input[builtins.int]]):
1252
1249
  pulumi.set(self, "wait_for_capacity", value)
1253
1250
 
1254
1251
  @property
1255
1252
  @pulumi.getter(name="waitForCapacityTimeout")
1256
- def wait_for_capacity_timeout(self) -> Optional[pulumi.Input[int]]:
1253
+ def wait_for_capacity_timeout(self) -> Optional[pulumi.Input[builtins.int]]:
1257
1254
  """
1258
1255
  Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to `0` to indicate no wait. This is ignored when updating with blue/green deployment.
1259
1256
  """
1260
1257
  return pulumi.get(self, "wait_for_capacity_timeout")
1261
1258
 
1262
1259
  @wait_for_capacity_timeout.setter
1263
- def wait_for_capacity_timeout(self, value: Optional[pulumi.Input[int]]):
1260
+ def wait_for_capacity_timeout(self, value: Optional[pulumi.Input[builtins.int]]):
1264
1261
  pulumi.set(self, "wait_for_capacity_timeout", value)
1265
1262
 
1266
1263
 
1267
1264
  @pulumi.input_type
1268
1265
  class _ElastigroupState:
1269
1266
  def __init__(__self__, *,
1270
- auto_healing: Optional[pulumi.Input[bool]] = None,
1271
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1272
- block_devices_mode: Optional[pulumi.Input[str]] = None,
1273
- capacity_unit: Optional[pulumi.Input[str]] = None,
1274
- consider_od_pricing: Optional[pulumi.Input[bool]] = None,
1275
- cpu_credits: Optional[pulumi.Input[str]] = None,
1267
+ auto_healing: Optional[pulumi.Input[builtins.bool]] = None,
1268
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1269
+ block_devices_mode: Optional[pulumi.Input[builtins.str]] = None,
1270
+ capacity_unit: Optional[pulumi.Input[builtins.str]] = None,
1271
+ consider_od_pricing: Optional[pulumi.Input[builtins.bool]] = None,
1272
+ cpu_credits: Optional[pulumi.Input[builtins.str]] = None,
1276
1273
  cpu_options: Optional[pulumi.Input['ElastigroupCpuOptionsArgs']] = None,
1277
- description: Optional[pulumi.Input[str]] = None,
1278
- desired_capacity: Optional[pulumi.Input[int]] = None,
1279
- draining_timeout: Optional[pulumi.Input[int]] = None,
1274
+ description: Optional[pulumi.Input[builtins.str]] = None,
1275
+ desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
1276
+ draining_timeout: Optional[pulumi.Input[builtins.int]] = None,
1280
1277
  ebs_block_devices: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupEbsBlockDeviceArgs']]]] = None,
1281
- ebs_optimized: Optional[pulumi.Input[bool]] = None,
1282
- elastic_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1283
- elastic_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1284
- enable_monitoring: Optional[pulumi.Input[bool]] = None,
1278
+ ebs_optimized: Optional[pulumi.Input[builtins.bool]] = None,
1279
+ elastic_ips: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1280
+ elastic_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1281
+ enable_monitoring: Optional[pulumi.Input[builtins.bool]] = None,
1285
1282
  ephemeral_block_devices: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupEphemeralBlockDeviceArgs']]]] = None,
1286
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
1287
- health_check_grace_period: Optional[pulumi.Input[int]] = None,
1288
- health_check_type: Optional[pulumi.Input[str]] = None,
1289
- health_check_unhealthy_duration_before_replacement: Optional[pulumi.Input[int]] = None,
1290
- iam_instance_profile: Optional[pulumi.Input[str]] = None,
1291
- image_id: Optional[pulumi.Input[str]] = None,
1283
+ fallback_to_ondemand: Optional[pulumi.Input[builtins.bool]] = None,
1284
+ health_check_grace_period: Optional[pulumi.Input[builtins.int]] = None,
1285
+ health_check_type: Optional[pulumi.Input[builtins.str]] = None,
1286
+ health_check_unhealthy_duration_before_replacement: Optional[pulumi.Input[builtins.int]] = None,
1287
+ iam_instance_profile: Optional[pulumi.Input[builtins.str]] = None,
1288
+ image_id: Optional[pulumi.Input[builtins.str]] = None,
1292
1289
  images: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupImageArgs']]]] = None,
1293
- immediate_od_recover_threshold: Optional[pulumi.Input[int]] = None,
1294
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
1295
- instance_types_preferred_spots: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1296
- instance_types_spots: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1290
+ immediate_od_recover_threshold: Optional[pulumi.Input[builtins.int]] = None,
1291
+ instance_types_ondemand: Optional[pulumi.Input[builtins.str]] = None,
1292
+ instance_types_preferred_spots: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1293
+ instance_types_spots: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1297
1294
  instance_types_weights: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesWeightArgs']]]] = None,
1298
1295
  integration_beanstalk: Optional[pulumi.Input['ElastigroupIntegrationBeanstalkArgs']] = None,
1299
1296
  integration_codedeploy: Optional[pulumi.Input['ElastigroupIntegrationCodedeployArgs']] = None,
@@ -1306,112 +1303,111 @@ class _ElastigroupState:
1306
1303
  integration_rancher: Optional[pulumi.Input['ElastigroupIntegrationRancherArgs']] = None,
1307
1304
  integration_route53: Optional[pulumi.Input['ElastigroupIntegrationRoute53Args']] = None,
1308
1305
  itfs: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupItfArgs']]]] = None,
1309
- key_name: Optional[pulumi.Input[str]] = None,
1310
- lifetime_period: Optional[pulumi.Input[str]] = None,
1306
+ key_name: Optional[pulumi.Input[builtins.str]] = None,
1307
+ lifetime_period: Optional[pulumi.Input[builtins.str]] = None,
1311
1308
  logging: Optional[pulumi.Input['ElastigroupLoggingArgs']] = None,
1312
- max_replacements_percentage: Optional[pulumi.Input[int]] = None,
1313
- max_size: Optional[pulumi.Input[int]] = None,
1309
+ max_replacements_percentage: Optional[pulumi.Input[builtins.int]] = None,
1310
+ max_size: Optional[pulumi.Input[builtins.int]] = None,
1314
1311
  metadata_options: Optional[pulumi.Input['ElastigroupMetadataOptionsArgs']] = None,
1315
- min_size: Optional[pulumi.Input[int]] = None,
1316
- minimum_instance_lifetime: Optional[pulumi.Input[int]] = None,
1312
+ min_size: Optional[pulumi.Input[builtins.int]] = None,
1313
+ minimum_instance_lifetime: Optional[pulumi.Input[builtins.int]] = None,
1317
1314
  multiple_metrics: Optional[pulumi.Input['ElastigroupMultipleMetricsArgs']] = None,
1318
- name: Optional[pulumi.Input[str]] = None,
1315
+ name: Optional[pulumi.Input[builtins.str]] = None,
1319
1316
  network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupNetworkInterfaceArgs']]]] = None,
1320
- on_demand_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1321
- ondemand_count: Optional[pulumi.Input[int]] = None,
1322
- orientation: Optional[pulumi.Input[str]] = None,
1323
- persist_block_devices: Optional[pulumi.Input[bool]] = None,
1324
- persist_private_ip: Optional[pulumi.Input[bool]] = None,
1325
- persist_root_device: Optional[pulumi.Input[bool]] = None,
1326
- placement_tenancy: Optional[pulumi.Input[str]] = None,
1327
- preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1328
- private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1329
- product: Optional[pulumi.Input[str]] = None,
1330
- region: Optional[pulumi.Input[str]] = None,
1317
+ on_demand_types: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1318
+ ondemand_count: Optional[pulumi.Input[builtins.int]] = None,
1319
+ orientation: Optional[pulumi.Input[builtins.str]] = None,
1320
+ persist_block_devices: Optional[pulumi.Input[builtins.bool]] = None,
1321
+ persist_private_ip: Optional[pulumi.Input[builtins.bool]] = None,
1322
+ persist_root_device: Optional[pulumi.Input[builtins.bool]] = None,
1323
+ placement_tenancy: Optional[pulumi.Input[builtins.str]] = None,
1324
+ preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1325
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1326
+ product: Optional[pulumi.Input[builtins.str]] = None,
1327
+ region: Optional[pulumi.Input[builtins.str]] = None,
1331
1328
  resource_requirements: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupResourceRequirementArgs']]]] = None,
1332
1329
  resource_tag_specifications: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupResourceTagSpecificationArgs']]]] = None,
1333
- restrict_single_az: Optional[pulumi.Input[bool]] = None,
1330
+ restrict_single_az: Optional[pulumi.Input[builtins.bool]] = None,
1334
1331
  revert_to_spot: Optional[pulumi.Input['ElastigroupRevertToSpotArgs']] = None,
1335
1332
  scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingDownPolicyArgs']]]] = None,
1336
1333
  scaling_strategies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingStrategyArgs']]]] = None,
1337
1334
  scaling_target_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingTargetPolicyArgs']]]] = None,
1338
1335
  scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingUpPolicyArgs']]]] = None,
1339
1336
  scheduled_tasks: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupScheduledTaskArgs']]]] = None,
1340
- security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1341
- shutdown_script: Optional[pulumi.Input[str]] = None,
1337
+ security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1338
+ shutdown_script: Optional[pulumi.Input[builtins.str]] = None,
1342
1339
  signals: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupSignalArgs']]]] = None,
1343
- spot_percentage: Optional[pulumi.Input[int]] = None,
1340
+ spot_percentage: Optional[pulumi.Input[builtins.int]] = None,
1344
1341
  stateful_deallocation: Optional[pulumi.Input['ElastigroupStatefulDeallocationArgs']] = None,
1345
1342
  stateful_instance_actions: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupStatefulInstanceActionArgs']]]] = None,
1346
- subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1343
+ subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1347
1344
  tags: Optional[pulumi.Input[Sequence[pulumi.Input['ElastigroupTagArgs']]]] = None,
1348
- target_group_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1345
+ target_group_arns: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1349
1346
  update_policy: Optional[pulumi.Input['ElastigroupUpdatePolicyArgs']] = None,
1350
- user_data: Optional[pulumi.Input[str]] = None,
1351
- utilize_commitments: Optional[pulumi.Input[bool]] = None,
1352
- utilize_reserved_instances: Optional[pulumi.Input[bool]] = None,
1353
- wait_for_capacity: Optional[pulumi.Input[int]] = None,
1354
- wait_for_capacity_timeout: Optional[pulumi.Input[int]] = None):
1347
+ user_data: Optional[pulumi.Input[builtins.str]] = None,
1348
+ utilize_commitments: Optional[pulumi.Input[builtins.bool]] = None,
1349
+ utilize_reserved_instances: Optional[pulumi.Input[builtins.bool]] = None,
1350
+ wait_for_capacity: Optional[pulumi.Input[builtins.int]] = None,
1351
+ wait_for_capacity_timeout: Optional[pulumi.Input[builtins.int]] = None):
1355
1352
  """
1356
1353
  Input properties used for looking up and filtering Elastigroup resources.
1357
- :param pulumi.Input[bool] auto_healing: Auto-healing replacement won't be triggered if this parameter value is "false". In a case of a stateful group - no recycling will start if this parameter value is "false".
1358
- :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: List of Strings of availability zones. When this parameter is set, `subnet_ids` should be left unused.
1354
+ :param pulumi.Input[builtins.bool] auto_healing: Auto-healing replacement won't be triggered if this parameter value is "false". In a case of a stateful group - no recycling will start if this parameter value is "false".
1355
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] availability_zones: List of Strings of availability zones. When this parameter is set, `subnet_ids` should be left unused.
1359
1356
  Note: `availability_zones` naming syntax follows the convention `availability-zone:subnet:placement-group-name`. For example, to set an AZ in `us-east-1` with subnet `subnet-123456` and placement group `ClusterI03`, you would set:
1360
1357
  `availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]`
1361
- :param pulumi.Input[str] capacity_unit: The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: `instance`, `weight`.
1362
- :param pulumi.Input[str] cpu_credits: Controls how T3 instances are launched. Valid values: `standard`, `unlimited`.
1358
+ :param pulumi.Input[builtins.str] capacity_unit: The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: `instance`, `weight`.
1359
+ :param pulumi.Input[builtins.str] cpu_credits: Controls how T3 instances are launched. Valid values: `standard`, `unlimited`.
1363
1360
  :param pulumi.Input['ElastigroupCpuOptionsArgs'] cpu_options: The CPU options for the instances that are launched within the group:
1364
- :param pulumi.Input[str] description: The group description.
1365
- :param pulumi.Input[int] desired_capacity: The desired number of instances the group should have at any time.
1366
- :param pulumi.Input[int] draining_timeout: The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
1367
- :param pulumi.Input[bool] ebs_optimized: Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
1368
- :param pulumi.Input[Sequence[pulumi.Input[str]]] elastic_ips: A list of [AWS Elastic IP](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) allocation IDs to associate to the group instances.
1369
- :param pulumi.Input[bool] enable_monitoring: Indicates whether monitoring is enabled for the instance.
1370
- :param pulumi.Input[bool] fallback_to_ondemand: In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
1371
- :param pulumi.Input[int] health_check_grace_period: The amount of time, in seconds, after the instance has launched to starts and check its health.
1372
- :param pulumi.Input[str] health_check_type: The service that will perform health checks for the instance. Valid values: `"ELB"`, `"HCS"`, `"TARGET_GROUP"`, `"EC2"`, `"K8S_NODE"`, `"NOMAD_NODE"`, `"ECS_CLUSTER_INSTANCE"`.
1373
- :param pulumi.Input[int] health_check_unhealthy_duration_before_replacement: The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
1374
- :param pulumi.Input[str] iam_instance_profile: The ARN or name of an IAM instance profile to associate with launched instances.
1375
- :param pulumi.Input[str] image_id: The ID of the AMI used to launch the instance.
1361
+ :param pulumi.Input[builtins.str] description: The group description.
1362
+ :param pulumi.Input[builtins.int] desired_capacity: The desired number of instances the group should have at any time.
1363
+ :param pulumi.Input[builtins.int] draining_timeout: The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
1364
+ :param pulumi.Input[builtins.bool] ebs_optimized: Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
1365
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] elastic_ips: A list of [AWS Elastic IP](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) allocation IDs to associate to the group instances.
1366
+ :param pulumi.Input[builtins.bool] enable_monitoring: Indicates whether monitoring is enabled for the instance.
1367
+ :param pulumi.Input[builtins.bool] fallback_to_ondemand: In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
1368
+ :param pulumi.Input[builtins.int] health_check_grace_period: The amount of time, in seconds, after the instance has launched to starts and check its health.
1369
+ :param pulumi.Input[builtins.str] health_check_type: The service that will perform health checks for the instance. Valid values: `"ELB"`, `"HCS"`, `"TARGET_GROUP"`, `"EC2"`, `"K8S_NODE"`, `"NOMAD_NODE"`, `"ECS_CLUSTER_INSTANCE"`.
1370
+ :param pulumi.Input[builtins.int] health_check_unhealthy_duration_before_replacement: The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
1371
+ :param pulumi.Input[builtins.str] iam_instance_profile: The ARN or name of an IAM instance profile to associate with launched instances.
1372
+ :param pulumi.Input[builtins.str] image_id: The ID of the AMI used to launch the instance.
1376
1373
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupImageArgs']]] images: An array of image objects.
1377
1374
  Note: Elastigroup can be configured with either imageId or images, but not both.
1378
- :param pulumi.Input[str] instance_types_ondemand: The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
1379
- :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types_preferred_spots: Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
1380
- :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types_spots: One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
1375
+ :param pulumi.Input[builtins.str] instance_types_ondemand: The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
1376
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] instance_types_preferred_spots: Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
1377
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] instance_types_spots: One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
1381
1378
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupInstanceTypesWeightArgs']]] instance_types_weights: List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
1382
- :param pulumi.Input[str] key_name: The key name that should be used for the instance.
1379
+ :param pulumi.Input[builtins.str] key_name: The key name that should be used for the instance.
1383
1380
  :param pulumi.Input['ElastigroupLoggingArgs'] logging: Logging configuration.
1384
- :param pulumi.Input[int] max_replacements_percentage: The percentage of active instances that can be replaced in parallel. This is used to prevent a large number of instances from being replaced at once.
1385
- :param pulumi.Input[int] max_size: The maximum number of instances the group should have at any time.
1381
+ :param pulumi.Input[builtins.int] max_size: The maximum number of instances the group should have at any time.
1386
1382
  :param pulumi.Input['ElastigroupMetadataOptionsArgs'] metadata_options: Data that used to configure or manage the running instances:
1387
- :param pulumi.Input[int] min_size: The minimum number of instances the group should have at any time.
1388
- :param pulumi.Input[int] minimum_instance_lifetime: Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
1389
- :param pulumi.Input[str] name: The group name.
1390
- :param pulumi.Input[Sequence[pulumi.Input[str]]] on_demand_types: Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
1391
- :param pulumi.Input[int] ondemand_count: Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the `spot_percentage` parameter is being ignored.
1392
- :param pulumi.Input[str] orientation: Select a prediction strategy. Valid values: `balanced`, `costOriented`, `equalAzDistribution`, `availabilityOriented`. You can read more in our documentation.
1393
- :param pulumi.Input[str] placement_tenancy: Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
1394
- :param pulumi.Input[Sequence[pulumi.Input[str]]] preferred_availability_zones: The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs.
1383
+ :param pulumi.Input[builtins.int] min_size: The minimum number of instances the group should have at any time.
1384
+ :param pulumi.Input[builtins.int] minimum_instance_lifetime: Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
1385
+ :param pulumi.Input[builtins.str] name: The group name.
1386
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] on_demand_types: Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
1387
+ :param pulumi.Input[builtins.int] ondemand_count: Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the `spot_percentage` parameter is being ignored.
1388
+ :param pulumi.Input[builtins.str] orientation: Select a prediction strategy. Valid values: `balanced`, `costOriented`, `equalAzDistribution`, `availabilityOriented`. You can read more in our documentation.
1389
+ :param pulumi.Input[builtins.str] placement_tenancy: Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
1390
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] preferred_availability_zones: The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs.
1395
1391
  Note: Must be a sublist of `availability_zones` and `orientation` value must not be `"equalAzDistribution"`.
1396
- :param pulumi.Input[str] product: Operation system type. Valid values: `"Linux/UNIX"`, `"SUSE Linux"`, `"Windows"`.
1392
+ :param pulumi.Input[builtins.str] product: Operation system type. Valid values: `"Linux/UNIX"`, `"SUSE Linux"`, `"Windows"`.
1397
1393
  For EC2 Classic instances: `"SUSE Linux (Amazon VPC)"`, `"Windows (Amazon VPC)"`.
1398
- :param pulumi.Input[str] region: The AWS region your group will be created in.
1394
+ :param pulumi.Input[builtins.str] region: The AWS region your group will be created in.
1399
1395
  Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
1400
1396
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupResourceRequirementArgs']]] resource_requirements: Required instance attributes. Instance types will be selected based on these requirements.
1401
1397
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupResourceTagSpecificationArgs']]] resource_tag_specifications: User will specify which resources should be tagged with group tags.
1402
- :param pulumi.Input[bool] restrict_single_az: Elastigroup will automatically scale your instances in the most available and cost efficient availability zone. Every evaluation will be done when there are no active instances in the group.
1398
+ :param pulumi.Input[builtins.bool] restrict_single_az: Elastigroup will automatically scale your instances in the most available and cost efficient availability zone. Every evaluation will be done when there are no active instances in the group.
1403
1399
  :param pulumi.Input['ElastigroupRevertToSpotArgs'] revert_to_spot: Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: `"never"`, `"always"`, `"timeWindow"`
1404
1400
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupScalingStrategyArgs']]] scaling_strategies: Set termination policy.
1405
- :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: A list of associated security group IDS.
1406
- :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/)
1407
- :param pulumi.Input[int] spot_percentage: The percentage of Spot instances that would spin up from the `desired_capacity` number.
1408
- :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: List of Strings of subnet identifiers.
1401
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] security_groups: A list of associated security group IDS.
1402
+ :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/)
1403
+ :param pulumi.Input[builtins.int] spot_percentage: The percentage of Spot instances that would spin up from the `desired_capacity` number.
1404
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] subnet_ids: List of Strings of subnet identifiers.
1409
1405
  Note: When this parameter is set, `availability_zones` should be left unused.
1410
1406
  :param pulumi.Input[Sequence[pulumi.Input['ElastigroupTagArgs']]] tags: A key/value mapping of tags to assign to the resource.
1411
- :param pulumi.Input[str] user_data: The user data to provide when launching the instance.
1412
- :param pulumi.Input[bool] utilize_reserved_instances: In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
1413
- :param pulumi.Input[int] wait_for_capacity: Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed `desired_capacity`.
1414
- :param pulumi.Input[int] wait_for_capacity_timeout: Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to `0` to indicate no wait. This is ignored when updating with blue/green deployment.
1407
+ :param pulumi.Input[builtins.str] user_data: The user data to provide when launching the instance.
1408
+ :param pulumi.Input[builtins.bool] utilize_reserved_instances: In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
1409
+ :param pulumi.Input[builtins.int] wait_for_capacity: Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed `desired_capacity`.
1410
+ :param pulumi.Input[builtins.int] wait_for_capacity_timeout: Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to `0` to indicate no wait. This is ignored when updating with blue/green deployment.
1415
1411
  """
1416
1412
  if auto_healing is not None:
1417
1413
  pulumi.set(__self__, "auto_healing", auto_healing)
@@ -1589,19 +1585,19 @@ class _ElastigroupState:
1589
1585
 
1590
1586
  @property
1591
1587
  @pulumi.getter(name="autoHealing")
1592
- def auto_healing(self) -> Optional[pulumi.Input[bool]]:
1588
+ def auto_healing(self) -> Optional[pulumi.Input[builtins.bool]]:
1593
1589
  """
1594
1590
  Auto-healing replacement won't be triggered if this parameter value is "false". In a case of a stateful group - no recycling will start if this parameter value is "false".
1595
1591
  """
1596
1592
  return pulumi.get(self, "auto_healing")
1597
1593
 
1598
1594
  @auto_healing.setter
1599
- def auto_healing(self, value: Optional[pulumi.Input[bool]]):
1595
+ def auto_healing(self, value: Optional[pulumi.Input[builtins.bool]]):
1600
1596
  pulumi.set(self, "auto_healing", value)
1601
1597
 
1602
1598
  @property
1603
1599
  @pulumi.getter(name="availabilityZones")
1604
- def availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1600
+ def availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
1605
1601
  """
1606
1602
  List of Strings of availability zones. When this parameter is set, `subnet_ids` should be left unused.
1607
1603
  Note: `availability_zones` naming syntax follows the convention `availability-zone:subnet:placement-group-name`. For example, to set an AZ in `us-east-1` with subnet `subnet-123456` and placement group `ClusterI03`, you would set:
@@ -1610,49 +1606,49 @@ class _ElastigroupState:
1610
1606
  return pulumi.get(self, "availability_zones")
1611
1607
 
1612
1608
  @availability_zones.setter
1613
- def availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1609
+ def availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
1614
1610
  pulumi.set(self, "availability_zones", value)
1615
1611
 
1616
1612
  @property
1617
1613
  @pulumi.getter(name="blockDevicesMode")
1618
- def block_devices_mode(self) -> Optional[pulumi.Input[str]]:
1614
+ def block_devices_mode(self) -> Optional[pulumi.Input[builtins.str]]:
1619
1615
  return pulumi.get(self, "block_devices_mode")
1620
1616
 
1621
1617
  @block_devices_mode.setter
1622
- def block_devices_mode(self, value: Optional[pulumi.Input[str]]):
1618
+ def block_devices_mode(self, value: Optional[pulumi.Input[builtins.str]]):
1623
1619
  pulumi.set(self, "block_devices_mode", value)
1624
1620
 
1625
1621
  @property
1626
1622
  @pulumi.getter(name="capacityUnit")
1627
- def capacity_unit(self) -> Optional[pulumi.Input[str]]:
1623
+ def capacity_unit(self) -> Optional[pulumi.Input[builtins.str]]:
1628
1624
  """
1629
1625
  The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: `instance`, `weight`.
1630
1626
  """
1631
1627
  return pulumi.get(self, "capacity_unit")
1632
1628
 
1633
1629
  @capacity_unit.setter
1634
- def capacity_unit(self, value: Optional[pulumi.Input[str]]):
1630
+ def capacity_unit(self, value: Optional[pulumi.Input[builtins.str]]):
1635
1631
  pulumi.set(self, "capacity_unit", value)
1636
1632
 
1637
1633
  @property
1638
1634
  @pulumi.getter(name="considerOdPricing")
1639
- def consider_od_pricing(self) -> Optional[pulumi.Input[bool]]:
1635
+ def consider_od_pricing(self) -> Optional[pulumi.Input[builtins.bool]]:
1640
1636
  return pulumi.get(self, "consider_od_pricing")
1641
1637
 
1642
1638
  @consider_od_pricing.setter
1643
- def consider_od_pricing(self, value: Optional[pulumi.Input[bool]]):
1639
+ def consider_od_pricing(self, value: Optional[pulumi.Input[builtins.bool]]):
1644
1640
  pulumi.set(self, "consider_od_pricing", value)
1645
1641
 
1646
1642
  @property
1647
1643
  @pulumi.getter(name="cpuCredits")
1648
- def cpu_credits(self) -> Optional[pulumi.Input[str]]:
1644
+ def cpu_credits(self) -> Optional[pulumi.Input[builtins.str]]:
1649
1645
  """
1650
1646
  Controls how T3 instances are launched. Valid values: `standard`, `unlimited`.
1651
1647
  """
1652
1648
  return pulumi.get(self, "cpu_credits")
1653
1649
 
1654
1650
  @cpu_credits.setter
1655
- def cpu_credits(self, value: Optional[pulumi.Input[str]]):
1651
+ def cpu_credits(self, value: Optional[pulumi.Input[builtins.str]]):
1656
1652
  pulumi.set(self, "cpu_credits", value)
1657
1653
 
1658
1654
  @property
@@ -1669,38 +1665,38 @@ class _ElastigroupState:
1669
1665
 
1670
1666
  @property
1671
1667
  @pulumi.getter
1672
- def description(self) -> Optional[pulumi.Input[str]]:
1668
+ def description(self) -> Optional[pulumi.Input[builtins.str]]:
1673
1669
  """
1674
1670
  The group description.
1675
1671
  """
1676
1672
  return pulumi.get(self, "description")
1677
1673
 
1678
1674
  @description.setter
1679
- def description(self, value: Optional[pulumi.Input[str]]):
1675
+ def description(self, value: Optional[pulumi.Input[builtins.str]]):
1680
1676
  pulumi.set(self, "description", value)
1681
1677
 
1682
1678
  @property
1683
1679
  @pulumi.getter(name="desiredCapacity")
1684
- def desired_capacity(self) -> Optional[pulumi.Input[int]]:
1680
+ def desired_capacity(self) -> Optional[pulumi.Input[builtins.int]]:
1685
1681
  """
1686
1682
  The desired number of instances the group should have at any time.
1687
1683
  """
1688
1684
  return pulumi.get(self, "desired_capacity")
1689
1685
 
1690
1686
  @desired_capacity.setter
1691
- def desired_capacity(self, value: Optional[pulumi.Input[int]]):
1687
+ def desired_capacity(self, value: Optional[pulumi.Input[builtins.int]]):
1692
1688
  pulumi.set(self, "desired_capacity", value)
1693
1689
 
1694
1690
  @property
1695
1691
  @pulumi.getter(name="drainingTimeout")
1696
- def draining_timeout(self) -> Optional[pulumi.Input[int]]:
1692
+ def draining_timeout(self) -> Optional[pulumi.Input[builtins.int]]:
1697
1693
  """
1698
1694
  The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
1699
1695
  """
1700
1696
  return pulumi.get(self, "draining_timeout")
1701
1697
 
1702
1698
  @draining_timeout.setter
1703
- def draining_timeout(self, value: Optional[pulumi.Input[int]]):
1699
+ def draining_timeout(self, value: Optional[pulumi.Input[builtins.int]]):
1704
1700
  pulumi.set(self, "draining_timeout", value)
1705
1701
 
1706
1702
  @property
@@ -1714,47 +1710,47 @@ class _ElastigroupState:
1714
1710
 
1715
1711
  @property
1716
1712
  @pulumi.getter(name="ebsOptimized")
1717
- def ebs_optimized(self) -> Optional[pulumi.Input[bool]]:
1713
+ def ebs_optimized(self) -> Optional[pulumi.Input[builtins.bool]]:
1718
1714
  """
1719
1715
  Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
1720
1716
  """
1721
1717
  return pulumi.get(self, "ebs_optimized")
1722
1718
 
1723
1719
  @ebs_optimized.setter
1724
- def ebs_optimized(self, value: Optional[pulumi.Input[bool]]):
1720
+ def ebs_optimized(self, value: Optional[pulumi.Input[builtins.bool]]):
1725
1721
  pulumi.set(self, "ebs_optimized", value)
1726
1722
 
1727
1723
  @property
1728
1724
  @pulumi.getter(name="elasticIps")
1729
- def elastic_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1725
+ def elastic_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
1730
1726
  """
1731
1727
  A list of [AWS Elastic IP](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) allocation IDs to associate to the group instances.
1732
1728
  """
1733
1729
  return pulumi.get(self, "elastic_ips")
1734
1730
 
1735
1731
  @elastic_ips.setter
1736
- def elastic_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1732
+ def elastic_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
1737
1733
  pulumi.set(self, "elastic_ips", value)
1738
1734
 
1739
1735
  @property
1740
1736
  @pulumi.getter(name="elasticLoadBalancers")
1741
- def elastic_load_balancers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1737
+ def elastic_load_balancers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
1742
1738
  return pulumi.get(self, "elastic_load_balancers")
1743
1739
 
1744
1740
  @elastic_load_balancers.setter
1745
- def elastic_load_balancers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1741
+ def elastic_load_balancers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
1746
1742
  pulumi.set(self, "elastic_load_balancers", value)
1747
1743
 
1748
1744
  @property
1749
1745
  @pulumi.getter(name="enableMonitoring")
1750
- def enable_monitoring(self) -> Optional[pulumi.Input[bool]]:
1746
+ def enable_monitoring(self) -> Optional[pulumi.Input[builtins.bool]]:
1751
1747
  """
1752
1748
  Indicates whether monitoring is enabled for the instance.
1753
1749
  """
1754
1750
  return pulumi.get(self, "enable_monitoring")
1755
1751
 
1756
1752
  @enable_monitoring.setter
1757
- def enable_monitoring(self, value: Optional[pulumi.Input[bool]]):
1753
+ def enable_monitoring(self, value: Optional[pulumi.Input[builtins.bool]]):
1758
1754
  pulumi.set(self, "enable_monitoring", value)
1759
1755
 
1760
1756
  @property
@@ -1768,74 +1764,74 @@ class _ElastigroupState:
1768
1764
 
1769
1765
  @property
1770
1766
  @pulumi.getter(name="fallbackToOndemand")
1771
- def fallback_to_ondemand(self) -> Optional[pulumi.Input[bool]]:
1767
+ def fallback_to_ondemand(self) -> Optional[pulumi.Input[builtins.bool]]:
1772
1768
  """
1773
1769
  In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
1774
1770
  """
1775
1771
  return pulumi.get(self, "fallback_to_ondemand")
1776
1772
 
1777
1773
  @fallback_to_ondemand.setter
1778
- def fallback_to_ondemand(self, value: Optional[pulumi.Input[bool]]):
1774
+ def fallback_to_ondemand(self, value: Optional[pulumi.Input[builtins.bool]]):
1779
1775
  pulumi.set(self, "fallback_to_ondemand", value)
1780
1776
 
1781
1777
  @property
1782
1778
  @pulumi.getter(name="healthCheckGracePeriod")
1783
- def health_check_grace_period(self) -> Optional[pulumi.Input[int]]:
1779
+ def health_check_grace_period(self) -> Optional[pulumi.Input[builtins.int]]:
1784
1780
  """
1785
1781
  The amount of time, in seconds, after the instance has launched to starts and check its health.
1786
1782
  """
1787
1783
  return pulumi.get(self, "health_check_grace_period")
1788
1784
 
1789
1785
  @health_check_grace_period.setter
1790
- def health_check_grace_period(self, value: Optional[pulumi.Input[int]]):
1786
+ def health_check_grace_period(self, value: Optional[pulumi.Input[builtins.int]]):
1791
1787
  pulumi.set(self, "health_check_grace_period", value)
1792
1788
 
1793
1789
  @property
1794
1790
  @pulumi.getter(name="healthCheckType")
1795
- def health_check_type(self) -> Optional[pulumi.Input[str]]:
1791
+ def health_check_type(self) -> Optional[pulumi.Input[builtins.str]]:
1796
1792
  """
1797
1793
  The service that will perform health checks for the instance. Valid values: `"ELB"`, `"HCS"`, `"TARGET_GROUP"`, `"EC2"`, `"K8S_NODE"`, `"NOMAD_NODE"`, `"ECS_CLUSTER_INSTANCE"`.
1798
1794
  """
1799
1795
  return pulumi.get(self, "health_check_type")
1800
1796
 
1801
1797
  @health_check_type.setter
1802
- def health_check_type(self, value: Optional[pulumi.Input[str]]):
1798
+ def health_check_type(self, value: Optional[pulumi.Input[builtins.str]]):
1803
1799
  pulumi.set(self, "health_check_type", value)
1804
1800
 
1805
1801
  @property
1806
1802
  @pulumi.getter(name="healthCheckUnhealthyDurationBeforeReplacement")
1807
- def health_check_unhealthy_duration_before_replacement(self) -> Optional[pulumi.Input[int]]:
1803
+ def health_check_unhealthy_duration_before_replacement(self) -> Optional[pulumi.Input[builtins.int]]:
1808
1804
  """
1809
1805
  The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
1810
1806
  """
1811
1807
  return pulumi.get(self, "health_check_unhealthy_duration_before_replacement")
1812
1808
 
1813
1809
  @health_check_unhealthy_duration_before_replacement.setter
1814
- def health_check_unhealthy_duration_before_replacement(self, value: Optional[pulumi.Input[int]]):
1810
+ def health_check_unhealthy_duration_before_replacement(self, value: Optional[pulumi.Input[builtins.int]]):
1815
1811
  pulumi.set(self, "health_check_unhealthy_duration_before_replacement", value)
1816
1812
 
1817
1813
  @property
1818
1814
  @pulumi.getter(name="iamInstanceProfile")
1819
- def iam_instance_profile(self) -> Optional[pulumi.Input[str]]:
1815
+ def iam_instance_profile(self) -> Optional[pulumi.Input[builtins.str]]:
1820
1816
  """
1821
1817
  The ARN or name of an IAM instance profile to associate with launched instances.
1822
1818
  """
1823
1819
  return pulumi.get(self, "iam_instance_profile")
1824
1820
 
1825
1821
  @iam_instance_profile.setter
1826
- def iam_instance_profile(self, value: Optional[pulumi.Input[str]]):
1822
+ def iam_instance_profile(self, value: Optional[pulumi.Input[builtins.str]]):
1827
1823
  pulumi.set(self, "iam_instance_profile", value)
1828
1824
 
1829
1825
  @property
1830
1826
  @pulumi.getter(name="imageId")
1831
- def image_id(self) -> Optional[pulumi.Input[str]]:
1827
+ def image_id(self) -> Optional[pulumi.Input[builtins.str]]:
1832
1828
  """
1833
1829
  The ID of the AMI used to launch the instance.
1834
1830
  """
1835
1831
  return pulumi.get(self, "image_id")
1836
1832
 
1837
1833
  @image_id.setter
1838
- def image_id(self, value: Optional[pulumi.Input[str]]):
1834
+ def image_id(self, value: Optional[pulumi.Input[builtins.str]]):
1839
1835
  pulumi.set(self, "image_id", value)
1840
1836
 
1841
1837
  @property
@@ -1853,47 +1849,47 @@ class _ElastigroupState:
1853
1849
 
1854
1850
  @property
1855
1851
  @pulumi.getter(name="immediateOdRecoverThreshold")
1856
- def immediate_od_recover_threshold(self) -> Optional[pulumi.Input[int]]:
1852
+ def immediate_od_recover_threshold(self) -> Optional[pulumi.Input[builtins.int]]:
1857
1853
  return pulumi.get(self, "immediate_od_recover_threshold")
1858
1854
 
1859
1855
  @immediate_od_recover_threshold.setter
1860
- def immediate_od_recover_threshold(self, value: Optional[pulumi.Input[int]]):
1856
+ def immediate_od_recover_threshold(self, value: Optional[pulumi.Input[builtins.int]]):
1861
1857
  pulumi.set(self, "immediate_od_recover_threshold", value)
1862
1858
 
1863
1859
  @property
1864
1860
  @pulumi.getter(name="instanceTypesOndemand")
1865
- def instance_types_ondemand(self) -> Optional[pulumi.Input[str]]:
1861
+ def instance_types_ondemand(self) -> Optional[pulumi.Input[builtins.str]]:
1866
1862
  """
1867
1863
  The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
1868
1864
  """
1869
1865
  return pulumi.get(self, "instance_types_ondemand")
1870
1866
 
1871
1867
  @instance_types_ondemand.setter
1872
- def instance_types_ondemand(self, value: Optional[pulumi.Input[str]]):
1868
+ def instance_types_ondemand(self, value: Optional[pulumi.Input[builtins.str]]):
1873
1869
  pulumi.set(self, "instance_types_ondemand", value)
1874
1870
 
1875
1871
  @property
1876
1872
  @pulumi.getter(name="instanceTypesPreferredSpots")
1877
- def instance_types_preferred_spots(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1873
+ def instance_types_preferred_spots(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
1878
1874
  """
1879
1875
  Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
1880
1876
  """
1881
1877
  return pulumi.get(self, "instance_types_preferred_spots")
1882
1878
 
1883
1879
  @instance_types_preferred_spots.setter
1884
- def instance_types_preferred_spots(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1880
+ def instance_types_preferred_spots(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
1885
1881
  pulumi.set(self, "instance_types_preferred_spots", value)
1886
1882
 
1887
1883
  @property
1888
1884
  @pulumi.getter(name="instanceTypesSpots")
1889
- def instance_types_spots(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1885
+ def instance_types_spots(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
1890
1886
  """
1891
1887
  One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
1892
1888
  """
1893
1889
  return pulumi.get(self, "instance_types_spots")
1894
1890
 
1895
1891
  @instance_types_spots.setter
1896
- def instance_types_spots(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1892
+ def instance_types_spots(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
1897
1893
  pulumi.set(self, "instance_types_spots", value)
1898
1894
 
1899
1895
  @property
@@ -2009,23 +2005,23 @@ class _ElastigroupState:
2009
2005
 
2010
2006
  @property
2011
2007
  @pulumi.getter(name="keyName")
2012
- def key_name(self) -> Optional[pulumi.Input[str]]:
2008
+ def key_name(self) -> Optional[pulumi.Input[builtins.str]]:
2013
2009
  """
2014
2010
  The key name that should be used for the instance.
2015
2011
  """
2016
2012
  return pulumi.get(self, "key_name")
2017
2013
 
2018
2014
  @key_name.setter
2019
- def key_name(self, value: Optional[pulumi.Input[str]]):
2015
+ def key_name(self, value: Optional[pulumi.Input[builtins.str]]):
2020
2016
  pulumi.set(self, "key_name", value)
2021
2017
 
2022
2018
  @property
2023
2019
  @pulumi.getter(name="lifetimePeriod")
2024
- def lifetime_period(self) -> Optional[pulumi.Input[str]]:
2020
+ def lifetime_period(self) -> Optional[pulumi.Input[builtins.str]]:
2025
2021
  return pulumi.get(self, "lifetime_period")
2026
2022
 
2027
2023
  @lifetime_period.setter
2028
- def lifetime_period(self, value: Optional[pulumi.Input[str]]):
2024
+ def lifetime_period(self, value: Optional[pulumi.Input[builtins.str]]):
2029
2025
  pulumi.set(self, "lifetime_period", value)
2030
2026
 
2031
2027
  @property
@@ -2042,26 +2038,23 @@ class _ElastigroupState:
2042
2038
 
2043
2039
  @property
2044
2040
  @pulumi.getter(name="maxReplacementsPercentage")
2045
- def max_replacements_percentage(self) -> Optional[pulumi.Input[int]]:
2046
- """
2047
- The percentage of active instances that can be replaced in parallel. This is used to prevent a large number of instances from being replaced at once.
2048
- """
2041
+ def max_replacements_percentage(self) -> Optional[pulumi.Input[builtins.int]]:
2049
2042
  return pulumi.get(self, "max_replacements_percentage")
2050
2043
 
2051
2044
  @max_replacements_percentage.setter
2052
- def max_replacements_percentage(self, value: Optional[pulumi.Input[int]]):
2045
+ def max_replacements_percentage(self, value: Optional[pulumi.Input[builtins.int]]):
2053
2046
  pulumi.set(self, "max_replacements_percentage", value)
2054
2047
 
2055
2048
  @property
2056
2049
  @pulumi.getter(name="maxSize")
2057
- def max_size(self) -> Optional[pulumi.Input[int]]:
2050
+ def max_size(self) -> Optional[pulumi.Input[builtins.int]]:
2058
2051
  """
2059
2052
  The maximum number of instances the group should have at any time.
2060
2053
  """
2061
2054
  return pulumi.get(self, "max_size")
2062
2055
 
2063
2056
  @max_size.setter
2064
- def max_size(self, value: Optional[pulumi.Input[int]]):
2057
+ def max_size(self, value: Optional[pulumi.Input[builtins.int]]):
2065
2058
  pulumi.set(self, "max_size", value)
2066
2059
 
2067
2060
  @property
@@ -2078,26 +2071,26 @@ class _ElastigroupState:
2078
2071
 
2079
2072
  @property
2080
2073
  @pulumi.getter(name="minSize")
2081
- def min_size(self) -> Optional[pulumi.Input[int]]:
2074
+ def min_size(self) -> Optional[pulumi.Input[builtins.int]]:
2082
2075
  """
2083
2076
  The minimum number of instances the group should have at any time.
2084
2077
  """
2085
2078
  return pulumi.get(self, "min_size")
2086
2079
 
2087
2080
  @min_size.setter
2088
- def min_size(self, value: Optional[pulumi.Input[int]]):
2081
+ def min_size(self, value: Optional[pulumi.Input[builtins.int]]):
2089
2082
  pulumi.set(self, "min_size", value)
2090
2083
 
2091
2084
  @property
2092
2085
  @pulumi.getter(name="minimumInstanceLifetime")
2093
- def minimum_instance_lifetime(self) -> Optional[pulumi.Input[int]]:
2086
+ def minimum_instance_lifetime(self) -> Optional[pulumi.Input[builtins.int]]:
2094
2087
  """
2095
2088
  Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
2096
2089
  """
2097
2090
  return pulumi.get(self, "minimum_instance_lifetime")
2098
2091
 
2099
2092
  @minimum_instance_lifetime.setter
2100
- def minimum_instance_lifetime(self, value: Optional[pulumi.Input[int]]):
2093
+ def minimum_instance_lifetime(self, value: Optional[pulumi.Input[builtins.int]]):
2101
2094
  pulumi.set(self, "minimum_instance_lifetime", value)
2102
2095
 
2103
2096
  @property
@@ -2111,14 +2104,14 @@ class _ElastigroupState:
2111
2104
 
2112
2105
  @property
2113
2106
  @pulumi.getter
2114
- def name(self) -> Optional[pulumi.Input[str]]:
2107
+ def name(self) -> Optional[pulumi.Input[builtins.str]]:
2115
2108
  """
2116
2109
  The group name.
2117
2110
  """
2118
2111
  return pulumi.get(self, "name")
2119
2112
 
2120
2113
  @name.setter
2121
- def name(self, value: Optional[pulumi.Input[str]]):
2114
+ def name(self, value: Optional[pulumi.Input[builtins.str]]):
2122
2115
  pulumi.set(self, "name", value)
2123
2116
 
2124
2117
  @property
@@ -2132,82 +2125,82 @@ class _ElastigroupState:
2132
2125
 
2133
2126
  @property
2134
2127
  @pulumi.getter(name="onDemandTypes")
2135
- def on_demand_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
2128
+ def on_demand_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
2136
2129
  """
2137
2130
  Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
2138
2131
  """
2139
2132
  return pulumi.get(self, "on_demand_types")
2140
2133
 
2141
2134
  @on_demand_types.setter
2142
- def on_demand_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
2135
+ def on_demand_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
2143
2136
  pulumi.set(self, "on_demand_types", value)
2144
2137
 
2145
2138
  @property
2146
2139
  @pulumi.getter(name="ondemandCount")
2147
- def ondemand_count(self) -> Optional[pulumi.Input[int]]:
2140
+ def ondemand_count(self) -> Optional[pulumi.Input[builtins.int]]:
2148
2141
  """
2149
2142
  Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the `spot_percentage` parameter is being ignored.
2150
2143
  """
2151
2144
  return pulumi.get(self, "ondemand_count")
2152
2145
 
2153
2146
  @ondemand_count.setter
2154
- def ondemand_count(self, value: Optional[pulumi.Input[int]]):
2147
+ def ondemand_count(self, value: Optional[pulumi.Input[builtins.int]]):
2155
2148
  pulumi.set(self, "ondemand_count", value)
2156
2149
 
2157
2150
  @property
2158
2151
  @pulumi.getter
2159
- def orientation(self) -> Optional[pulumi.Input[str]]:
2152
+ def orientation(self) -> Optional[pulumi.Input[builtins.str]]:
2160
2153
  """
2161
2154
  Select a prediction strategy. Valid values: `balanced`, `costOriented`, `equalAzDistribution`, `availabilityOriented`. You can read more in our documentation.
2162
2155
  """
2163
2156
  return pulumi.get(self, "orientation")
2164
2157
 
2165
2158
  @orientation.setter
2166
- def orientation(self, value: Optional[pulumi.Input[str]]):
2159
+ def orientation(self, value: Optional[pulumi.Input[builtins.str]]):
2167
2160
  pulumi.set(self, "orientation", value)
2168
2161
 
2169
2162
  @property
2170
2163
  @pulumi.getter(name="persistBlockDevices")
2171
- def persist_block_devices(self) -> Optional[pulumi.Input[bool]]:
2164
+ def persist_block_devices(self) -> Optional[pulumi.Input[builtins.bool]]:
2172
2165
  return pulumi.get(self, "persist_block_devices")
2173
2166
 
2174
2167
  @persist_block_devices.setter
2175
- def persist_block_devices(self, value: Optional[pulumi.Input[bool]]):
2168
+ def persist_block_devices(self, value: Optional[pulumi.Input[builtins.bool]]):
2176
2169
  pulumi.set(self, "persist_block_devices", value)
2177
2170
 
2178
2171
  @property
2179
2172
  @pulumi.getter(name="persistPrivateIp")
2180
- def persist_private_ip(self) -> Optional[pulumi.Input[bool]]:
2173
+ def persist_private_ip(self) -> Optional[pulumi.Input[builtins.bool]]:
2181
2174
  return pulumi.get(self, "persist_private_ip")
2182
2175
 
2183
2176
  @persist_private_ip.setter
2184
- def persist_private_ip(self, value: Optional[pulumi.Input[bool]]):
2177
+ def persist_private_ip(self, value: Optional[pulumi.Input[builtins.bool]]):
2185
2178
  pulumi.set(self, "persist_private_ip", value)
2186
2179
 
2187
2180
  @property
2188
2181
  @pulumi.getter(name="persistRootDevice")
2189
- def persist_root_device(self) -> Optional[pulumi.Input[bool]]:
2182
+ def persist_root_device(self) -> Optional[pulumi.Input[builtins.bool]]:
2190
2183
  return pulumi.get(self, "persist_root_device")
2191
2184
 
2192
2185
  @persist_root_device.setter
2193
- def persist_root_device(self, value: Optional[pulumi.Input[bool]]):
2186
+ def persist_root_device(self, value: Optional[pulumi.Input[builtins.bool]]):
2194
2187
  pulumi.set(self, "persist_root_device", value)
2195
2188
 
2196
2189
  @property
2197
2190
  @pulumi.getter(name="placementTenancy")
2198
- def placement_tenancy(self) -> Optional[pulumi.Input[str]]:
2191
+ def placement_tenancy(self) -> Optional[pulumi.Input[builtins.str]]:
2199
2192
  """
2200
2193
  Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
2201
2194
  """
2202
2195
  return pulumi.get(self, "placement_tenancy")
2203
2196
 
2204
2197
  @placement_tenancy.setter
2205
- def placement_tenancy(self, value: Optional[pulumi.Input[str]]):
2198
+ def placement_tenancy(self, value: Optional[pulumi.Input[builtins.str]]):
2206
2199
  pulumi.set(self, "placement_tenancy", value)
2207
2200
 
2208
2201
  @property
2209
2202
  @pulumi.getter(name="preferredAvailabilityZones")
2210
- def preferred_availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
2203
+ def preferred_availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
2211
2204
  """
2212
2205
  The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs.
2213
2206
  Note: Must be a sublist of `availability_zones` and `orientation` value must not be `"equalAzDistribution"`.
@@ -2215,21 +2208,21 @@ class _ElastigroupState:
2215
2208
  return pulumi.get(self, "preferred_availability_zones")
2216
2209
 
2217
2210
  @preferred_availability_zones.setter
2218
- def preferred_availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
2211
+ def preferred_availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
2219
2212
  pulumi.set(self, "preferred_availability_zones", value)
2220
2213
 
2221
2214
  @property
2222
2215
  @pulumi.getter(name="privateIps")
2223
- def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
2216
+ def private_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
2224
2217
  return pulumi.get(self, "private_ips")
2225
2218
 
2226
2219
  @private_ips.setter
2227
- def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
2220
+ def private_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
2228
2221
  pulumi.set(self, "private_ips", value)
2229
2222
 
2230
2223
  @property
2231
2224
  @pulumi.getter
2232
- def product(self) -> Optional[pulumi.Input[str]]:
2225
+ def product(self) -> Optional[pulumi.Input[builtins.str]]:
2233
2226
  """
2234
2227
  Operation system type. Valid values: `"Linux/UNIX"`, `"SUSE Linux"`, `"Windows"`.
2235
2228
  For EC2 Classic instances: `"SUSE Linux (Amazon VPC)"`, `"Windows (Amazon VPC)"`.
@@ -2237,12 +2230,12 @@ class _ElastigroupState:
2237
2230
  return pulumi.get(self, "product")
2238
2231
 
2239
2232
  @product.setter
2240
- def product(self, value: Optional[pulumi.Input[str]]):
2233
+ def product(self, value: Optional[pulumi.Input[builtins.str]]):
2241
2234
  pulumi.set(self, "product", value)
2242
2235
 
2243
2236
  @property
2244
2237
  @pulumi.getter
2245
- def region(self) -> Optional[pulumi.Input[str]]:
2238
+ def region(self) -> Optional[pulumi.Input[builtins.str]]:
2246
2239
  """
2247
2240
  The AWS region your group will be created in.
2248
2241
  Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
@@ -2250,7 +2243,7 @@ class _ElastigroupState:
2250
2243
  return pulumi.get(self, "region")
2251
2244
 
2252
2245
  @region.setter
2253
- def region(self, value: Optional[pulumi.Input[str]]):
2246
+ def region(self, value: Optional[pulumi.Input[builtins.str]]):
2254
2247
  pulumi.set(self, "region", value)
2255
2248
 
2256
2249
  @property
@@ -2279,14 +2272,14 @@ class _ElastigroupState:
2279
2272
 
2280
2273
  @property
2281
2274
  @pulumi.getter(name="restrictSingleAz")
2282
- def restrict_single_az(self) -> Optional[pulumi.Input[bool]]:
2275
+ def restrict_single_az(self) -> Optional[pulumi.Input[builtins.bool]]:
2283
2276
  """
2284
2277
  Elastigroup will automatically scale your instances in the most available and cost efficient availability zone. Every evaluation will be done when there are no active instances in the group.
2285
2278
  """
2286
2279
  return pulumi.get(self, "restrict_single_az")
2287
2280
 
2288
2281
  @restrict_single_az.setter
2289
- def restrict_single_az(self, value: Optional[pulumi.Input[bool]]):
2282
+ def restrict_single_az(self, value: Optional[pulumi.Input[builtins.bool]]):
2290
2283
  pulumi.set(self, "restrict_single_az", value)
2291
2284
 
2292
2285
  @property
@@ -2351,26 +2344,26 @@ class _ElastigroupState:
2351
2344
 
2352
2345
  @property
2353
2346
  @pulumi.getter(name="securityGroups")
2354
- def security_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
2347
+ def security_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
2355
2348
  """
2356
2349
  A list of associated security group IDS.
2357
2350
  """
2358
2351
  return pulumi.get(self, "security_groups")
2359
2352
 
2360
2353
  @security_groups.setter
2361
- def security_groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
2354
+ def security_groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
2362
2355
  pulumi.set(self, "security_groups", value)
2363
2356
 
2364
2357
  @property
2365
2358
  @pulumi.getter(name="shutdownScript")
2366
- def shutdown_script(self) -> Optional[pulumi.Input[str]]:
2359
+ def shutdown_script(self) -> Optional[pulumi.Input[builtins.str]]:
2367
2360
  """
2368
2361
  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/)
2369
2362
  """
2370
2363
  return pulumi.get(self, "shutdown_script")
2371
2364
 
2372
2365
  @shutdown_script.setter
2373
- def shutdown_script(self, value: Optional[pulumi.Input[str]]):
2366
+ def shutdown_script(self, value: Optional[pulumi.Input[builtins.str]]):
2374
2367
  pulumi.set(self, "shutdown_script", value)
2375
2368
 
2376
2369
  @property
@@ -2384,14 +2377,14 @@ class _ElastigroupState:
2384
2377
 
2385
2378
  @property
2386
2379
  @pulumi.getter(name="spotPercentage")
2387
- def spot_percentage(self) -> Optional[pulumi.Input[int]]:
2380
+ def spot_percentage(self) -> Optional[pulumi.Input[builtins.int]]:
2388
2381
  """
2389
2382
  The percentage of Spot instances that would spin up from the `desired_capacity` number.
2390
2383
  """
2391
2384
  return pulumi.get(self, "spot_percentage")
2392
2385
 
2393
2386
  @spot_percentage.setter
2394
- def spot_percentage(self, value: Optional[pulumi.Input[int]]):
2387
+ def spot_percentage(self, value: Optional[pulumi.Input[builtins.int]]):
2395
2388
  pulumi.set(self, "spot_percentage", value)
2396
2389
 
2397
2390
  @property
@@ -2415,7 +2408,7 @@ class _ElastigroupState:
2415
2408
  @property
2416
2409
  @pulumi.getter(name="subnetIds")
2417
2410
  @_utilities.deprecated("""This field will soon be deprecated and handled by availability_zones""")
2418
- def subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
2411
+ def subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
2419
2412
  """
2420
2413
  List of Strings of subnet identifiers.
2421
2414
  Note: When this parameter is set, `availability_zones` should be left unused.
@@ -2423,7 +2416,7 @@ class _ElastigroupState:
2423
2416
  return pulumi.get(self, "subnet_ids")
2424
2417
 
2425
2418
  @subnet_ids.setter
2426
- def subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
2419
+ def subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
2427
2420
  pulumi.set(self, "subnet_ids", value)
2428
2421
 
2429
2422
  @property
@@ -2440,11 +2433,11 @@ class _ElastigroupState:
2440
2433
 
2441
2434
  @property
2442
2435
  @pulumi.getter(name="targetGroupArns")
2443
- def target_group_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
2436
+ def target_group_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
2444
2437
  return pulumi.get(self, "target_group_arns")
2445
2438
 
2446
2439
  @target_group_arns.setter
2447
- def target_group_arns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
2440
+ def target_group_arns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
2448
2441
  pulumi.set(self, "target_group_arns", value)
2449
2442
 
2450
2443
  @property
@@ -2458,59 +2451,59 @@ class _ElastigroupState:
2458
2451
 
2459
2452
  @property
2460
2453
  @pulumi.getter(name="userData")
2461
- def user_data(self) -> Optional[pulumi.Input[str]]:
2454
+ def user_data(self) -> Optional[pulumi.Input[builtins.str]]:
2462
2455
  """
2463
2456
  The user data to provide when launching the instance.
2464
2457
  """
2465
2458
  return pulumi.get(self, "user_data")
2466
2459
 
2467
2460
  @user_data.setter
2468
- def user_data(self, value: Optional[pulumi.Input[str]]):
2461
+ def user_data(self, value: Optional[pulumi.Input[builtins.str]]):
2469
2462
  pulumi.set(self, "user_data", value)
2470
2463
 
2471
2464
  @property
2472
2465
  @pulumi.getter(name="utilizeCommitments")
2473
- def utilize_commitments(self) -> Optional[pulumi.Input[bool]]:
2466
+ def utilize_commitments(self) -> Optional[pulumi.Input[builtins.bool]]:
2474
2467
  return pulumi.get(self, "utilize_commitments")
2475
2468
 
2476
2469
  @utilize_commitments.setter
2477
- def utilize_commitments(self, value: Optional[pulumi.Input[bool]]):
2470
+ def utilize_commitments(self, value: Optional[pulumi.Input[builtins.bool]]):
2478
2471
  pulumi.set(self, "utilize_commitments", value)
2479
2472
 
2480
2473
  @property
2481
2474
  @pulumi.getter(name="utilizeReservedInstances")
2482
- def utilize_reserved_instances(self) -> Optional[pulumi.Input[bool]]:
2475
+ def utilize_reserved_instances(self) -> Optional[pulumi.Input[builtins.bool]]:
2483
2476
  """
2484
2477
  In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
2485
2478
  """
2486
2479
  return pulumi.get(self, "utilize_reserved_instances")
2487
2480
 
2488
2481
  @utilize_reserved_instances.setter
2489
- def utilize_reserved_instances(self, value: Optional[pulumi.Input[bool]]):
2482
+ def utilize_reserved_instances(self, value: Optional[pulumi.Input[builtins.bool]]):
2490
2483
  pulumi.set(self, "utilize_reserved_instances", value)
2491
2484
 
2492
2485
  @property
2493
2486
  @pulumi.getter(name="waitForCapacity")
2494
- def wait_for_capacity(self) -> Optional[pulumi.Input[int]]:
2487
+ def wait_for_capacity(self) -> Optional[pulumi.Input[builtins.int]]:
2495
2488
  """
2496
2489
  Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed `desired_capacity`.
2497
2490
  """
2498
2491
  return pulumi.get(self, "wait_for_capacity")
2499
2492
 
2500
2493
  @wait_for_capacity.setter
2501
- def wait_for_capacity(self, value: Optional[pulumi.Input[int]]):
2494
+ def wait_for_capacity(self, value: Optional[pulumi.Input[builtins.int]]):
2502
2495
  pulumi.set(self, "wait_for_capacity", value)
2503
2496
 
2504
2497
  @property
2505
2498
  @pulumi.getter(name="waitForCapacityTimeout")
2506
- def wait_for_capacity_timeout(self) -> Optional[pulumi.Input[int]]:
2499
+ def wait_for_capacity_timeout(self) -> Optional[pulumi.Input[builtins.int]]:
2507
2500
  """
2508
2501
  Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to `0` to indicate no wait. This is ignored when updating with blue/green deployment.
2509
2502
  """
2510
2503
  return pulumi.get(self, "wait_for_capacity_timeout")
2511
2504
 
2512
2505
  @wait_for_capacity_timeout.setter
2513
- def wait_for_capacity_timeout(self, value: Optional[pulumi.Input[int]]):
2506
+ def wait_for_capacity_timeout(self, value: Optional[pulumi.Input[builtins.int]]):
2514
2507
  pulumi.set(self, "wait_for_capacity_timeout", value)
2515
2508
 
2516
2509
 
@@ -2519,33 +2512,33 @@ class Elastigroup(pulumi.CustomResource):
2519
2512
  def __init__(__self__,
2520
2513
  resource_name: str,
2521
2514
  opts: Optional[pulumi.ResourceOptions] = None,
2522
- auto_healing: Optional[pulumi.Input[bool]] = None,
2523
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2524
- block_devices_mode: Optional[pulumi.Input[str]] = None,
2525
- capacity_unit: Optional[pulumi.Input[str]] = None,
2526
- consider_od_pricing: Optional[pulumi.Input[bool]] = None,
2527
- cpu_credits: Optional[pulumi.Input[str]] = None,
2515
+ auto_healing: Optional[pulumi.Input[builtins.bool]] = None,
2516
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2517
+ block_devices_mode: Optional[pulumi.Input[builtins.str]] = None,
2518
+ capacity_unit: Optional[pulumi.Input[builtins.str]] = None,
2519
+ consider_od_pricing: Optional[pulumi.Input[builtins.bool]] = None,
2520
+ cpu_credits: Optional[pulumi.Input[builtins.str]] = None,
2528
2521
  cpu_options: Optional[pulumi.Input[Union['ElastigroupCpuOptionsArgs', 'ElastigroupCpuOptionsArgsDict']]] = None,
2529
- description: Optional[pulumi.Input[str]] = None,
2530
- desired_capacity: Optional[pulumi.Input[int]] = None,
2531
- draining_timeout: Optional[pulumi.Input[int]] = None,
2522
+ description: Optional[pulumi.Input[builtins.str]] = None,
2523
+ desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
2524
+ draining_timeout: Optional[pulumi.Input[builtins.int]] = None,
2532
2525
  ebs_block_devices: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupEbsBlockDeviceArgs', 'ElastigroupEbsBlockDeviceArgsDict']]]]] = None,
2533
- ebs_optimized: Optional[pulumi.Input[bool]] = None,
2534
- elastic_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2535
- elastic_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2536
- enable_monitoring: Optional[pulumi.Input[bool]] = None,
2526
+ ebs_optimized: Optional[pulumi.Input[builtins.bool]] = None,
2527
+ elastic_ips: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2528
+ elastic_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2529
+ enable_monitoring: Optional[pulumi.Input[builtins.bool]] = None,
2537
2530
  ephemeral_block_devices: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupEphemeralBlockDeviceArgs', 'ElastigroupEphemeralBlockDeviceArgsDict']]]]] = None,
2538
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
2539
- health_check_grace_period: Optional[pulumi.Input[int]] = None,
2540
- health_check_type: Optional[pulumi.Input[str]] = None,
2541
- health_check_unhealthy_duration_before_replacement: Optional[pulumi.Input[int]] = None,
2542
- iam_instance_profile: Optional[pulumi.Input[str]] = None,
2543
- image_id: Optional[pulumi.Input[str]] = None,
2531
+ fallback_to_ondemand: Optional[pulumi.Input[builtins.bool]] = None,
2532
+ health_check_grace_period: Optional[pulumi.Input[builtins.int]] = None,
2533
+ health_check_type: Optional[pulumi.Input[builtins.str]] = None,
2534
+ health_check_unhealthy_duration_before_replacement: Optional[pulumi.Input[builtins.int]] = None,
2535
+ iam_instance_profile: Optional[pulumi.Input[builtins.str]] = None,
2536
+ image_id: Optional[pulumi.Input[builtins.str]] = None,
2544
2537
  images: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupImageArgs', 'ElastigroupImageArgsDict']]]]] = None,
2545
- immediate_od_recover_threshold: Optional[pulumi.Input[int]] = None,
2546
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
2547
- instance_types_preferred_spots: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2548
- instance_types_spots: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2538
+ immediate_od_recover_threshold: Optional[pulumi.Input[builtins.int]] = None,
2539
+ instance_types_ondemand: Optional[pulumi.Input[builtins.str]] = None,
2540
+ instance_types_preferred_spots: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2541
+ instance_types_spots: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2549
2542
  instance_types_weights: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupInstanceTypesWeightArgs', 'ElastigroupInstanceTypesWeightArgsDict']]]]] = None,
2550
2543
  integration_beanstalk: Optional[pulumi.Input[Union['ElastigroupIntegrationBeanstalkArgs', 'ElastigroupIntegrationBeanstalkArgsDict']]] = None,
2551
2544
  integration_codedeploy: Optional[pulumi.Input[Union['ElastigroupIntegrationCodedeployArgs', 'ElastigroupIntegrationCodedeployArgsDict']]] = None,
@@ -2558,52 +2551,52 @@ class Elastigroup(pulumi.CustomResource):
2558
2551
  integration_rancher: Optional[pulumi.Input[Union['ElastigroupIntegrationRancherArgs', 'ElastigroupIntegrationRancherArgsDict']]] = None,
2559
2552
  integration_route53: Optional[pulumi.Input[Union['ElastigroupIntegrationRoute53Args', 'ElastigroupIntegrationRoute53ArgsDict']]] = None,
2560
2553
  itfs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupItfArgs', 'ElastigroupItfArgsDict']]]]] = None,
2561
- key_name: Optional[pulumi.Input[str]] = None,
2562
- lifetime_period: Optional[pulumi.Input[str]] = None,
2554
+ key_name: Optional[pulumi.Input[builtins.str]] = None,
2555
+ lifetime_period: Optional[pulumi.Input[builtins.str]] = None,
2563
2556
  logging: Optional[pulumi.Input[Union['ElastigroupLoggingArgs', 'ElastigroupLoggingArgsDict']]] = None,
2564
- max_replacements_percentage: Optional[pulumi.Input[int]] = None,
2565
- max_size: Optional[pulumi.Input[int]] = None,
2557
+ max_replacements_percentage: Optional[pulumi.Input[builtins.int]] = None,
2558
+ max_size: Optional[pulumi.Input[builtins.int]] = None,
2566
2559
  metadata_options: Optional[pulumi.Input[Union['ElastigroupMetadataOptionsArgs', 'ElastigroupMetadataOptionsArgsDict']]] = None,
2567
- min_size: Optional[pulumi.Input[int]] = None,
2568
- minimum_instance_lifetime: Optional[pulumi.Input[int]] = None,
2560
+ min_size: Optional[pulumi.Input[builtins.int]] = None,
2561
+ minimum_instance_lifetime: Optional[pulumi.Input[builtins.int]] = None,
2569
2562
  multiple_metrics: Optional[pulumi.Input[Union['ElastigroupMultipleMetricsArgs', 'ElastigroupMultipleMetricsArgsDict']]] = None,
2570
- name: Optional[pulumi.Input[str]] = None,
2563
+ name: Optional[pulumi.Input[builtins.str]] = None,
2571
2564
  network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupNetworkInterfaceArgs', 'ElastigroupNetworkInterfaceArgsDict']]]]] = None,
2572
- on_demand_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2573
- ondemand_count: Optional[pulumi.Input[int]] = None,
2574
- orientation: Optional[pulumi.Input[str]] = None,
2575
- persist_block_devices: Optional[pulumi.Input[bool]] = None,
2576
- persist_private_ip: Optional[pulumi.Input[bool]] = None,
2577
- persist_root_device: Optional[pulumi.Input[bool]] = None,
2578
- placement_tenancy: Optional[pulumi.Input[str]] = None,
2579
- preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2580
- private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2581
- product: Optional[pulumi.Input[str]] = None,
2582
- region: Optional[pulumi.Input[str]] = None,
2565
+ on_demand_types: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2566
+ ondemand_count: Optional[pulumi.Input[builtins.int]] = None,
2567
+ orientation: Optional[pulumi.Input[builtins.str]] = None,
2568
+ persist_block_devices: Optional[pulumi.Input[builtins.bool]] = None,
2569
+ persist_private_ip: Optional[pulumi.Input[builtins.bool]] = None,
2570
+ persist_root_device: Optional[pulumi.Input[builtins.bool]] = None,
2571
+ placement_tenancy: Optional[pulumi.Input[builtins.str]] = None,
2572
+ preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2573
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2574
+ product: Optional[pulumi.Input[builtins.str]] = None,
2575
+ region: Optional[pulumi.Input[builtins.str]] = None,
2583
2576
  resource_requirements: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupResourceRequirementArgs', 'ElastigroupResourceRequirementArgsDict']]]]] = None,
2584
2577
  resource_tag_specifications: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupResourceTagSpecificationArgs', 'ElastigroupResourceTagSpecificationArgsDict']]]]] = None,
2585
- restrict_single_az: Optional[pulumi.Input[bool]] = None,
2578
+ restrict_single_az: Optional[pulumi.Input[builtins.bool]] = None,
2586
2579
  revert_to_spot: Optional[pulumi.Input[Union['ElastigroupRevertToSpotArgs', 'ElastigroupRevertToSpotArgsDict']]] = None,
2587
2580
  scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingDownPolicyArgs', 'ElastigroupScalingDownPolicyArgsDict']]]]] = None,
2588
2581
  scaling_strategies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingStrategyArgs', 'ElastigroupScalingStrategyArgsDict']]]]] = None,
2589
2582
  scaling_target_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingTargetPolicyArgs', 'ElastigroupScalingTargetPolicyArgsDict']]]]] = None,
2590
2583
  scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingUpPolicyArgs', 'ElastigroupScalingUpPolicyArgsDict']]]]] = None,
2591
2584
  scheduled_tasks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScheduledTaskArgs', 'ElastigroupScheduledTaskArgsDict']]]]] = None,
2592
- security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2593
- shutdown_script: Optional[pulumi.Input[str]] = None,
2585
+ security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2586
+ shutdown_script: Optional[pulumi.Input[builtins.str]] = None,
2594
2587
  signals: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupSignalArgs', 'ElastigroupSignalArgsDict']]]]] = None,
2595
- spot_percentage: Optional[pulumi.Input[int]] = None,
2588
+ spot_percentage: Optional[pulumi.Input[builtins.int]] = None,
2596
2589
  stateful_deallocation: Optional[pulumi.Input[Union['ElastigroupStatefulDeallocationArgs', 'ElastigroupStatefulDeallocationArgsDict']]] = None,
2597
2590
  stateful_instance_actions: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupStatefulInstanceActionArgs', 'ElastigroupStatefulInstanceActionArgsDict']]]]] = None,
2598
- subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2591
+ subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2599
2592
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupTagArgs', 'ElastigroupTagArgsDict']]]]] = None,
2600
- target_group_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2593
+ target_group_arns: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2601
2594
  update_policy: Optional[pulumi.Input[Union['ElastigroupUpdatePolicyArgs', 'ElastigroupUpdatePolicyArgsDict']]] = None,
2602
- user_data: Optional[pulumi.Input[str]] = None,
2603
- utilize_commitments: Optional[pulumi.Input[bool]] = None,
2604
- utilize_reserved_instances: Optional[pulumi.Input[bool]] = None,
2605
- wait_for_capacity: Optional[pulumi.Input[int]] = None,
2606
- wait_for_capacity_timeout: Optional[pulumi.Input[int]] = None,
2595
+ user_data: Optional[pulumi.Input[builtins.str]] = None,
2596
+ utilize_commitments: Optional[pulumi.Input[builtins.bool]] = None,
2597
+ utilize_reserved_instances: Optional[pulumi.Input[builtins.bool]] = None,
2598
+ wait_for_capacity: Optional[pulumi.Input[builtins.int]] = None,
2599
+ wait_for_capacity_timeout: Optional[pulumi.Input[builtins.int]] = None,
2607
2600
  __props__=None):
2608
2601
  """
2609
2602
  Provides a Spotinst AWS group resource.
@@ -2744,64 +2737,63 @@ class Elastigroup(pulumi.CustomResource):
2744
2737
 
2745
2738
  :param str resource_name: The name of the resource.
2746
2739
  :param pulumi.ResourceOptions opts: Options for the resource.
2747
- :param pulumi.Input[bool] auto_healing: Auto-healing replacement won't be triggered if this parameter value is "false". In a case of a stateful group - no recycling will start if this parameter value is "false".
2748
- :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: List of Strings of availability zones. When this parameter is set, `subnet_ids` should be left unused.
2740
+ :param pulumi.Input[builtins.bool] auto_healing: Auto-healing replacement won't be triggered if this parameter value is "false". In a case of a stateful group - no recycling will start if this parameter value is "false".
2741
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] availability_zones: List of Strings of availability zones. When this parameter is set, `subnet_ids` should be left unused.
2749
2742
  Note: `availability_zones` naming syntax follows the convention `availability-zone:subnet:placement-group-name`. For example, to set an AZ in `us-east-1` with subnet `subnet-123456` and placement group `ClusterI03`, you would set:
2750
2743
  `availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]`
2751
- :param pulumi.Input[str] capacity_unit: The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: `instance`, `weight`.
2752
- :param pulumi.Input[str] cpu_credits: Controls how T3 instances are launched. Valid values: `standard`, `unlimited`.
2744
+ :param pulumi.Input[builtins.str] capacity_unit: The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: `instance`, `weight`.
2745
+ :param pulumi.Input[builtins.str] cpu_credits: Controls how T3 instances are launched. Valid values: `standard`, `unlimited`.
2753
2746
  :param pulumi.Input[Union['ElastigroupCpuOptionsArgs', 'ElastigroupCpuOptionsArgsDict']] cpu_options: The CPU options for the instances that are launched within the group:
2754
- :param pulumi.Input[str] description: The group description.
2755
- :param pulumi.Input[int] desired_capacity: The desired number of instances the group should have at any time.
2756
- :param pulumi.Input[int] draining_timeout: The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
2757
- :param pulumi.Input[bool] ebs_optimized: Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
2758
- :param pulumi.Input[Sequence[pulumi.Input[str]]] elastic_ips: A list of [AWS Elastic IP](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) allocation IDs to associate to the group instances.
2759
- :param pulumi.Input[bool] enable_monitoring: Indicates whether monitoring is enabled for the instance.
2760
- :param pulumi.Input[bool] fallback_to_ondemand: In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
2761
- :param pulumi.Input[int] health_check_grace_period: The amount of time, in seconds, after the instance has launched to starts and check its health.
2762
- :param pulumi.Input[str] health_check_type: The service that will perform health checks for the instance. Valid values: `"ELB"`, `"HCS"`, `"TARGET_GROUP"`, `"EC2"`, `"K8S_NODE"`, `"NOMAD_NODE"`, `"ECS_CLUSTER_INSTANCE"`.
2763
- :param pulumi.Input[int] health_check_unhealthy_duration_before_replacement: The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
2764
- :param pulumi.Input[str] iam_instance_profile: The ARN or name of an IAM instance profile to associate with launched instances.
2765
- :param pulumi.Input[str] image_id: The ID of the AMI used to launch the instance.
2747
+ :param pulumi.Input[builtins.str] description: The group description.
2748
+ :param pulumi.Input[builtins.int] desired_capacity: The desired number of instances the group should have at any time.
2749
+ :param pulumi.Input[builtins.int] draining_timeout: The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
2750
+ :param pulumi.Input[builtins.bool] ebs_optimized: Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
2751
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] elastic_ips: A list of [AWS Elastic IP](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) allocation IDs to associate to the group instances.
2752
+ :param pulumi.Input[builtins.bool] enable_monitoring: Indicates whether monitoring is enabled for the instance.
2753
+ :param pulumi.Input[builtins.bool] fallback_to_ondemand: In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
2754
+ :param pulumi.Input[builtins.int] health_check_grace_period: The amount of time, in seconds, after the instance has launched to starts and check its health.
2755
+ :param pulumi.Input[builtins.str] health_check_type: The service that will perform health checks for the instance. Valid values: `"ELB"`, `"HCS"`, `"TARGET_GROUP"`, `"EC2"`, `"K8S_NODE"`, `"NOMAD_NODE"`, `"ECS_CLUSTER_INSTANCE"`.
2756
+ :param pulumi.Input[builtins.int] health_check_unhealthy_duration_before_replacement: The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
2757
+ :param pulumi.Input[builtins.str] iam_instance_profile: The ARN or name of an IAM instance profile to associate with launched instances.
2758
+ :param pulumi.Input[builtins.str] image_id: The ID of the AMI used to launch the instance.
2766
2759
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupImageArgs', 'ElastigroupImageArgsDict']]]] images: An array of image objects.
2767
2760
  Note: Elastigroup can be configured with either imageId or images, but not both.
2768
- :param pulumi.Input[str] instance_types_ondemand: The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
2769
- :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types_preferred_spots: Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
2770
- :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types_spots: One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
2761
+ :param pulumi.Input[builtins.str] instance_types_ondemand: The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
2762
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] instance_types_preferred_spots: Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
2763
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] instance_types_spots: One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
2771
2764
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupInstanceTypesWeightArgs', 'ElastigroupInstanceTypesWeightArgsDict']]]] instance_types_weights: List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
2772
- :param pulumi.Input[str] key_name: The key name that should be used for the instance.
2765
+ :param pulumi.Input[builtins.str] key_name: The key name that should be used for the instance.
2773
2766
  :param pulumi.Input[Union['ElastigroupLoggingArgs', 'ElastigroupLoggingArgsDict']] logging: Logging configuration.
2774
- :param pulumi.Input[int] max_replacements_percentage: The percentage of active instances that can be replaced in parallel. This is used to prevent a large number of instances from being replaced at once.
2775
- :param pulumi.Input[int] max_size: The maximum number of instances the group should have at any time.
2767
+ :param pulumi.Input[builtins.int] max_size: The maximum number of instances the group should have at any time.
2776
2768
  :param pulumi.Input[Union['ElastigroupMetadataOptionsArgs', 'ElastigroupMetadataOptionsArgsDict']] metadata_options: Data that used to configure or manage the running instances:
2777
- :param pulumi.Input[int] min_size: The minimum number of instances the group should have at any time.
2778
- :param pulumi.Input[int] minimum_instance_lifetime: Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
2779
- :param pulumi.Input[str] name: The group name.
2780
- :param pulumi.Input[Sequence[pulumi.Input[str]]] on_demand_types: Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
2781
- :param pulumi.Input[int] ondemand_count: Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the `spot_percentage` parameter is being ignored.
2782
- :param pulumi.Input[str] orientation: Select a prediction strategy. Valid values: `balanced`, `costOriented`, `equalAzDistribution`, `availabilityOriented`. You can read more in our documentation.
2783
- :param pulumi.Input[str] placement_tenancy: Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
2784
- :param pulumi.Input[Sequence[pulumi.Input[str]]] preferred_availability_zones: The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs.
2769
+ :param pulumi.Input[builtins.int] min_size: The minimum number of instances the group should have at any time.
2770
+ :param pulumi.Input[builtins.int] minimum_instance_lifetime: Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
2771
+ :param pulumi.Input[builtins.str] name: The group name.
2772
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] on_demand_types: Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
2773
+ :param pulumi.Input[builtins.int] ondemand_count: Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the `spot_percentage` parameter is being ignored.
2774
+ :param pulumi.Input[builtins.str] orientation: Select a prediction strategy. Valid values: `balanced`, `costOriented`, `equalAzDistribution`, `availabilityOriented`. You can read more in our documentation.
2775
+ :param pulumi.Input[builtins.str] placement_tenancy: Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
2776
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] preferred_availability_zones: The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs.
2785
2777
  Note: Must be a sublist of `availability_zones` and `orientation` value must not be `"equalAzDistribution"`.
2786
- :param pulumi.Input[str] product: Operation system type. Valid values: `"Linux/UNIX"`, `"SUSE Linux"`, `"Windows"`.
2778
+ :param pulumi.Input[builtins.str] product: Operation system type. Valid values: `"Linux/UNIX"`, `"SUSE Linux"`, `"Windows"`.
2787
2779
  For EC2 Classic instances: `"SUSE Linux (Amazon VPC)"`, `"Windows (Amazon VPC)"`.
2788
- :param pulumi.Input[str] region: The AWS region your group will be created in.
2780
+ :param pulumi.Input[builtins.str] region: The AWS region your group will be created in.
2789
2781
  Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
2790
2782
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupResourceRequirementArgs', 'ElastigroupResourceRequirementArgsDict']]]] resource_requirements: Required instance attributes. Instance types will be selected based on these requirements.
2791
2783
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupResourceTagSpecificationArgs', 'ElastigroupResourceTagSpecificationArgsDict']]]] resource_tag_specifications: User will specify which resources should be tagged with group tags.
2792
- :param pulumi.Input[bool] restrict_single_az: Elastigroup will automatically scale your instances in the most available and cost efficient availability zone. Every evaluation will be done when there are no active instances in the group.
2784
+ :param pulumi.Input[builtins.bool] restrict_single_az: Elastigroup will automatically scale your instances in the most available and cost efficient availability zone. Every evaluation will be done when there are no active instances in the group.
2793
2785
  :param pulumi.Input[Union['ElastigroupRevertToSpotArgs', 'ElastigroupRevertToSpotArgsDict']] revert_to_spot: Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: `"never"`, `"always"`, `"timeWindow"`
2794
2786
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingStrategyArgs', 'ElastigroupScalingStrategyArgsDict']]]] scaling_strategies: Set termination policy.
2795
- :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: A list of associated security group IDS.
2796
- :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/)
2797
- :param pulumi.Input[int] spot_percentage: The percentage of Spot instances that would spin up from the `desired_capacity` number.
2798
- :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: List of Strings of subnet identifiers.
2787
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] security_groups: A list of associated security group IDS.
2788
+ :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/)
2789
+ :param pulumi.Input[builtins.int] spot_percentage: The percentage of Spot instances that would spin up from the `desired_capacity` number.
2790
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] subnet_ids: List of Strings of subnet identifiers.
2799
2791
  Note: When this parameter is set, `availability_zones` should be left unused.
2800
2792
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupTagArgs', 'ElastigroupTagArgsDict']]]] tags: A key/value mapping of tags to assign to the resource.
2801
- :param pulumi.Input[str] user_data: The user data to provide when launching the instance.
2802
- :param pulumi.Input[bool] utilize_reserved_instances: In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
2803
- :param pulumi.Input[int] wait_for_capacity: Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed `desired_capacity`.
2804
- :param pulumi.Input[int] wait_for_capacity_timeout: Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to `0` to indicate no wait. This is ignored when updating with blue/green deployment.
2793
+ :param pulumi.Input[builtins.str] user_data: The user data to provide when launching the instance.
2794
+ :param pulumi.Input[builtins.bool] utilize_reserved_instances: In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
2795
+ :param pulumi.Input[builtins.int] wait_for_capacity: Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed `desired_capacity`.
2796
+ :param pulumi.Input[builtins.int] wait_for_capacity_timeout: Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to `0` to indicate no wait. This is ignored when updating with blue/green deployment.
2805
2797
  """
2806
2798
  ...
2807
2799
  @overload
@@ -2961,33 +2953,33 @@ class Elastigroup(pulumi.CustomResource):
2961
2953
  def _internal_init(__self__,
2962
2954
  resource_name: str,
2963
2955
  opts: Optional[pulumi.ResourceOptions] = None,
2964
- auto_healing: Optional[pulumi.Input[bool]] = None,
2965
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2966
- block_devices_mode: Optional[pulumi.Input[str]] = None,
2967
- capacity_unit: Optional[pulumi.Input[str]] = None,
2968
- consider_od_pricing: Optional[pulumi.Input[bool]] = None,
2969
- cpu_credits: Optional[pulumi.Input[str]] = None,
2956
+ auto_healing: Optional[pulumi.Input[builtins.bool]] = None,
2957
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2958
+ block_devices_mode: Optional[pulumi.Input[builtins.str]] = None,
2959
+ capacity_unit: Optional[pulumi.Input[builtins.str]] = None,
2960
+ consider_od_pricing: Optional[pulumi.Input[builtins.bool]] = None,
2961
+ cpu_credits: Optional[pulumi.Input[builtins.str]] = None,
2970
2962
  cpu_options: Optional[pulumi.Input[Union['ElastigroupCpuOptionsArgs', 'ElastigroupCpuOptionsArgsDict']]] = None,
2971
- description: Optional[pulumi.Input[str]] = None,
2972
- desired_capacity: Optional[pulumi.Input[int]] = None,
2973
- draining_timeout: Optional[pulumi.Input[int]] = None,
2963
+ description: Optional[pulumi.Input[builtins.str]] = None,
2964
+ desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
2965
+ draining_timeout: Optional[pulumi.Input[builtins.int]] = None,
2974
2966
  ebs_block_devices: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupEbsBlockDeviceArgs', 'ElastigroupEbsBlockDeviceArgsDict']]]]] = None,
2975
- ebs_optimized: Optional[pulumi.Input[bool]] = None,
2976
- elastic_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2977
- elastic_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2978
- enable_monitoring: Optional[pulumi.Input[bool]] = None,
2967
+ ebs_optimized: Optional[pulumi.Input[builtins.bool]] = None,
2968
+ elastic_ips: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2969
+ elastic_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2970
+ enable_monitoring: Optional[pulumi.Input[builtins.bool]] = None,
2979
2971
  ephemeral_block_devices: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupEphemeralBlockDeviceArgs', 'ElastigroupEphemeralBlockDeviceArgsDict']]]]] = None,
2980
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
2981
- health_check_grace_period: Optional[pulumi.Input[int]] = None,
2982
- health_check_type: Optional[pulumi.Input[str]] = None,
2983
- health_check_unhealthy_duration_before_replacement: Optional[pulumi.Input[int]] = None,
2984
- iam_instance_profile: Optional[pulumi.Input[str]] = None,
2985
- image_id: Optional[pulumi.Input[str]] = None,
2972
+ fallback_to_ondemand: Optional[pulumi.Input[builtins.bool]] = None,
2973
+ health_check_grace_period: Optional[pulumi.Input[builtins.int]] = None,
2974
+ health_check_type: Optional[pulumi.Input[builtins.str]] = None,
2975
+ health_check_unhealthy_duration_before_replacement: Optional[pulumi.Input[builtins.int]] = None,
2976
+ iam_instance_profile: Optional[pulumi.Input[builtins.str]] = None,
2977
+ image_id: Optional[pulumi.Input[builtins.str]] = None,
2986
2978
  images: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupImageArgs', 'ElastigroupImageArgsDict']]]]] = None,
2987
- immediate_od_recover_threshold: Optional[pulumi.Input[int]] = None,
2988
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
2989
- instance_types_preferred_spots: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2990
- instance_types_spots: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2979
+ immediate_od_recover_threshold: Optional[pulumi.Input[builtins.int]] = None,
2980
+ instance_types_ondemand: Optional[pulumi.Input[builtins.str]] = None,
2981
+ instance_types_preferred_spots: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2982
+ instance_types_spots: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
2991
2983
  instance_types_weights: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupInstanceTypesWeightArgs', 'ElastigroupInstanceTypesWeightArgsDict']]]]] = None,
2992
2984
  integration_beanstalk: Optional[pulumi.Input[Union['ElastigroupIntegrationBeanstalkArgs', 'ElastigroupIntegrationBeanstalkArgsDict']]] = None,
2993
2985
  integration_codedeploy: Optional[pulumi.Input[Union['ElastigroupIntegrationCodedeployArgs', 'ElastigroupIntegrationCodedeployArgsDict']]] = None,
@@ -3000,52 +2992,52 @@ class Elastigroup(pulumi.CustomResource):
3000
2992
  integration_rancher: Optional[pulumi.Input[Union['ElastigroupIntegrationRancherArgs', 'ElastigroupIntegrationRancherArgsDict']]] = None,
3001
2993
  integration_route53: Optional[pulumi.Input[Union['ElastigroupIntegrationRoute53Args', 'ElastigroupIntegrationRoute53ArgsDict']]] = None,
3002
2994
  itfs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupItfArgs', 'ElastigroupItfArgsDict']]]]] = None,
3003
- key_name: Optional[pulumi.Input[str]] = None,
3004
- lifetime_period: Optional[pulumi.Input[str]] = None,
2995
+ key_name: Optional[pulumi.Input[builtins.str]] = None,
2996
+ lifetime_period: Optional[pulumi.Input[builtins.str]] = None,
3005
2997
  logging: Optional[pulumi.Input[Union['ElastigroupLoggingArgs', 'ElastigroupLoggingArgsDict']]] = None,
3006
- max_replacements_percentage: Optional[pulumi.Input[int]] = None,
3007
- max_size: Optional[pulumi.Input[int]] = None,
2998
+ max_replacements_percentage: Optional[pulumi.Input[builtins.int]] = None,
2999
+ max_size: Optional[pulumi.Input[builtins.int]] = None,
3008
3000
  metadata_options: Optional[pulumi.Input[Union['ElastigroupMetadataOptionsArgs', 'ElastigroupMetadataOptionsArgsDict']]] = None,
3009
- min_size: Optional[pulumi.Input[int]] = None,
3010
- minimum_instance_lifetime: Optional[pulumi.Input[int]] = None,
3001
+ min_size: Optional[pulumi.Input[builtins.int]] = None,
3002
+ minimum_instance_lifetime: Optional[pulumi.Input[builtins.int]] = None,
3011
3003
  multiple_metrics: Optional[pulumi.Input[Union['ElastigroupMultipleMetricsArgs', 'ElastigroupMultipleMetricsArgsDict']]] = None,
3012
- name: Optional[pulumi.Input[str]] = None,
3004
+ name: Optional[pulumi.Input[builtins.str]] = None,
3013
3005
  network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupNetworkInterfaceArgs', 'ElastigroupNetworkInterfaceArgsDict']]]]] = None,
3014
- on_demand_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3015
- ondemand_count: Optional[pulumi.Input[int]] = None,
3016
- orientation: Optional[pulumi.Input[str]] = None,
3017
- persist_block_devices: Optional[pulumi.Input[bool]] = None,
3018
- persist_private_ip: Optional[pulumi.Input[bool]] = None,
3019
- persist_root_device: Optional[pulumi.Input[bool]] = None,
3020
- placement_tenancy: Optional[pulumi.Input[str]] = None,
3021
- preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3022
- private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3023
- product: Optional[pulumi.Input[str]] = None,
3024
- region: Optional[pulumi.Input[str]] = None,
3006
+ on_demand_types: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3007
+ ondemand_count: Optional[pulumi.Input[builtins.int]] = None,
3008
+ orientation: Optional[pulumi.Input[builtins.str]] = None,
3009
+ persist_block_devices: Optional[pulumi.Input[builtins.bool]] = None,
3010
+ persist_private_ip: Optional[pulumi.Input[builtins.bool]] = None,
3011
+ persist_root_device: Optional[pulumi.Input[builtins.bool]] = None,
3012
+ placement_tenancy: Optional[pulumi.Input[builtins.str]] = None,
3013
+ preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3014
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3015
+ product: Optional[pulumi.Input[builtins.str]] = None,
3016
+ region: Optional[pulumi.Input[builtins.str]] = None,
3025
3017
  resource_requirements: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupResourceRequirementArgs', 'ElastigroupResourceRequirementArgsDict']]]]] = None,
3026
3018
  resource_tag_specifications: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupResourceTagSpecificationArgs', 'ElastigroupResourceTagSpecificationArgsDict']]]]] = None,
3027
- restrict_single_az: Optional[pulumi.Input[bool]] = None,
3019
+ restrict_single_az: Optional[pulumi.Input[builtins.bool]] = None,
3028
3020
  revert_to_spot: Optional[pulumi.Input[Union['ElastigroupRevertToSpotArgs', 'ElastigroupRevertToSpotArgsDict']]] = None,
3029
3021
  scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingDownPolicyArgs', 'ElastigroupScalingDownPolicyArgsDict']]]]] = None,
3030
3022
  scaling_strategies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingStrategyArgs', 'ElastigroupScalingStrategyArgsDict']]]]] = None,
3031
3023
  scaling_target_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingTargetPolicyArgs', 'ElastigroupScalingTargetPolicyArgsDict']]]]] = None,
3032
3024
  scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingUpPolicyArgs', 'ElastigroupScalingUpPolicyArgsDict']]]]] = None,
3033
3025
  scheduled_tasks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScheduledTaskArgs', 'ElastigroupScheduledTaskArgsDict']]]]] = None,
3034
- security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3035
- shutdown_script: Optional[pulumi.Input[str]] = None,
3026
+ security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3027
+ shutdown_script: Optional[pulumi.Input[builtins.str]] = None,
3036
3028
  signals: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupSignalArgs', 'ElastigroupSignalArgsDict']]]]] = None,
3037
- spot_percentage: Optional[pulumi.Input[int]] = None,
3029
+ spot_percentage: Optional[pulumi.Input[builtins.int]] = None,
3038
3030
  stateful_deallocation: Optional[pulumi.Input[Union['ElastigroupStatefulDeallocationArgs', 'ElastigroupStatefulDeallocationArgsDict']]] = None,
3039
3031
  stateful_instance_actions: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupStatefulInstanceActionArgs', 'ElastigroupStatefulInstanceActionArgsDict']]]]] = None,
3040
- subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3032
+ subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3041
3033
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupTagArgs', 'ElastigroupTagArgsDict']]]]] = None,
3042
- target_group_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3034
+ target_group_arns: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3043
3035
  update_policy: Optional[pulumi.Input[Union['ElastigroupUpdatePolicyArgs', 'ElastigroupUpdatePolicyArgsDict']]] = None,
3044
- user_data: Optional[pulumi.Input[str]] = None,
3045
- utilize_commitments: Optional[pulumi.Input[bool]] = None,
3046
- utilize_reserved_instances: Optional[pulumi.Input[bool]] = None,
3047
- wait_for_capacity: Optional[pulumi.Input[int]] = None,
3048
- wait_for_capacity_timeout: Optional[pulumi.Input[int]] = None,
3036
+ user_data: Optional[pulumi.Input[builtins.str]] = None,
3037
+ utilize_commitments: Optional[pulumi.Input[builtins.bool]] = None,
3038
+ utilize_reserved_instances: Optional[pulumi.Input[builtins.bool]] = None,
3039
+ wait_for_capacity: Optional[pulumi.Input[builtins.int]] = None,
3040
+ wait_for_capacity_timeout: Optional[pulumi.Input[builtins.int]] = None,
3049
3041
  __props__=None):
3050
3042
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
3051
3043
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -3158,33 +3150,33 @@ class Elastigroup(pulumi.CustomResource):
3158
3150
  def get(resource_name: str,
3159
3151
  id: pulumi.Input[str],
3160
3152
  opts: Optional[pulumi.ResourceOptions] = None,
3161
- auto_healing: Optional[pulumi.Input[bool]] = None,
3162
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3163
- block_devices_mode: Optional[pulumi.Input[str]] = None,
3164
- capacity_unit: Optional[pulumi.Input[str]] = None,
3165
- consider_od_pricing: Optional[pulumi.Input[bool]] = None,
3166
- cpu_credits: Optional[pulumi.Input[str]] = None,
3153
+ auto_healing: Optional[pulumi.Input[builtins.bool]] = None,
3154
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3155
+ block_devices_mode: Optional[pulumi.Input[builtins.str]] = None,
3156
+ capacity_unit: Optional[pulumi.Input[builtins.str]] = None,
3157
+ consider_od_pricing: Optional[pulumi.Input[builtins.bool]] = None,
3158
+ cpu_credits: Optional[pulumi.Input[builtins.str]] = None,
3167
3159
  cpu_options: Optional[pulumi.Input[Union['ElastigroupCpuOptionsArgs', 'ElastigroupCpuOptionsArgsDict']]] = None,
3168
- description: Optional[pulumi.Input[str]] = None,
3169
- desired_capacity: Optional[pulumi.Input[int]] = None,
3170
- draining_timeout: Optional[pulumi.Input[int]] = None,
3160
+ description: Optional[pulumi.Input[builtins.str]] = None,
3161
+ desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
3162
+ draining_timeout: Optional[pulumi.Input[builtins.int]] = None,
3171
3163
  ebs_block_devices: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupEbsBlockDeviceArgs', 'ElastigroupEbsBlockDeviceArgsDict']]]]] = None,
3172
- ebs_optimized: Optional[pulumi.Input[bool]] = None,
3173
- elastic_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3174
- elastic_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3175
- enable_monitoring: Optional[pulumi.Input[bool]] = None,
3164
+ ebs_optimized: Optional[pulumi.Input[builtins.bool]] = None,
3165
+ elastic_ips: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3166
+ elastic_load_balancers: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3167
+ enable_monitoring: Optional[pulumi.Input[builtins.bool]] = None,
3176
3168
  ephemeral_block_devices: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupEphemeralBlockDeviceArgs', 'ElastigroupEphemeralBlockDeviceArgsDict']]]]] = None,
3177
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
3178
- health_check_grace_period: Optional[pulumi.Input[int]] = None,
3179
- health_check_type: Optional[pulumi.Input[str]] = None,
3180
- health_check_unhealthy_duration_before_replacement: Optional[pulumi.Input[int]] = None,
3181
- iam_instance_profile: Optional[pulumi.Input[str]] = None,
3182
- image_id: Optional[pulumi.Input[str]] = None,
3169
+ fallback_to_ondemand: Optional[pulumi.Input[builtins.bool]] = None,
3170
+ health_check_grace_period: Optional[pulumi.Input[builtins.int]] = None,
3171
+ health_check_type: Optional[pulumi.Input[builtins.str]] = None,
3172
+ health_check_unhealthy_duration_before_replacement: Optional[pulumi.Input[builtins.int]] = None,
3173
+ iam_instance_profile: Optional[pulumi.Input[builtins.str]] = None,
3174
+ image_id: Optional[pulumi.Input[builtins.str]] = None,
3183
3175
  images: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupImageArgs', 'ElastigroupImageArgsDict']]]]] = None,
3184
- immediate_od_recover_threshold: Optional[pulumi.Input[int]] = None,
3185
- instance_types_ondemand: Optional[pulumi.Input[str]] = None,
3186
- instance_types_preferred_spots: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3187
- instance_types_spots: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3176
+ immediate_od_recover_threshold: Optional[pulumi.Input[builtins.int]] = None,
3177
+ instance_types_ondemand: Optional[pulumi.Input[builtins.str]] = None,
3178
+ instance_types_preferred_spots: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3179
+ instance_types_spots: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3188
3180
  instance_types_weights: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupInstanceTypesWeightArgs', 'ElastigroupInstanceTypesWeightArgsDict']]]]] = None,
3189
3181
  integration_beanstalk: Optional[pulumi.Input[Union['ElastigroupIntegrationBeanstalkArgs', 'ElastigroupIntegrationBeanstalkArgsDict']]] = None,
3190
3182
  integration_codedeploy: Optional[pulumi.Input[Union['ElastigroupIntegrationCodedeployArgs', 'ElastigroupIntegrationCodedeployArgsDict']]] = None,
@@ -3197,52 +3189,52 @@ class Elastigroup(pulumi.CustomResource):
3197
3189
  integration_rancher: Optional[pulumi.Input[Union['ElastigroupIntegrationRancherArgs', 'ElastigroupIntegrationRancherArgsDict']]] = None,
3198
3190
  integration_route53: Optional[pulumi.Input[Union['ElastigroupIntegrationRoute53Args', 'ElastigroupIntegrationRoute53ArgsDict']]] = None,
3199
3191
  itfs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupItfArgs', 'ElastigroupItfArgsDict']]]]] = None,
3200
- key_name: Optional[pulumi.Input[str]] = None,
3201
- lifetime_period: Optional[pulumi.Input[str]] = None,
3192
+ key_name: Optional[pulumi.Input[builtins.str]] = None,
3193
+ lifetime_period: Optional[pulumi.Input[builtins.str]] = None,
3202
3194
  logging: Optional[pulumi.Input[Union['ElastigroupLoggingArgs', 'ElastigroupLoggingArgsDict']]] = None,
3203
- max_replacements_percentage: Optional[pulumi.Input[int]] = None,
3204
- max_size: Optional[pulumi.Input[int]] = None,
3195
+ max_replacements_percentage: Optional[pulumi.Input[builtins.int]] = None,
3196
+ max_size: Optional[pulumi.Input[builtins.int]] = None,
3205
3197
  metadata_options: Optional[pulumi.Input[Union['ElastigroupMetadataOptionsArgs', 'ElastigroupMetadataOptionsArgsDict']]] = None,
3206
- min_size: Optional[pulumi.Input[int]] = None,
3207
- minimum_instance_lifetime: Optional[pulumi.Input[int]] = None,
3198
+ min_size: Optional[pulumi.Input[builtins.int]] = None,
3199
+ minimum_instance_lifetime: Optional[pulumi.Input[builtins.int]] = None,
3208
3200
  multiple_metrics: Optional[pulumi.Input[Union['ElastigroupMultipleMetricsArgs', 'ElastigroupMultipleMetricsArgsDict']]] = None,
3209
- name: Optional[pulumi.Input[str]] = None,
3201
+ name: Optional[pulumi.Input[builtins.str]] = None,
3210
3202
  network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupNetworkInterfaceArgs', 'ElastigroupNetworkInterfaceArgsDict']]]]] = None,
3211
- on_demand_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3212
- ondemand_count: Optional[pulumi.Input[int]] = None,
3213
- orientation: Optional[pulumi.Input[str]] = None,
3214
- persist_block_devices: Optional[pulumi.Input[bool]] = None,
3215
- persist_private_ip: Optional[pulumi.Input[bool]] = None,
3216
- persist_root_device: Optional[pulumi.Input[bool]] = None,
3217
- placement_tenancy: Optional[pulumi.Input[str]] = None,
3218
- preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3219
- private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3220
- product: Optional[pulumi.Input[str]] = None,
3221
- region: Optional[pulumi.Input[str]] = None,
3203
+ on_demand_types: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3204
+ ondemand_count: Optional[pulumi.Input[builtins.int]] = None,
3205
+ orientation: Optional[pulumi.Input[builtins.str]] = None,
3206
+ persist_block_devices: Optional[pulumi.Input[builtins.bool]] = None,
3207
+ persist_private_ip: Optional[pulumi.Input[builtins.bool]] = None,
3208
+ persist_root_device: Optional[pulumi.Input[builtins.bool]] = None,
3209
+ placement_tenancy: Optional[pulumi.Input[builtins.str]] = None,
3210
+ preferred_availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3211
+ private_ips: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3212
+ product: Optional[pulumi.Input[builtins.str]] = None,
3213
+ region: Optional[pulumi.Input[builtins.str]] = None,
3222
3214
  resource_requirements: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupResourceRequirementArgs', 'ElastigroupResourceRequirementArgsDict']]]]] = None,
3223
3215
  resource_tag_specifications: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupResourceTagSpecificationArgs', 'ElastigroupResourceTagSpecificationArgsDict']]]]] = None,
3224
- restrict_single_az: Optional[pulumi.Input[bool]] = None,
3216
+ restrict_single_az: Optional[pulumi.Input[builtins.bool]] = None,
3225
3217
  revert_to_spot: Optional[pulumi.Input[Union['ElastigroupRevertToSpotArgs', 'ElastigroupRevertToSpotArgsDict']]] = None,
3226
3218
  scaling_down_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingDownPolicyArgs', 'ElastigroupScalingDownPolicyArgsDict']]]]] = None,
3227
3219
  scaling_strategies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingStrategyArgs', 'ElastigroupScalingStrategyArgsDict']]]]] = None,
3228
3220
  scaling_target_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingTargetPolicyArgs', 'ElastigroupScalingTargetPolicyArgsDict']]]]] = None,
3229
3221
  scaling_up_policies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingUpPolicyArgs', 'ElastigroupScalingUpPolicyArgsDict']]]]] = None,
3230
3222
  scheduled_tasks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScheduledTaskArgs', 'ElastigroupScheduledTaskArgsDict']]]]] = None,
3231
- security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3232
- shutdown_script: Optional[pulumi.Input[str]] = None,
3223
+ security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3224
+ shutdown_script: Optional[pulumi.Input[builtins.str]] = None,
3233
3225
  signals: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupSignalArgs', 'ElastigroupSignalArgsDict']]]]] = None,
3234
- spot_percentage: Optional[pulumi.Input[int]] = None,
3226
+ spot_percentage: Optional[pulumi.Input[builtins.int]] = None,
3235
3227
  stateful_deallocation: Optional[pulumi.Input[Union['ElastigroupStatefulDeallocationArgs', 'ElastigroupStatefulDeallocationArgsDict']]] = None,
3236
3228
  stateful_instance_actions: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupStatefulInstanceActionArgs', 'ElastigroupStatefulInstanceActionArgsDict']]]]] = None,
3237
- subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3229
+ subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3238
3230
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupTagArgs', 'ElastigroupTagArgsDict']]]]] = None,
3239
- target_group_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3231
+ target_group_arns: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
3240
3232
  update_policy: Optional[pulumi.Input[Union['ElastigroupUpdatePolicyArgs', 'ElastigroupUpdatePolicyArgsDict']]] = None,
3241
- user_data: Optional[pulumi.Input[str]] = None,
3242
- utilize_commitments: Optional[pulumi.Input[bool]] = None,
3243
- utilize_reserved_instances: Optional[pulumi.Input[bool]] = None,
3244
- wait_for_capacity: Optional[pulumi.Input[int]] = None,
3245
- wait_for_capacity_timeout: Optional[pulumi.Input[int]] = None) -> 'Elastigroup':
3233
+ user_data: Optional[pulumi.Input[builtins.str]] = None,
3234
+ utilize_commitments: Optional[pulumi.Input[builtins.bool]] = None,
3235
+ utilize_reserved_instances: Optional[pulumi.Input[builtins.bool]] = None,
3236
+ wait_for_capacity: Optional[pulumi.Input[builtins.int]] = None,
3237
+ wait_for_capacity_timeout: Optional[pulumi.Input[builtins.int]] = None) -> 'Elastigroup':
3246
3238
  """
3247
3239
  Get an existing Elastigroup resource's state with the given name, id, and optional extra
3248
3240
  properties used to qualify the lookup.
@@ -3250,64 +3242,63 @@ class Elastigroup(pulumi.CustomResource):
3250
3242
  :param str resource_name: The unique name of the resulting resource.
3251
3243
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
3252
3244
  :param pulumi.ResourceOptions opts: Options for the resource.
3253
- :param pulumi.Input[bool] auto_healing: Auto-healing replacement won't be triggered if this parameter value is "false". In a case of a stateful group - no recycling will start if this parameter value is "false".
3254
- :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: List of Strings of availability zones. When this parameter is set, `subnet_ids` should be left unused.
3245
+ :param pulumi.Input[builtins.bool] auto_healing: Auto-healing replacement won't be triggered if this parameter value is "false". In a case of a stateful group - no recycling will start if this parameter value is "false".
3246
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] availability_zones: List of Strings of availability zones. When this parameter is set, `subnet_ids` should be left unused.
3255
3247
  Note: `availability_zones` naming syntax follows the convention `availability-zone:subnet:placement-group-name`. For example, to set an AZ in `us-east-1` with subnet `subnet-123456` and placement group `ClusterI03`, you would set:
3256
3248
  `availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]`
3257
- :param pulumi.Input[str] capacity_unit: The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: `instance`, `weight`.
3258
- :param pulumi.Input[str] cpu_credits: Controls how T3 instances are launched. Valid values: `standard`, `unlimited`.
3249
+ :param pulumi.Input[builtins.str] capacity_unit: The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: `instance`, `weight`.
3250
+ :param pulumi.Input[builtins.str] cpu_credits: Controls how T3 instances are launched. Valid values: `standard`, `unlimited`.
3259
3251
  :param pulumi.Input[Union['ElastigroupCpuOptionsArgs', 'ElastigroupCpuOptionsArgsDict']] cpu_options: The CPU options for the instances that are launched within the group:
3260
- :param pulumi.Input[str] description: The group description.
3261
- :param pulumi.Input[int] desired_capacity: The desired number of instances the group should have at any time.
3262
- :param pulumi.Input[int] draining_timeout: The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
3263
- :param pulumi.Input[bool] ebs_optimized: Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
3264
- :param pulumi.Input[Sequence[pulumi.Input[str]]] elastic_ips: A list of [AWS Elastic IP](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) allocation IDs to associate to the group instances.
3265
- :param pulumi.Input[bool] enable_monitoring: Indicates whether monitoring is enabled for the instance.
3266
- :param pulumi.Input[bool] fallback_to_ondemand: In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
3267
- :param pulumi.Input[int] health_check_grace_period: The amount of time, in seconds, after the instance has launched to starts and check its health.
3268
- :param pulumi.Input[str] health_check_type: The service that will perform health checks for the instance. Valid values: `"ELB"`, `"HCS"`, `"TARGET_GROUP"`, `"EC2"`, `"K8S_NODE"`, `"NOMAD_NODE"`, `"ECS_CLUSTER_INSTANCE"`.
3269
- :param pulumi.Input[int] health_check_unhealthy_duration_before_replacement: The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
3270
- :param pulumi.Input[str] iam_instance_profile: The ARN or name of an IAM instance profile to associate with launched instances.
3271
- :param pulumi.Input[str] image_id: The ID of the AMI used to launch the instance.
3252
+ :param pulumi.Input[builtins.str] description: The group description.
3253
+ :param pulumi.Input[builtins.int] desired_capacity: The desired number of instances the group should have at any time.
3254
+ :param pulumi.Input[builtins.int] draining_timeout: The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
3255
+ :param pulumi.Input[builtins.bool] ebs_optimized: Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
3256
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] elastic_ips: A list of [AWS Elastic IP](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) allocation IDs to associate to the group instances.
3257
+ :param pulumi.Input[builtins.bool] enable_monitoring: Indicates whether monitoring is enabled for the instance.
3258
+ :param pulumi.Input[builtins.bool] fallback_to_ondemand: In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
3259
+ :param pulumi.Input[builtins.int] health_check_grace_period: The amount of time, in seconds, after the instance has launched to starts and check its health.
3260
+ :param pulumi.Input[builtins.str] health_check_type: The service that will perform health checks for the instance. Valid values: `"ELB"`, `"HCS"`, `"TARGET_GROUP"`, `"EC2"`, `"K8S_NODE"`, `"NOMAD_NODE"`, `"ECS_CLUSTER_INSTANCE"`.
3261
+ :param pulumi.Input[builtins.int] health_check_unhealthy_duration_before_replacement: The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
3262
+ :param pulumi.Input[builtins.str] iam_instance_profile: The ARN or name of an IAM instance profile to associate with launched instances.
3263
+ :param pulumi.Input[builtins.str] image_id: The ID of the AMI used to launch the instance.
3272
3264
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupImageArgs', 'ElastigroupImageArgsDict']]]] images: An array of image objects.
3273
3265
  Note: Elastigroup can be configured with either imageId or images, but not both.
3274
- :param pulumi.Input[str] instance_types_ondemand: The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
3275
- :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types_preferred_spots: Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
3276
- :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types_spots: One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
3266
+ :param pulumi.Input[builtins.str] instance_types_ondemand: The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
3267
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] instance_types_preferred_spots: Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
3268
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] instance_types_spots: One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
3277
3269
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupInstanceTypesWeightArgs', 'ElastigroupInstanceTypesWeightArgsDict']]]] instance_types_weights: List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
3278
- :param pulumi.Input[str] key_name: The key name that should be used for the instance.
3270
+ :param pulumi.Input[builtins.str] key_name: The key name that should be used for the instance.
3279
3271
  :param pulumi.Input[Union['ElastigroupLoggingArgs', 'ElastigroupLoggingArgsDict']] logging: Logging configuration.
3280
- :param pulumi.Input[int] max_replacements_percentage: The percentage of active instances that can be replaced in parallel. This is used to prevent a large number of instances from being replaced at once.
3281
- :param pulumi.Input[int] max_size: The maximum number of instances the group should have at any time.
3272
+ :param pulumi.Input[builtins.int] max_size: The maximum number of instances the group should have at any time.
3282
3273
  :param pulumi.Input[Union['ElastigroupMetadataOptionsArgs', 'ElastigroupMetadataOptionsArgsDict']] metadata_options: Data that used to configure or manage the running instances:
3283
- :param pulumi.Input[int] min_size: The minimum number of instances the group should have at any time.
3284
- :param pulumi.Input[int] minimum_instance_lifetime: Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
3285
- :param pulumi.Input[str] name: The group name.
3286
- :param pulumi.Input[Sequence[pulumi.Input[str]]] on_demand_types: Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
3287
- :param pulumi.Input[int] ondemand_count: Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the `spot_percentage` parameter is being ignored.
3288
- :param pulumi.Input[str] orientation: Select a prediction strategy. Valid values: `balanced`, `costOriented`, `equalAzDistribution`, `availabilityOriented`. You can read more in our documentation.
3289
- :param pulumi.Input[str] placement_tenancy: Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
3290
- :param pulumi.Input[Sequence[pulumi.Input[str]]] preferred_availability_zones: The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs.
3274
+ :param pulumi.Input[builtins.int] min_size: The minimum number of instances the group should have at any time.
3275
+ :param pulumi.Input[builtins.int] minimum_instance_lifetime: Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
3276
+ :param pulumi.Input[builtins.str] name: The group name.
3277
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] on_demand_types: Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
3278
+ :param pulumi.Input[builtins.int] ondemand_count: Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the `spot_percentage` parameter is being ignored.
3279
+ :param pulumi.Input[builtins.str] orientation: Select a prediction strategy. Valid values: `balanced`, `costOriented`, `equalAzDistribution`, `availabilityOriented`. You can read more in our documentation.
3280
+ :param pulumi.Input[builtins.str] placement_tenancy: Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
3281
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] preferred_availability_zones: The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs.
3291
3282
  Note: Must be a sublist of `availability_zones` and `orientation` value must not be `"equalAzDistribution"`.
3292
- :param pulumi.Input[str] product: Operation system type. Valid values: `"Linux/UNIX"`, `"SUSE Linux"`, `"Windows"`.
3283
+ :param pulumi.Input[builtins.str] product: Operation system type. Valid values: `"Linux/UNIX"`, `"SUSE Linux"`, `"Windows"`.
3293
3284
  For EC2 Classic instances: `"SUSE Linux (Amazon VPC)"`, `"Windows (Amazon VPC)"`.
3294
- :param pulumi.Input[str] region: The AWS region your group will be created in.
3285
+ :param pulumi.Input[builtins.str] region: The AWS region your group will be created in.
3295
3286
  Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
3296
3287
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupResourceRequirementArgs', 'ElastigroupResourceRequirementArgsDict']]]] resource_requirements: Required instance attributes. Instance types will be selected based on these requirements.
3297
3288
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupResourceTagSpecificationArgs', 'ElastigroupResourceTagSpecificationArgsDict']]]] resource_tag_specifications: User will specify which resources should be tagged with group tags.
3298
- :param pulumi.Input[bool] restrict_single_az: Elastigroup will automatically scale your instances in the most available and cost efficient availability zone. Every evaluation will be done when there are no active instances in the group.
3289
+ :param pulumi.Input[builtins.bool] restrict_single_az: Elastigroup will automatically scale your instances in the most available and cost efficient availability zone. Every evaluation will be done when there are no active instances in the group.
3299
3290
  :param pulumi.Input[Union['ElastigroupRevertToSpotArgs', 'ElastigroupRevertToSpotArgsDict']] revert_to_spot: Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: `"never"`, `"always"`, `"timeWindow"`
3300
3291
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupScalingStrategyArgs', 'ElastigroupScalingStrategyArgsDict']]]] scaling_strategies: Set termination policy.
3301
- :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: A list of associated security group IDS.
3302
- :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/)
3303
- :param pulumi.Input[int] spot_percentage: The percentage of Spot instances that would spin up from the `desired_capacity` number.
3304
- :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: List of Strings of subnet identifiers.
3292
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] security_groups: A list of associated security group IDS.
3293
+ :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/)
3294
+ :param pulumi.Input[builtins.int] spot_percentage: The percentage of Spot instances that would spin up from the `desired_capacity` number.
3295
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] subnet_ids: List of Strings of subnet identifiers.
3305
3296
  Note: When this parameter is set, `availability_zones` should be left unused.
3306
3297
  :param pulumi.Input[Sequence[pulumi.Input[Union['ElastigroupTagArgs', 'ElastigroupTagArgsDict']]]] tags: A key/value mapping of tags to assign to the resource.
3307
- :param pulumi.Input[str] user_data: The user data to provide when launching the instance.
3308
- :param pulumi.Input[bool] utilize_reserved_instances: In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
3309
- :param pulumi.Input[int] wait_for_capacity: Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed `desired_capacity`.
3310
- :param pulumi.Input[int] wait_for_capacity_timeout: Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to `0` to indicate no wait. This is ignored when updating with blue/green deployment.
3298
+ :param pulumi.Input[builtins.str] user_data: The user data to provide when launching the instance.
3299
+ :param pulumi.Input[builtins.bool] utilize_reserved_instances: In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
3300
+ :param pulumi.Input[builtins.int] wait_for_capacity: Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed `desired_capacity`.
3301
+ :param pulumi.Input[builtins.int] wait_for_capacity_timeout: Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to `0` to indicate no wait. This is ignored when updating with blue/green deployment.
3311
3302
  """
3312
3303
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
3313
3304
 
@@ -3402,7 +3393,7 @@ class Elastigroup(pulumi.CustomResource):
3402
3393
 
3403
3394
  @property
3404
3395
  @pulumi.getter(name="autoHealing")
3405
- def auto_healing(self) -> pulumi.Output[Optional[bool]]:
3396
+ def auto_healing(self) -> pulumi.Output[Optional[builtins.bool]]:
3406
3397
  """
3407
3398
  Auto-healing replacement won't be triggered if this parameter value is "false". In a case of a stateful group - no recycling will start if this parameter value is "false".
3408
3399
  """
@@ -3410,7 +3401,7 @@ class Elastigroup(pulumi.CustomResource):
3410
3401
 
3411
3402
  @property
3412
3403
  @pulumi.getter(name="availabilityZones")
3413
- def availability_zones(self) -> pulumi.Output[Optional[Sequence[str]]]:
3404
+ def availability_zones(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
3414
3405
  """
3415
3406
  List of Strings of availability zones. When this parameter is set, `subnet_ids` should be left unused.
3416
3407
  Note: `availability_zones` naming syntax follows the convention `availability-zone:subnet:placement-group-name`. For example, to set an AZ in `us-east-1` with subnet `subnet-123456` and placement group `ClusterI03`, you would set:
@@ -3420,12 +3411,12 @@ class Elastigroup(pulumi.CustomResource):
3420
3411
 
3421
3412
  @property
3422
3413
  @pulumi.getter(name="blockDevicesMode")
3423
- def block_devices_mode(self) -> pulumi.Output[Optional[str]]:
3414
+ def block_devices_mode(self) -> pulumi.Output[Optional[builtins.str]]:
3424
3415
  return pulumi.get(self, "block_devices_mode")
3425
3416
 
3426
3417
  @property
3427
3418
  @pulumi.getter(name="capacityUnit")
3428
- def capacity_unit(self) -> pulumi.Output[str]:
3419
+ def capacity_unit(self) -> pulumi.Output[builtins.str]:
3429
3420
  """
3430
3421
  The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: `instance`, `weight`.
3431
3422
  """
@@ -3433,12 +3424,12 @@ class Elastigroup(pulumi.CustomResource):
3433
3424
 
3434
3425
  @property
3435
3426
  @pulumi.getter(name="considerOdPricing")
3436
- def consider_od_pricing(self) -> pulumi.Output[Optional[bool]]:
3427
+ def consider_od_pricing(self) -> pulumi.Output[Optional[builtins.bool]]:
3437
3428
  return pulumi.get(self, "consider_od_pricing")
3438
3429
 
3439
3430
  @property
3440
3431
  @pulumi.getter(name="cpuCredits")
3441
- def cpu_credits(self) -> pulumi.Output[Optional[str]]:
3432
+ def cpu_credits(self) -> pulumi.Output[Optional[builtins.str]]:
3442
3433
  """
3443
3434
  Controls how T3 instances are launched. Valid values: `standard`, `unlimited`.
3444
3435
  """
@@ -3454,7 +3445,7 @@ class Elastigroup(pulumi.CustomResource):
3454
3445
 
3455
3446
  @property
3456
3447
  @pulumi.getter
3457
- def description(self) -> pulumi.Output[Optional[str]]:
3448
+ def description(self) -> pulumi.Output[Optional[builtins.str]]:
3458
3449
  """
3459
3450
  The group description.
3460
3451
  """
@@ -3462,7 +3453,7 @@ class Elastigroup(pulumi.CustomResource):
3462
3453
 
3463
3454
  @property
3464
3455
  @pulumi.getter(name="desiredCapacity")
3465
- def desired_capacity(self) -> pulumi.Output[Optional[int]]:
3456
+ def desired_capacity(self) -> pulumi.Output[Optional[builtins.int]]:
3466
3457
  """
3467
3458
  The desired number of instances the group should have at any time.
3468
3459
  """
@@ -3470,7 +3461,7 @@ class Elastigroup(pulumi.CustomResource):
3470
3461
 
3471
3462
  @property
3472
3463
  @pulumi.getter(name="drainingTimeout")
3473
- def draining_timeout(self) -> pulumi.Output[int]:
3464
+ def draining_timeout(self) -> pulumi.Output[builtins.int]:
3474
3465
  """
3475
3466
  The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
3476
3467
  """
@@ -3483,7 +3474,7 @@ class Elastigroup(pulumi.CustomResource):
3483
3474
 
3484
3475
  @property
3485
3476
  @pulumi.getter(name="ebsOptimized")
3486
- def ebs_optimized(self) -> pulumi.Output[bool]:
3477
+ def ebs_optimized(self) -> pulumi.Output[builtins.bool]:
3487
3478
  """
3488
3479
  Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
3489
3480
  """
@@ -3491,7 +3482,7 @@ class Elastigroup(pulumi.CustomResource):
3491
3482
 
3492
3483
  @property
3493
3484
  @pulumi.getter(name="elasticIps")
3494
- def elastic_ips(self) -> pulumi.Output[Optional[Sequence[str]]]:
3485
+ def elastic_ips(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
3495
3486
  """
3496
3487
  A list of [AWS Elastic IP](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) allocation IDs to associate to the group instances.
3497
3488
  """
@@ -3499,12 +3490,12 @@ class Elastigroup(pulumi.CustomResource):
3499
3490
 
3500
3491
  @property
3501
3492
  @pulumi.getter(name="elasticLoadBalancers")
3502
- def elastic_load_balancers(self) -> pulumi.Output[Optional[Sequence[str]]]:
3493
+ def elastic_load_balancers(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
3503
3494
  return pulumi.get(self, "elastic_load_balancers")
3504
3495
 
3505
3496
  @property
3506
3497
  @pulumi.getter(name="enableMonitoring")
3507
- def enable_monitoring(self) -> pulumi.Output[Optional[bool]]:
3498
+ def enable_monitoring(self) -> pulumi.Output[Optional[builtins.bool]]:
3508
3499
  """
3509
3500
  Indicates whether monitoring is enabled for the instance.
3510
3501
  """
@@ -3517,7 +3508,7 @@ class Elastigroup(pulumi.CustomResource):
3517
3508
 
3518
3509
  @property
3519
3510
  @pulumi.getter(name="fallbackToOndemand")
3520
- def fallback_to_ondemand(self) -> pulumi.Output[bool]:
3511
+ def fallback_to_ondemand(self) -> pulumi.Output[builtins.bool]:
3521
3512
  """
3522
3513
  In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
3523
3514
  """
@@ -3525,7 +3516,7 @@ class Elastigroup(pulumi.CustomResource):
3525
3516
 
3526
3517
  @property
3527
3518
  @pulumi.getter(name="healthCheckGracePeriod")
3528
- def health_check_grace_period(self) -> pulumi.Output[Optional[int]]:
3519
+ def health_check_grace_period(self) -> pulumi.Output[Optional[builtins.int]]:
3529
3520
  """
3530
3521
  The amount of time, in seconds, after the instance has launched to starts and check its health.
3531
3522
  """
@@ -3533,7 +3524,7 @@ class Elastigroup(pulumi.CustomResource):
3533
3524
 
3534
3525
  @property
3535
3526
  @pulumi.getter(name="healthCheckType")
3536
- def health_check_type(self) -> pulumi.Output[Optional[str]]:
3527
+ def health_check_type(self) -> pulumi.Output[Optional[builtins.str]]:
3537
3528
  """
3538
3529
  The service that will perform health checks for the instance. Valid values: `"ELB"`, `"HCS"`, `"TARGET_GROUP"`, `"EC2"`, `"K8S_NODE"`, `"NOMAD_NODE"`, `"ECS_CLUSTER_INSTANCE"`.
3539
3530
  """
@@ -3541,7 +3532,7 @@ class Elastigroup(pulumi.CustomResource):
3541
3532
 
3542
3533
  @property
3543
3534
  @pulumi.getter(name="healthCheckUnhealthyDurationBeforeReplacement")
3544
- def health_check_unhealthy_duration_before_replacement(self) -> pulumi.Output[Optional[int]]:
3535
+ def health_check_unhealthy_duration_before_replacement(self) -> pulumi.Output[Optional[builtins.int]]:
3545
3536
  """
3546
3537
  The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
3547
3538
  """
@@ -3549,7 +3540,7 @@ class Elastigroup(pulumi.CustomResource):
3549
3540
 
3550
3541
  @property
3551
3542
  @pulumi.getter(name="iamInstanceProfile")
3552
- def iam_instance_profile(self) -> pulumi.Output[Optional[str]]:
3543
+ def iam_instance_profile(self) -> pulumi.Output[Optional[builtins.str]]:
3553
3544
  """
3554
3545
  The ARN or name of an IAM instance profile to associate with launched instances.
3555
3546
  """
@@ -3557,7 +3548,7 @@ class Elastigroup(pulumi.CustomResource):
3557
3548
 
3558
3549
  @property
3559
3550
  @pulumi.getter(name="imageId")
3560
- def image_id(self) -> pulumi.Output[Optional[str]]:
3551
+ def image_id(self) -> pulumi.Output[Optional[builtins.str]]:
3561
3552
  """
3562
3553
  The ID of the AMI used to launch the instance.
3563
3554
  """
@@ -3574,12 +3565,12 @@ class Elastigroup(pulumi.CustomResource):
3574
3565
 
3575
3566
  @property
3576
3567
  @pulumi.getter(name="immediateOdRecoverThreshold")
3577
- def immediate_od_recover_threshold(self) -> pulumi.Output[Optional[int]]:
3568
+ def immediate_od_recover_threshold(self) -> pulumi.Output[Optional[builtins.int]]:
3578
3569
  return pulumi.get(self, "immediate_od_recover_threshold")
3579
3570
 
3580
3571
  @property
3581
3572
  @pulumi.getter(name="instanceTypesOndemand")
3582
- def instance_types_ondemand(self) -> pulumi.Output[Optional[str]]:
3573
+ def instance_types_ondemand(self) -> pulumi.Output[Optional[builtins.str]]:
3583
3574
  """
3584
3575
  The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
3585
3576
  """
@@ -3587,7 +3578,7 @@ class Elastigroup(pulumi.CustomResource):
3587
3578
 
3588
3579
  @property
3589
3580
  @pulumi.getter(name="instanceTypesPreferredSpots")
3590
- def instance_types_preferred_spots(self) -> pulumi.Output[Optional[Sequence[str]]]:
3581
+ def instance_types_preferred_spots(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
3591
3582
  """
3592
3583
  Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
3593
3584
  """
@@ -3595,7 +3586,7 @@ class Elastigroup(pulumi.CustomResource):
3595
3586
 
3596
3587
  @property
3597
3588
  @pulumi.getter(name="instanceTypesSpots")
3598
- def instance_types_spots(self) -> pulumi.Output[Optional[Sequence[str]]]:
3589
+ def instance_types_spots(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
3599
3590
  """
3600
3591
  One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
3601
3592
  """
@@ -3666,7 +3657,7 @@ class Elastigroup(pulumi.CustomResource):
3666
3657
 
3667
3658
  @property
3668
3659
  @pulumi.getter(name="keyName")
3669
- def key_name(self) -> pulumi.Output[Optional[str]]:
3660
+ def key_name(self) -> pulumi.Output[Optional[builtins.str]]:
3670
3661
  """
3671
3662
  The key name that should be used for the instance.
3672
3663
  """
@@ -3674,7 +3665,7 @@ class Elastigroup(pulumi.CustomResource):
3674
3665
 
3675
3666
  @property
3676
3667
  @pulumi.getter(name="lifetimePeriod")
3677
- def lifetime_period(self) -> pulumi.Output[Optional[str]]:
3668
+ def lifetime_period(self) -> pulumi.Output[Optional[builtins.str]]:
3678
3669
  return pulumi.get(self, "lifetime_period")
3679
3670
 
3680
3671
  @property
@@ -3687,15 +3678,12 @@ class Elastigroup(pulumi.CustomResource):
3687
3678
 
3688
3679
  @property
3689
3680
  @pulumi.getter(name="maxReplacementsPercentage")
3690
- def max_replacements_percentage(self) -> pulumi.Output[Optional[int]]:
3691
- """
3692
- The percentage of active instances that can be replaced in parallel. This is used to prevent a large number of instances from being replaced at once.
3693
- """
3681
+ def max_replacements_percentage(self) -> pulumi.Output[Optional[builtins.int]]:
3694
3682
  return pulumi.get(self, "max_replacements_percentage")
3695
3683
 
3696
3684
  @property
3697
3685
  @pulumi.getter(name="maxSize")
3698
- def max_size(self) -> pulumi.Output[int]:
3686
+ def max_size(self) -> pulumi.Output[builtins.int]:
3699
3687
  """
3700
3688
  The maximum number of instances the group should have at any time.
3701
3689
  """
@@ -3711,7 +3699,7 @@ class Elastigroup(pulumi.CustomResource):
3711
3699
 
3712
3700
  @property
3713
3701
  @pulumi.getter(name="minSize")
3714
- def min_size(self) -> pulumi.Output[int]:
3702
+ def min_size(self) -> pulumi.Output[builtins.int]:
3715
3703
  """
3716
3704
  The minimum number of instances the group should have at any time.
3717
3705
  """
@@ -3719,7 +3707,7 @@ class Elastigroup(pulumi.CustomResource):
3719
3707
 
3720
3708
  @property
3721
3709
  @pulumi.getter(name="minimumInstanceLifetime")
3722
- def minimum_instance_lifetime(self) -> pulumi.Output[Optional[int]]:
3710
+ def minimum_instance_lifetime(self) -> pulumi.Output[Optional[builtins.int]]:
3723
3711
  """
3724
3712
  Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
3725
3713
  """
@@ -3732,7 +3720,7 @@ class Elastigroup(pulumi.CustomResource):
3732
3720
 
3733
3721
  @property
3734
3722
  @pulumi.getter
3735
- def name(self) -> pulumi.Output[str]:
3723
+ def name(self) -> pulumi.Output[builtins.str]:
3736
3724
  """
3737
3725
  The group name.
3738
3726
  """
@@ -3745,7 +3733,7 @@ class Elastigroup(pulumi.CustomResource):
3745
3733
 
3746
3734
  @property
3747
3735
  @pulumi.getter(name="onDemandTypes")
3748
- def on_demand_types(self) -> pulumi.Output[Optional[Sequence[str]]]:
3736
+ def on_demand_types(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
3749
3737
  """
3750
3738
  Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
3751
3739
  """
@@ -3753,7 +3741,7 @@ class Elastigroup(pulumi.CustomResource):
3753
3741
 
3754
3742
  @property
3755
3743
  @pulumi.getter(name="ondemandCount")
3756
- def ondemand_count(self) -> pulumi.Output[Optional[int]]:
3744
+ def ondemand_count(self) -> pulumi.Output[Optional[builtins.int]]:
3757
3745
  """
3758
3746
  Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the `spot_percentage` parameter is being ignored.
3759
3747
  """
@@ -3761,7 +3749,7 @@ class Elastigroup(pulumi.CustomResource):
3761
3749
 
3762
3750
  @property
3763
3751
  @pulumi.getter
3764
- def orientation(self) -> pulumi.Output[str]:
3752
+ def orientation(self) -> pulumi.Output[builtins.str]:
3765
3753
  """
3766
3754
  Select a prediction strategy. Valid values: `balanced`, `costOriented`, `equalAzDistribution`, `availabilityOriented`. You can read more in our documentation.
3767
3755
  """
@@ -3769,22 +3757,22 @@ class Elastigroup(pulumi.CustomResource):
3769
3757
 
3770
3758
  @property
3771
3759
  @pulumi.getter(name="persistBlockDevices")
3772
- def persist_block_devices(self) -> pulumi.Output[Optional[bool]]:
3760
+ def persist_block_devices(self) -> pulumi.Output[Optional[builtins.bool]]:
3773
3761
  return pulumi.get(self, "persist_block_devices")
3774
3762
 
3775
3763
  @property
3776
3764
  @pulumi.getter(name="persistPrivateIp")
3777
- def persist_private_ip(self) -> pulumi.Output[Optional[bool]]:
3765
+ def persist_private_ip(self) -> pulumi.Output[Optional[builtins.bool]]:
3778
3766
  return pulumi.get(self, "persist_private_ip")
3779
3767
 
3780
3768
  @property
3781
3769
  @pulumi.getter(name="persistRootDevice")
3782
- def persist_root_device(self) -> pulumi.Output[Optional[bool]]:
3770
+ def persist_root_device(self) -> pulumi.Output[Optional[builtins.bool]]:
3783
3771
  return pulumi.get(self, "persist_root_device")
3784
3772
 
3785
3773
  @property
3786
3774
  @pulumi.getter(name="placementTenancy")
3787
- def placement_tenancy(self) -> pulumi.Output[Optional[str]]:
3775
+ def placement_tenancy(self) -> pulumi.Output[Optional[builtins.str]]:
3788
3776
  """
3789
3777
  Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
3790
3778
  """
@@ -3792,7 +3780,7 @@ class Elastigroup(pulumi.CustomResource):
3792
3780
 
3793
3781
  @property
3794
3782
  @pulumi.getter(name="preferredAvailabilityZones")
3795
- def preferred_availability_zones(self) -> pulumi.Output[Optional[Sequence[str]]]:
3783
+ def preferred_availability_zones(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
3796
3784
  """
3797
3785
  The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs.
3798
3786
  Note: Must be a sublist of `availability_zones` and `orientation` value must not be `"equalAzDistribution"`.
@@ -3801,12 +3789,12 @@ class Elastigroup(pulumi.CustomResource):
3801
3789
 
3802
3790
  @property
3803
3791
  @pulumi.getter(name="privateIps")
3804
- def private_ips(self) -> pulumi.Output[Optional[Sequence[str]]]:
3792
+ def private_ips(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
3805
3793
  return pulumi.get(self, "private_ips")
3806
3794
 
3807
3795
  @property
3808
3796
  @pulumi.getter
3809
- def product(self) -> pulumi.Output[str]:
3797
+ def product(self) -> pulumi.Output[builtins.str]:
3810
3798
  """
3811
3799
  Operation system type. Valid values: `"Linux/UNIX"`, `"SUSE Linux"`, `"Windows"`.
3812
3800
  For EC2 Classic instances: `"SUSE Linux (Amazon VPC)"`, `"Windows (Amazon VPC)"`.
@@ -3815,7 +3803,7 @@ class Elastigroup(pulumi.CustomResource):
3815
3803
 
3816
3804
  @property
3817
3805
  @pulumi.getter
3818
- def region(self) -> pulumi.Output[Optional[str]]:
3806
+ def region(self) -> pulumi.Output[Optional[builtins.str]]:
3819
3807
  """
3820
3808
  The AWS region your group will be created in.
3821
3809
  Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
@@ -3840,7 +3828,7 @@ class Elastigroup(pulumi.CustomResource):
3840
3828
 
3841
3829
  @property
3842
3830
  @pulumi.getter(name="restrictSingleAz")
3843
- def restrict_single_az(self) -> pulumi.Output[Optional[bool]]:
3831
+ def restrict_single_az(self) -> pulumi.Output[Optional[builtins.bool]]:
3844
3832
  """
3845
3833
  Elastigroup will automatically scale your instances in the most available and cost efficient availability zone. Every evaluation will be done when there are no active instances in the group.
3846
3834
  """
@@ -3884,7 +3872,7 @@ class Elastigroup(pulumi.CustomResource):
3884
3872
 
3885
3873
  @property
3886
3874
  @pulumi.getter(name="securityGroups")
3887
- def security_groups(self) -> pulumi.Output[Sequence[str]]:
3875
+ def security_groups(self) -> pulumi.Output[Sequence[builtins.str]]:
3888
3876
  """
3889
3877
  A list of associated security group IDS.
3890
3878
  """
@@ -3892,7 +3880,7 @@ class Elastigroup(pulumi.CustomResource):
3892
3880
 
3893
3881
  @property
3894
3882
  @pulumi.getter(name="shutdownScript")
3895
- def shutdown_script(self) -> pulumi.Output[Optional[str]]:
3883
+ def shutdown_script(self) -> pulumi.Output[Optional[builtins.str]]:
3896
3884
  """
3897
3885
  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/)
3898
3886
  """
@@ -3905,7 +3893,7 @@ class Elastigroup(pulumi.CustomResource):
3905
3893
 
3906
3894
  @property
3907
3895
  @pulumi.getter(name="spotPercentage")
3908
- def spot_percentage(self) -> pulumi.Output[Optional[int]]:
3896
+ def spot_percentage(self) -> pulumi.Output[Optional[builtins.int]]:
3909
3897
  """
3910
3898
  The percentage of Spot instances that would spin up from the `desired_capacity` number.
3911
3899
  """
@@ -3924,7 +3912,7 @@ class Elastigroup(pulumi.CustomResource):
3924
3912
  @property
3925
3913
  @pulumi.getter(name="subnetIds")
3926
3914
  @_utilities.deprecated("""This field will soon be deprecated and handled by availability_zones""")
3927
- def subnet_ids(self) -> pulumi.Output[Optional[Sequence[str]]]:
3915
+ def subnet_ids(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
3928
3916
  """
3929
3917
  List of Strings of subnet identifiers.
3930
3918
  Note: When this parameter is set, `availability_zones` should be left unused.
@@ -3941,7 +3929,7 @@ class Elastigroup(pulumi.CustomResource):
3941
3929
 
3942
3930
  @property
3943
3931
  @pulumi.getter(name="targetGroupArns")
3944
- def target_group_arns(self) -> pulumi.Output[Optional[Sequence[str]]]:
3932
+ def target_group_arns(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
3945
3933
  return pulumi.get(self, "target_group_arns")
3946
3934
 
3947
3935
  @property
@@ -3951,7 +3939,7 @@ class Elastigroup(pulumi.CustomResource):
3951
3939
 
3952
3940
  @property
3953
3941
  @pulumi.getter(name="userData")
3954
- def user_data(self) -> pulumi.Output[Optional[str]]:
3942
+ def user_data(self) -> pulumi.Output[Optional[builtins.str]]:
3955
3943
  """
3956
3944
  The user data to provide when launching the instance.
3957
3945
  """
@@ -3959,12 +3947,12 @@ class Elastigroup(pulumi.CustomResource):
3959
3947
 
3960
3948
  @property
3961
3949
  @pulumi.getter(name="utilizeCommitments")
3962
- def utilize_commitments(self) -> pulumi.Output[Optional[bool]]:
3950
+ def utilize_commitments(self) -> pulumi.Output[Optional[builtins.bool]]:
3963
3951
  return pulumi.get(self, "utilize_commitments")
3964
3952
 
3965
3953
  @property
3966
3954
  @pulumi.getter(name="utilizeReservedInstances")
3967
- def utilize_reserved_instances(self) -> pulumi.Output[Optional[bool]]:
3955
+ def utilize_reserved_instances(self) -> pulumi.Output[Optional[builtins.bool]]:
3968
3956
  """
3969
3957
  In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
3970
3958
  """
@@ -3972,7 +3960,7 @@ class Elastigroup(pulumi.CustomResource):
3972
3960
 
3973
3961
  @property
3974
3962
  @pulumi.getter(name="waitForCapacity")
3975
- def wait_for_capacity(self) -> pulumi.Output[Optional[int]]:
3963
+ def wait_for_capacity(self) -> pulumi.Output[Optional[builtins.int]]:
3976
3964
  """
3977
3965
  Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed `desired_capacity`.
3978
3966
  """
@@ -3980,7 +3968,7 @@ class Elastigroup(pulumi.CustomResource):
3980
3968
 
3981
3969
  @property
3982
3970
  @pulumi.getter(name="waitForCapacityTimeout")
3983
- def wait_for_capacity_timeout(self) -> pulumi.Output[Optional[int]]:
3971
+ def wait_for_capacity_timeout(self) -> pulumi.Output[Optional[builtins.int]]:
3984
3972
  """
3985
3973
  Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to `0` to indicate no wait. This is ignored when updating with blue/green deployment.
3986
3974
  """