aws-sdk-autoscaling 1.77.0 → 1.80.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -86,6 +86,7 @@ module Aws::AutoScaling
86
86
  CreateLaunchConfigurationType = Shapes::StructureShape.new(name: 'CreateLaunchConfigurationType')
87
87
  CreateOrUpdateTagsType = Shapes::StructureShape.new(name: 'CreateOrUpdateTagsType')
88
88
  CustomizedMetricSpecification = Shapes::StructureShape.new(name: 'CustomizedMetricSpecification')
89
+ DefaultInstanceWarmup = Shapes::IntegerShape.new(name: 'DefaultInstanceWarmup')
89
90
  DeleteAutoScalingGroupType = Shapes::StructureShape.new(name: 'DeleteAutoScalingGroupType')
90
91
  DeleteLifecycleHookAnswer = Shapes::StructureShape.new(name: 'DeleteLifecycleHookAnswer')
91
92
  DeleteLifecycleHookType = Shapes::StructureShape.new(name: 'DeleteLifecycleHookType')
@@ -171,6 +172,7 @@ module Aws::AutoScaling
171
172
  InstanceRefreshWarmPoolProgress = Shapes::StructureShape.new(name: 'InstanceRefreshWarmPoolProgress')
172
173
  InstanceRefreshes = Shapes::ListShape.new(name: 'InstanceRefreshes')
173
174
  InstanceRequirements = Shapes::StructureShape.new(name: 'InstanceRequirements')
175
+ InstanceReusePolicy = Shapes::StructureShape.new(name: 'InstanceReusePolicy')
174
176
  Instances = Shapes::ListShape.new(name: 'Instances')
175
177
  InstancesDistribution = Shapes::StructureShape.new(name: 'InstancesDistribution')
176
178
  InstancesToUpdate = Shapes::IntegerShape.new(name: 'InstancesToUpdate')
@@ -298,6 +300,7 @@ module Aws::AutoScaling
298
300
  ResourceInUseFault = Shapes::StructureShape.new(name: 'ResourceInUseFault')
299
301
  ResourceName = Shapes::StringShape.new(name: 'ResourceName')
300
302
  ReturnData = Shapes::BooleanShape.new(name: 'ReturnData')
303
+ ReuseOnScaleIn = Shapes::BooleanShape.new(name: 'ReuseOnScaleIn')
301
304
  ScalingActivityInProgressFault = Shapes::StructureShape.new(name: 'ScalingActivityInProgressFault')
302
305
  ScalingActivityStatusCode = Shapes::StringShape.new(name: 'ScalingActivityStatusCode')
303
306
  ScalingPolicies = Shapes::ListShape.new(name: 'ScalingPolicies')
@@ -465,6 +468,7 @@ module Aws::AutoScaling
465
468
  AutoScalingGroup.add_member(:warm_pool_size, Shapes::ShapeRef.new(shape: WarmPoolSize, location_name: "WarmPoolSize"))
466
469
  AutoScalingGroup.add_member(:context, Shapes::ShapeRef.new(shape: Context, location_name: "Context"))
467
470
  AutoScalingGroup.add_member(:desired_capacity_type, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "DesiredCapacityType"))
471
+ AutoScalingGroup.add_member(:default_instance_warmup, Shapes::ShapeRef.new(shape: DefaultInstanceWarmup, location_name: "DefaultInstanceWarmup"))
468
472
  AutoScalingGroup.struct_class = Types::AutoScalingGroup
469
473
 
470
474
  AutoScalingGroupNames.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen255)
@@ -579,6 +583,7 @@ module Aws::AutoScaling
579
583
  CreateAutoScalingGroupType.add_member(:max_instance_lifetime, Shapes::ShapeRef.new(shape: MaxInstanceLifetime, location_name: "MaxInstanceLifetime"))
580
584
  CreateAutoScalingGroupType.add_member(:context, Shapes::ShapeRef.new(shape: Context, location_name: "Context"))
581
585
  CreateAutoScalingGroupType.add_member(:desired_capacity_type, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "DesiredCapacityType"))
586
+ CreateAutoScalingGroupType.add_member(:default_instance_warmup, Shapes::ShapeRef.new(shape: DefaultInstanceWarmup, location_name: "DefaultInstanceWarmup"))
582
587
  CreateAutoScalingGroupType.struct_class = Types::CreateAutoScalingGroupType
583
588
 
584
589
  CreateLaunchConfigurationType.add_member(:launch_configuration_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, required: true, location_name: "LaunchConfigurationName"))
@@ -925,6 +930,9 @@ module Aws::AutoScaling
925
930
  InstanceRequirements.add_member(:accelerator_total_memory_mi_b, Shapes::ShapeRef.new(shape: AcceleratorTotalMemoryMiBRequest, location_name: "AcceleratorTotalMemoryMiB"))
926
931
  InstanceRequirements.struct_class = Types::InstanceRequirements
927
932
 
933
+ InstanceReusePolicy.add_member(:reuse_on_scale_in, Shapes::ShapeRef.new(shape: ReuseOnScaleIn, location_name: "ReuseOnScaleIn"))
934
+ InstanceReusePolicy.struct_class = Types::InstanceReusePolicy
935
+
928
936
  Instances.member = Shapes::ShapeRef.new(shape: Instance)
929
937
 
930
938
  InstancesDistribution.add_member(:on_demand_allocation_strategy, Shapes::ShapeRef.new(shape: XmlString, location_name: "OnDemandAllocationStrategy"))
@@ -1225,6 +1233,7 @@ module Aws::AutoScaling
1225
1233
  PutWarmPoolType.add_member(:max_group_prepared_capacity, Shapes::ShapeRef.new(shape: MaxGroupPreparedCapacity, location_name: "MaxGroupPreparedCapacity"))
1226
1234
  PutWarmPoolType.add_member(:min_size, Shapes::ShapeRef.new(shape: WarmPoolMinSize, location_name: "MinSize"))
1227
1235
  PutWarmPoolType.add_member(:pool_state, Shapes::ShapeRef.new(shape: WarmPoolState, location_name: "PoolState"))
1236
+ PutWarmPoolType.add_member(:instance_reuse_policy, Shapes::ShapeRef.new(shape: InstanceReusePolicy, location_name: "InstanceReusePolicy"))
1228
1237
  PutWarmPoolType.struct_class = Types::PutWarmPoolType
1229
1238
 
1230
1239
  RecordLifecycleActionHeartbeatAnswer.struct_class = Types::RecordLifecycleActionHeartbeatAnswer
@@ -1412,6 +1421,7 @@ module Aws::AutoScaling
1412
1421
  UpdateAutoScalingGroupType.add_member(:capacity_rebalance, Shapes::ShapeRef.new(shape: CapacityRebalanceEnabled, location_name: "CapacityRebalance"))
1413
1422
  UpdateAutoScalingGroupType.add_member(:context, Shapes::ShapeRef.new(shape: Context, location_name: "Context"))
1414
1423
  UpdateAutoScalingGroupType.add_member(:desired_capacity_type, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "DesiredCapacityType"))
1424
+ UpdateAutoScalingGroupType.add_member(:default_instance_warmup, Shapes::ShapeRef.new(shape: DefaultInstanceWarmup, location_name: "DefaultInstanceWarmup"))
1415
1425
  UpdateAutoScalingGroupType.struct_class = Types::UpdateAutoScalingGroupType
1416
1426
 
1417
1427
  VCpuCountRequest.add_member(:min, Shapes::ShapeRef.new(shape: NullablePositiveInteger, required: true, location_name: "Min"))
@@ -1424,6 +1434,7 @@ module Aws::AutoScaling
1424
1434
  WarmPoolConfiguration.add_member(:min_size, Shapes::ShapeRef.new(shape: WarmPoolMinSize, location_name: "MinSize"))
1425
1435
  WarmPoolConfiguration.add_member(:pool_state, Shapes::ShapeRef.new(shape: WarmPoolState, location_name: "PoolState"))
1426
1436
  WarmPoolConfiguration.add_member(:status, Shapes::ShapeRef.new(shape: WarmPoolStatus, location_name: "Status"))
1437
+ WarmPoolConfiguration.add_member(:instance_reuse_policy, Shapes::ShapeRef.new(shape: InstanceReusePolicy, location_name: "InstanceReusePolicy"))
1427
1438
  WarmPoolConfiguration.struct_class = Types::WarmPoolConfiguration
1428
1439
 
1429
1440
 
@@ -60,7 +60,7 @@ module Aws::AutoScaling
60
60
  # used. For information about lifecycle states, see [Instance
61
61
  # lifecycle][1] in the *Amazon EC2 Auto Scaling User Guide*.
62
62
  #
63
- # Valid Values: `Pending` \| `Pending:Wait` \| `Pending:Proceed` \|
63
+ # Valid values: `Pending` \| `Pending:Wait` \| `Pending:Proceed` \|
64
64
  # `Quarantined` \| `InService` \| `Terminating` \| `Terminating:Wait` \|
65
65
  # `Terminating:Proceed` \| `Terminated` \| `Detaching` \| `Detached` \|
66
66
  # `EnteringStandby` \| `Standby` \| `Warmed:Pending` \|
@@ -42,7 +42,7 @@ module Aws::AutoScaling
42
42
  end
43
43
 
44
44
  # The ID of the Amazon Machine Image (AMI) to use to launch your EC2
45
- # instances. For more information, see [Finding an AMI][1] in the
45
+ # instances. For more information, see [Find a Linux AMI][1] in the
46
46
  # *Amazon EC2 User Guide for Linux Instances*.
47
47
  #
48
48
  #
@@ -78,31 +78,21 @@ module Aws::AutoScaling
78
78
  data[:security_groups]
79
79
  end
80
80
 
81
- # The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances
82
- # to. For more information, see [ClassicLink][1] in the *Amazon EC2 User
83
- # Guide for Linux Instances* and [Linking EC2-Classic instances to a
84
- # VPC][2] in the *Amazon EC2 Auto Scaling User Guide*.
85
- #
81
+ # *EC2-Classic retires on August 15, 2022. This property is not
82
+ # supported after that date.*
86
83
  #
87
- #
88
- # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html
89
- # [2]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-in-vpc.html#as-ClassicLink
84
+ # The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances
85
+ # to.
90
86
  # @return [String]
91
87
  def classic_link_vpc_id
92
88
  data[:classic_link_vpc_id]
93
89
  end
94
90
 
91
+ # *EC2-Classic retires on August 15, 2022. This property is not
92
+ # supported after that date.*
93
+ #
95
94
  # The IDs of one or more security groups for the VPC specified in
96
95
  # `ClassicLinkVPCId`.
97
- #
98
- # For more information, see [ClassicLink][1] in the *Amazon EC2 User
99
- # Guide for Linux Instances* and [Linking EC2-Classic instances to a
100
- # VPC][2] in the *Amazon EC2 Auto Scaling User Guide*.
101
- #
102
- #
103
- #
104
- # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html
105
- # [2]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-in-vpc.html#as-ClassicLink
106
96
  # @return [Array<String>]
107
97
  def classic_link_vpc_security_groups
108
98
  data[:classic_link_vpc_security_groups]
@@ -124,10 +114,9 @@ module Aws::AutoScaling
124
114
  data[:user_data]
125
115
  end
126
116
 
127
- # The instance type for the instances.
128
- #
129
- # For information about available instance types, see [Available
130
- # Instance Types][1] in the *Amazon EC2 User Guide for Linux Instances*.
117
+ # The instance type for the instances. For information about available
118
+ # instance types, see [Available instance types][1] in the *Amazon EC2
119
+ # User Guide for Linux Instances*.
131
120
  #
132
121
  #
133
122
  #
@@ -149,9 +138,11 @@ module Aws::AutoScaling
149
138
  data[:ramdisk_id]
150
139
  end
151
140
 
152
- # A block device mapping, which specifies the block devices for the
153
- # instance. For more information, see [Block Device Mapping][1] in the
154
- # *Amazon EC2 User Guide for Linux Instances*.
141
+ # The block device mapping entries that define the block devices to
142
+ # attach to the instances at launch. By default, the block devices
143
+ # specified in the block device mapping for the AMI are used. For more
144
+ # information, see [Block Device Mapping][1] in the *Amazon EC2 User
145
+ # Guide for Linux Instances*.
155
146
  #
156
147
  #
157
148
  #
@@ -222,10 +213,15 @@ module Aws::AutoScaling
222
213
  data[:ebs_optimized]
223
214
  end
224
215
 
225
- # For Auto Scaling groups that are running in a VPC, specifies whether
226
- # to assign a public IP address to the group's instances. For more
227
- # information, see [Launching Auto Scaling instances in a VPC][1] in the
228
- # *Amazon EC2 Auto Scaling User Guide*.
216
+ # Specifies whether to assign a public IPv4 address to the group's
217
+ # instances. If the instance is launched into a default subnet, the
218
+ # default is to assign a public IPv4 address, unless you disabled the
219
+ # option to assign a public IPv4 address on the subnet. If the instance
220
+ # is launched into a nondefault subnet, the default is not to assign a
221
+ # public IPv4 address, unless you enabled the option to assign a public
222
+ # IPv4 address on the subnet. For more information, see [Launching Auto
223
+ # Scaling instances in a VPC][1] in the *Amazon EC2 Auto Scaling User
224
+ # Guide*.
229
225
  #
230
226
  #
231
227
  #
@@ -44,27 +44,25 @@ module Aws::AutoScaling
44
44
  end
45
45
  alias :lifecycle_hook_name :name
46
46
 
47
- # The state of the EC2 instance to which to attach the lifecycle hook.
48
- # The following are possible values:
47
+ # The lifecycle transition.
49
48
  #
50
- # * autoscaling:EC2\_INSTANCE\_LAUNCHING
51
- #
52
- # * autoscaling:EC2\_INSTANCE\_TERMINATING
49
+ # Valid values: `autoscaling:EC2_INSTANCE_LAUNCHING` \|
50
+ # `autoscaling:EC2_INSTANCE_TERMINATING`
53
51
  # @return [String]
54
52
  def lifecycle_transition
55
53
  data[:lifecycle_transition]
56
54
  end
57
55
 
58
56
  # The ARN of the target that Amazon EC2 Auto Scaling sends notifications
59
- # to when an instance is in the transition state for the lifecycle hook.
60
- # The notification target can be either an SQS queue or an SNS topic.
57
+ # to when an instance is in a wait state for the lifecycle hook.
61
58
  # @return [String]
62
59
  def notification_target_arn
63
60
  data[:notification_target_arn]
64
61
  end
65
62
 
66
63
  # The ARN of the IAM role that allows the Auto Scaling group to publish
67
- # to the specified notification target.
64
+ # to the specified notification target (an Amazon SNS topic or an Amazon
65
+ # SQS queue).
68
66
  # @return [String]
69
67
  def role_arn
70
68
  data[:role_arn]
@@ -80,24 +78,24 @@ module Aws::AutoScaling
80
78
  # The maximum time, in seconds, that can elapse before the lifecycle
81
79
  # hook times out. If the lifecycle hook times out, Amazon EC2 Auto
82
80
  # Scaling performs the action that you specified in the `DefaultResult`
83
- # parameter.
81
+ # property.
84
82
  # @return [Integer]
85
83
  def heartbeat_timeout
86
84
  data[:heartbeat_timeout]
87
85
  end
88
86
 
89
- # The maximum time, in seconds, that an instance can remain in a
90
- # `Pending:Wait` or `Terminating:Wait` state. The maximum is 172800
91
- # seconds (48 hours) or 100 times `HeartbeatTimeout`, whichever is
92
- # smaller.
87
+ # The maximum time, in seconds, that an instance can remain in a wait
88
+ # state. The maximum is 172800 seconds (48 hours) or 100 times
89
+ # `HeartbeatTimeout`, whichever is smaller.
93
90
  # @return [Integer]
94
91
  def global_timeout
95
92
  data[:global_timeout]
96
93
  end
97
94
 
98
- # Defines the action the Auto Scaling group should take when the
99
- # lifecycle hook timeout elapses or if an unexpected failure occurs. The
100
- # possible values are `CONTINUE` and `ABANDON`.
95
+ # The action the Auto Scaling group takes when the lifecycle hook
96
+ # timeout elapses or if an unexpected failure occurs.
97
+ #
98
+ # Valid values: `CONTINUE` \| `ABANDON`
101
99
  # @return [String]
102
100
  def default_result
103
101
  data[:default_result]
@@ -254,8 +252,8 @@ module Aws::AutoScaling
254
252
  # sends this token to the notification target you specified when you
255
253
  # created the lifecycle hook.
256
254
  # @option options [required, String] :lifecycle_action_result
257
- # The action for the group to take. This parameter can be either
258
- # `CONTINUE` or `ABANDON`.
255
+ # The action for the group to take. You can specify either `CONTINUE` or
256
+ # `ABANDON`.
259
257
  # @option options [String] :instance_id
260
258
  # The ID of the instance.
261
259
  # @return [Types::CompleteLifecycleActionAnswer]
@@ -294,27 +292,29 @@ module Aws::AutoScaling
294
292
  # })
295
293
  # @param [Hash] options ({})
296
294
  # @option options [String] :lifecycle_transition
297
- # The instance state to which you want to attach the lifecycle hook. The
298
- # valid values are:
295
+ # The lifecycle transition. For Auto Scaling groups, there are two major
296
+ # lifecycle transitions.
299
297
  #
300
- # * autoscaling:EC2\_INSTANCE\_LAUNCHING
298
+ # * To create a lifecycle hook for scale-out events, specify
299
+ # `autoscaling:EC2_INSTANCE_LAUNCHING`.
301
300
  #
302
- # * autoscaling:EC2\_INSTANCE\_TERMINATING
301
+ # * To create a lifecycle hook for scale-in events, specify
302
+ # `autoscaling:EC2_INSTANCE_TERMINATING`.
303
303
  #
304
304
  # Required for new lifecycle hooks, but optional when updating existing
305
305
  # hooks.
306
306
  # @option options [String] :role_arn
307
307
  # The ARN of the IAM role that allows the Auto Scaling group to publish
308
- # to the specified notification target, for example, an Amazon SNS topic
309
- # or an Amazon SQS queue.
308
+ # to the specified notification target.
310
309
  #
311
- # Required for new lifecycle hooks, but optional when updating existing
312
- # hooks.
310
+ # Valid only if the notification target is an Amazon SNS topic or an
311
+ # Amazon SQS queue. Required for new lifecycle hooks, but optional when
312
+ # updating existing hooks.
313
313
  # @option options [String] :notification_target_arn
314
- # The ARN of the notification target that Amazon EC2 Auto Scaling uses
315
- # to notify you when an instance is in the transition state for the
316
- # lifecycle hook. This target can be either an SQS queue or an SNS
317
- # topic.
314
+ # The Amazon Resource Name (ARN) of the notification target that Amazon
315
+ # EC2 Auto Scaling uses to notify you when an instance is in a wait
316
+ # state for the lifecycle hook. You can specify either an Amazon SNS
317
+ # topic or an Amazon SQS queue.
318
318
  #
319
319
  # If you specify an empty string, this overrides the current ARN.
320
320
  #
@@ -332,16 +332,12 @@ module Aws::AutoScaling
332
332
  # The maximum time, in seconds, that can elapse before the lifecycle
333
333
  # hook times out. The range is from `30` to `7200` seconds. The default
334
334
  # value is `3600` seconds (1 hour).
335
- #
336
- # If the lifecycle hook times out, Amazon EC2 Auto Scaling performs the
337
- # action that you specified in the `DefaultResult` parameter. You can
338
- # prevent the lifecycle hook from timing out by calling the
339
- # RecordLifecycleActionHeartbeat API.
340
335
  # @option options [String] :default_result
341
- # Defines the action the Auto Scaling group should take when the
342
- # lifecycle hook timeout elapses or if an unexpected failure occurs.
343
- # This parameter can be either `CONTINUE` or `ABANDON`. The default
344
- # value is `ABANDON`.
336
+ # The action the Auto Scaling group takes when the lifecycle hook
337
+ # timeout elapses or if an unexpected failure occurs. The default value
338
+ # is `ABANDON`.
339
+ #
340
+ # Valid values: `CONTINUE` \| `ABANDON`
345
341
  # @return [Types::PutLifecycleHookAnswer]
346
342
  def put(options = {})
347
343
  options = options.merge(