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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +15 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-autoscaling/auto_scaling_group.rb +124 -74
- data/lib/aws-sdk-autoscaling/client.rb +446 -319
- data/lib/aws-sdk-autoscaling/client_api.rb +11 -0
- data/lib/aws-sdk-autoscaling/instance.rb +1 -1
- data/lib/aws-sdk-autoscaling/launch_configuration.rb +25 -29
- data/lib/aws-sdk-autoscaling/lifecycle_hook.rb +35 -39
- data/lib/aws-sdk-autoscaling/resource.rb +168 -134
- data/lib/aws-sdk-autoscaling/scheduled_action.rb +1 -1
- data/lib/aws-sdk-autoscaling/types.rb +558 -370
- data/lib/aws-sdk-autoscaling.rb +1 -1
- metadata +4 -4
@@ -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
|
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 [
|
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
|
-
#
|
82
|
-
#
|
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
|
-
#
|
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
|
-
#
|
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
|
-
#
|
153
|
-
#
|
154
|
-
#
|
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
|
-
#
|
226
|
-
#
|
227
|
-
#
|
228
|
-
#
|
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
|
48
|
-
# The following are possible values:
|
47
|
+
# The lifecycle transition.
|
49
48
|
#
|
50
|
-
#
|
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
|
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
|
-
#
|
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
|
-
#
|
91
|
-
#
|
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
|
-
#
|
99
|
-
#
|
100
|
-
#
|
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.
|
258
|
-
# `
|
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
|
298
|
-
#
|
295
|
+
# The lifecycle transition. For Auto Scaling groups, there are two major
|
296
|
+
# lifecycle transitions.
|
299
297
|
#
|
300
|
-
# *
|
298
|
+
# * To create a lifecycle hook for scale-out events, specify
|
299
|
+
# `autoscaling:EC2_INSTANCE_LAUNCHING`.
|
301
300
|
#
|
302
|
-
# *
|
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
|
309
|
-
# or an Amazon SQS queue.
|
308
|
+
# to the specified notification target.
|
310
309
|
#
|
311
|
-
#
|
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
|
315
|
-
# to notify you when an instance is in
|
316
|
-
# lifecycle hook.
|
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
|
-
#
|
342
|
-
#
|
343
|
-
#
|
344
|
-
#
|
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(
|