aws-sdk-autoscaling 1.77.0 → 1.80.0

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.
@@ -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(