aws-sdk-autoscaling 1.35.0 → 1.40.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.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -11,6 +13,7 @@ module Aws::AutoScaling
11
13
 
12
14
  include Seahorse::Model
13
15
 
16
+ ActiveInstanceRefreshNotFoundFault = Shapes::StructureShape.new(name: 'ActiveInstanceRefreshNotFoundFault')
14
17
  Activities = Shapes::ListShape.new(name: 'Activities')
15
18
  ActivitiesType = Shapes::StructureShape.new(name: 'ActivitiesType')
16
19
  Activity = Shapes::StructureShape.new(name: 'Activity')
@@ -52,6 +55,8 @@ module Aws::AutoScaling
52
55
  BlockDeviceEbsVolumeType = Shapes::StringShape.new(name: 'BlockDeviceEbsVolumeType')
53
56
  BlockDeviceMapping = Shapes::StructureShape.new(name: 'BlockDeviceMapping')
54
57
  BlockDeviceMappings = Shapes::ListShape.new(name: 'BlockDeviceMappings')
58
+ CancelInstanceRefreshAnswer = Shapes::StructureShape.new(name: 'CancelInstanceRefreshAnswer')
59
+ CancelInstanceRefreshType = Shapes::StructureShape.new(name: 'CancelInstanceRefreshType')
55
60
  ClassicLinkVPCSecurityGroups = Shapes::ListShape.new(name: 'ClassicLinkVPCSecurityGroups')
56
61
  CompleteLifecycleActionAnswer = Shapes::StructureShape.new(name: 'CompleteLifecycleActionAnswer')
57
62
  CompleteLifecycleActionType = Shapes::StructureShape.new(name: 'CompleteLifecycleActionType')
@@ -71,6 +76,8 @@ module Aws::AutoScaling
71
76
  DescribeAdjustmentTypesAnswer = Shapes::StructureShape.new(name: 'DescribeAdjustmentTypesAnswer')
72
77
  DescribeAutoScalingInstancesType = Shapes::StructureShape.new(name: 'DescribeAutoScalingInstancesType')
73
78
  DescribeAutoScalingNotificationTypesAnswer = Shapes::StructureShape.new(name: 'DescribeAutoScalingNotificationTypesAnswer')
79
+ DescribeInstanceRefreshesAnswer = Shapes::StructureShape.new(name: 'DescribeInstanceRefreshesAnswer')
80
+ DescribeInstanceRefreshesType = Shapes::StructureShape.new(name: 'DescribeInstanceRefreshesType')
74
81
  DescribeLifecycleHookTypesAnswer = Shapes::StructureShape.new(name: 'DescribeLifecycleHookTypesAnswer')
75
82
  DescribeLifecycleHooksAnswer = Shapes::StructureShape.new(name: 'DescribeLifecycleHooksAnswer')
76
83
  DescribeLifecycleHooksType = Shapes::StructureShape.new(name: 'DescribeLifecycleHooksType')
@@ -118,8 +125,15 @@ module Aws::AutoScaling
118
125
  InstanceIds = Shapes::ListShape.new(name: 'InstanceIds')
119
126
  InstanceMonitoring = Shapes::StructureShape.new(name: 'InstanceMonitoring')
120
127
  InstanceProtected = Shapes::BooleanShape.new(name: 'InstanceProtected')
128
+ InstanceRefresh = Shapes::StructureShape.new(name: 'InstanceRefresh')
129
+ InstanceRefreshIds = Shapes::ListShape.new(name: 'InstanceRefreshIds')
130
+ InstanceRefreshInProgressFault = Shapes::StructureShape.new(name: 'InstanceRefreshInProgressFault')
131
+ InstanceRefreshStatus = Shapes::StringShape.new(name: 'InstanceRefreshStatus')
132
+ InstanceRefreshes = Shapes::ListShape.new(name: 'InstanceRefreshes')
121
133
  Instances = Shapes::ListShape.new(name: 'Instances')
122
134
  InstancesDistribution = Shapes::StructureShape.new(name: 'InstancesDistribution')
135
+ InstancesToUpdate = Shapes::IntegerShape.new(name: 'InstancesToUpdate')
136
+ IntPercent = Shapes::IntegerShape.new(name: 'IntPercent')
123
137
  InvalidNextToken = Shapes::StructureShape.new(name: 'InvalidNextToken')
124
138
  LaunchConfiguration = Shapes::StructureShape.new(name: 'LaunchConfiguration')
125
139
  LaunchConfigurationNameType = Shapes::StructureShape.new(name: 'LaunchConfigurationNameType')
@@ -199,6 +213,9 @@ module Aws::AutoScaling
199
213
  PutScheduledUpdateGroupActionType = Shapes::StructureShape.new(name: 'PutScheduledUpdateGroupActionType')
200
214
  RecordLifecycleActionHeartbeatAnswer = Shapes::StructureShape.new(name: 'RecordLifecycleActionHeartbeatAnswer')
201
215
  RecordLifecycleActionHeartbeatType = Shapes::StructureShape.new(name: 'RecordLifecycleActionHeartbeatType')
216
+ RefreshInstanceWarmup = Shapes::IntegerShape.new(name: 'RefreshInstanceWarmup')
217
+ RefreshPreferences = Shapes::StructureShape.new(name: 'RefreshPreferences')
218
+ RefreshStrategy = Shapes::StringShape.new(name: 'RefreshStrategy')
202
219
  ResourceContentionFault = Shapes::StructureShape.new(name: 'ResourceContentionFault')
203
220
  ResourceInUseFault = Shapes::StructureShape.new(name: 'ResourceInUseFault')
204
221
  ResourceName = Shapes::StringShape.new(name: 'ResourceName')
@@ -224,6 +241,8 @@ module Aws::AutoScaling
224
241
  ShouldRespectGracePeriod = Shapes::BooleanShape.new(name: 'ShouldRespectGracePeriod')
225
242
  SpotInstancePools = Shapes::IntegerShape.new(name: 'SpotInstancePools')
226
243
  SpotPrice = Shapes::StringShape.new(name: 'SpotPrice')
244
+ StartInstanceRefreshAnswer = Shapes::StructureShape.new(name: 'StartInstanceRefreshAnswer')
245
+ StartInstanceRefreshType = Shapes::StructureShape.new(name: 'StartInstanceRefreshType')
227
246
  StepAdjustment = Shapes::StructureShape.new(name: 'StepAdjustment')
228
247
  StepAdjustments = Shapes::ListShape.new(name: 'StepAdjustments')
229
248
  SuspendedProcess = Shapes::StructureShape.new(name: 'SuspendedProcess')
@@ -253,6 +272,9 @@ module Aws::AutoScaling
253
272
  XmlStringMaxLen64 = Shapes::StringShape.new(name: 'XmlStringMaxLen64')
254
273
  XmlStringUserData = Shapes::StringShape.new(name: 'XmlStringUserData')
255
274
 
275
+ ActiveInstanceRefreshNotFoundFault.add_member(:message, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "message"))
276
+ ActiveInstanceRefreshNotFoundFault.struct_class = Types::ActiveInstanceRefreshNotFoundFault
277
+
256
278
  Activities.member = Shapes::ShapeRef.new(shape: Activity)
257
279
 
258
280
  ActivitiesType.add_member(:activities, Shapes::ShapeRef.new(shape: Activities, required: true, location_name: "Activities"))
@@ -391,6 +413,12 @@ module Aws::AutoScaling
391
413
 
392
414
  BlockDeviceMappings.member = Shapes::ShapeRef.new(shape: BlockDeviceMapping)
393
415
 
416
+ CancelInstanceRefreshAnswer.add_member(:instance_refresh_id, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "InstanceRefreshId"))
417
+ CancelInstanceRefreshAnswer.struct_class = Types::CancelInstanceRefreshAnswer
418
+
419
+ CancelInstanceRefreshType.add_member(:auto_scaling_group_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, required: true, location_name: "AutoScalingGroupName"))
420
+ CancelInstanceRefreshType.struct_class = Types::CancelInstanceRefreshType
421
+
394
422
  ClassicLinkVPCSecurityGroups.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen255)
395
423
 
396
424
  CompleteLifecycleActionAnswer.struct_class = Types::CompleteLifecycleActionAnswer
@@ -498,6 +526,16 @@ module Aws::AutoScaling
498
526
  DescribeAutoScalingNotificationTypesAnswer.add_member(:auto_scaling_notification_types, Shapes::ShapeRef.new(shape: AutoScalingNotificationTypes, location_name: "AutoScalingNotificationTypes"))
499
527
  DescribeAutoScalingNotificationTypesAnswer.struct_class = Types::DescribeAutoScalingNotificationTypesAnswer
500
528
 
529
+ DescribeInstanceRefreshesAnswer.add_member(:instance_refreshes, Shapes::ShapeRef.new(shape: InstanceRefreshes, location_name: "InstanceRefreshes"))
530
+ DescribeInstanceRefreshesAnswer.add_member(:next_token, Shapes::ShapeRef.new(shape: XmlString, location_name: "NextToken"))
531
+ DescribeInstanceRefreshesAnswer.struct_class = Types::DescribeInstanceRefreshesAnswer
532
+
533
+ DescribeInstanceRefreshesType.add_member(:auto_scaling_group_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, required: true, location_name: "AutoScalingGroupName"))
534
+ DescribeInstanceRefreshesType.add_member(:instance_refresh_ids, Shapes::ShapeRef.new(shape: InstanceRefreshIds, location_name: "InstanceRefreshIds"))
535
+ DescribeInstanceRefreshesType.add_member(:next_token, Shapes::ShapeRef.new(shape: XmlString, location_name: "NextToken"))
536
+ DescribeInstanceRefreshesType.add_member(:max_records, Shapes::ShapeRef.new(shape: MaxRecords, location_name: "MaxRecords"))
537
+ DescribeInstanceRefreshesType.struct_class = Types::DescribeInstanceRefreshesType
538
+
501
539
  DescribeLifecycleHookTypesAnswer.add_member(:lifecycle_hook_types, Shapes::ShapeRef.new(shape: AutoScalingNotificationTypes, location_name: "LifecycleHookTypes"))
502
540
  DescribeLifecycleHookTypesAnswer.struct_class = Types::DescribeLifecycleHookTypesAnswer
503
541
 
@@ -662,6 +700,23 @@ module Aws::AutoScaling
662
700
  InstanceMonitoring.add_member(:enabled, Shapes::ShapeRef.new(shape: MonitoringEnabled, location_name: "Enabled"))
663
701
  InstanceMonitoring.struct_class = Types::InstanceMonitoring
664
702
 
703
+ InstanceRefresh.add_member(:instance_refresh_id, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "InstanceRefreshId"))
704
+ InstanceRefresh.add_member(:auto_scaling_group_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "AutoScalingGroupName"))
705
+ InstanceRefresh.add_member(:status, Shapes::ShapeRef.new(shape: InstanceRefreshStatus, location_name: "Status"))
706
+ InstanceRefresh.add_member(:status_reason, Shapes::ShapeRef.new(shape: XmlStringMaxLen1023, location_name: "StatusReason"))
707
+ InstanceRefresh.add_member(:start_time, Shapes::ShapeRef.new(shape: TimestampType, location_name: "StartTime"))
708
+ InstanceRefresh.add_member(:end_time, Shapes::ShapeRef.new(shape: TimestampType, location_name: "EndTime"))
709
+ InstanceRefresh.add_member(:percentage_complete, Shapes::ShapeRef.new(shape: IntPercent, location_name: "PercentageComplete"))
710
+ InstanceRefresh.add_member(:instances_to_update, Shapes::ShapeRef.new(shape: InstancesToUpdate, location_name: "InstancesToUpdate"))
711
+ InstanceRefresh.struct_class = Types::InstanceRefresh
712
+
713
+ InstanceRefreshIds.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen255)
714
+
715
+ InstanceRefreshInProgressFault.add_member(:message, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "message"))
716
+ InstanceRefreshInProgressFault.struct_class = Types::InstanceRefreshInProgressFault
717
+
718
+ InstanceRefreshes.member = Shapes::ShapeRef.new(shape: InstanceRefresh)
719
+
665
720
  Instances.member = Shapes::ShapeRef.new(shape: Instance)
666
721
 
667
722
  InstancesDistribution.add_member(:on_demand_allocation_strategy, Shapes::ShapeRef.new(shape: XmlString, location_name: "OnDemandAllocationStrategy"))
@@ -876,6 +931,10 @@ module Aws::AutoScaling
876
931
  RecordLifecycleActionHeartbeatType.add_member(:instance_id, Shapes::ShapeRef.new(shape: XmlStringMaxLen19, location_name: "InstanceId"))
877
932
  RecordLifecycleActionHeartbeatType.struct_class = Types::RecordLifecycleActionHeartbeatType
878
933
 
934
+ RefreshPreferences.add_member(:min_healthy_percentage, Shapes::ShapeRef.new(shape: IntPercent, location_name: "MinHealthyPercentage"))
935
+ RefreshPreferences.add_member(:instance_warmup, Shapes::ShapeRef.new(shape: RefreshInstanceWarmup, location_name: "InstanceWarmup"))
936
+ RefreshPreferences.struct_class = Types::RefreshPreferences
937
+
879
938
  ResourceContentionFault.add_member(:message, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "message"))
880
939
  ResourceContentionFault.struct_class = Types::ResourceContentionFault
881
940
 
@@ -961,6 +1020,14 @@ module Aws::AutoScaling
961
1020
  SetInstanceProtectionQuery.add_member(:protected_from_scale_in, Shapes::ShapeRef.new(shape: ProtectedFromScaleIn, required: true, location_name: "ProtectedFromScaleIn"))
962
1021
  SetInstanceProtectionQuery.struct_class = Types::SetInstanceProtectionQuery
963
1022
 
1023
+ StartInstanceRefreshAnswer.add_member(:instance_refresh_id, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "InstanceRefreshId"))
1024
+ StartInstanceRefreshAnswer.struct_class = Types::StartInstanceRefreshAnswer
1025
+
1026
+ StartInstanceRefreshType.add_member(:auto_scaling_group_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, required: true, location_name: "AutoScalingGroupName"))
1027
+ StartInstanceRefreshType.add_member(:strategy, Shapes::ShapeRef.new(shape: RefreshStrategy, location_name: "Strategy"))
1028
+ StartInstanceRefreshType.add_member(:preferences, Shapes::ShapeRef.new(shape: RefreshPreferences, location_name: "Preferences"))
1029
+ StartInstanceRefreshType.struct_class = Types::StartInstanceRefreshType
1030
+
964
1031
  StepAdjustment.add_member(:metric_interval_lower_bound, Shapes::ShapeRef.new(shape: MetricScale, location_name: "MetricIntervalLowerBound"))
965
1032
  StepAdjustment.add_member(:metric_interval_upper_bound, Shapes::ShapeRef.new(shape: MetricScale, location_name: "MetricIntervalUpperBound"))
966
1033
  StepAdjustment.add_member(:scaling_adjustment, Shapes::ShapeRef.new(shape: PolicyIncrement, required: true, location_name: "ScalingAdjustment"))
@@ -1098,6 +1165,17 @@ module Aws::AutoScaling
1098
1165
  o.errors << Shapes::ShapeRef.new(shape: ResourceContentionFault)
1099
1166
  end)
1100
1167
 
1168
+ api.add_operation(:cancel_instance_refresh, Seahorse::Model::Operation.new.tap do |o|
1169
+ o.name = "CancelInstanceRefresh"
1170
+ o.http_method = "POST"
1171
+ o.http_request_uri = "/"
1172
+ o.input = Shapes::ShapeRef.new(shape: CancelInstanceRefreshType)
1173
+ o.output = Shapes::ShapeRef.new(shape: CancelInstanceRefreshAnswer)
1174
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededFault)
1175
+ o.errors << Shapes::ShapeRef.new(shape: ResourceContentionFault)
1176
+ o.errors << Shapes::ShapeRef.new(shape: ActiveInstanceRefreshNotFoundFault)
1177
+ end)
1178
+
1101
1179
  api.add_operation(:complete_lifecycle_action, Seahorse::Model::Operation.new.tap do |o|
1102
1180
  o.name = "CompleteLifecycleAction"
1103
1181
  o.http_method = "POST"
@@ -1269,6 +1347,16 @@ module Aws::AutoScaling
1269
1347
  o.errors << Shapes::ShapeRef.new(shape: ResourceContentionFault)
1270
1348
  end)
1271
1349
 
1350
+ api.add_operation(:describe_instance_refreshes, Seahorse::Model::Operation.new.tap do |o|
1351
+ o.name = "DescribeInstanceRefreshes"
1352
+ o.http_method = "POST"
1353
+ o.http_request_uri = "/"
1354
+ o.input = Shapes::ShapeRef.new(shape: DescribeInstanceRefreshesType)
1355
+ o.output = Shapes::ShapeRef.new(shape: DescribeInstanceRefreshesAnswer)
1356
+ o.errors << Shapes::ShapeRef.new(shape: InvalidNextToken)
1357
+ o.errors << Shapes::ShapeRef.new(shape: ResourceContentionFault)
1358
+ end)
1359
+
1272
1360
  api.add_operation(:describe_launch_configurations, Seahorse::Model::Operation.new.tap do |o|
1273
1361
  o.name = "DescribeLaunchConfigurations"
1274
1362
  o.http_method = "POST"
@@ -1593,6 +1681,17 @@ module Aws::AutoScaling
1593
1681
  o.errors << Shapes::ShapeRef.new(shape: ResourceContentionFault)
1594
1682
  end)
1595
1683
 
1684
+ api.add_operation(:start_instance_refresh, Seahorse::Model::Operation.new.tap do |o|
1685
+ o.name = "StartInstanceRefresh"
1686
+ o.http_method = "POST"
1687
+ o.http_request_uri = "/"
1688
+ o.input = Shapes::ShapeRef.new(shape: StartInstanceRefreshType)
1689
+ o.output = Shapes::ShapeRef.new(shape: StartInstanceRefreshAnswer)
1690
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededFault)
1691
+ o.errors << Shapes::ShapeRef.new(shape: ResourceContentionFault)
1692
+ o.errors << Shapes::ShapeRef.new(shape: InstanceRefreshInProgressFault)
1693
+ end)
1694
+
1596
1695
  api.add_operation(:suspend_processes, Seahorse::Model::Operation.new.tap do |o|
1597
1696
  o.name = "SuspendProcesses"
1598
1697
  o.http_method = "POST"
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  # WARNING ABOUT GENERATED CODE
2
3
  #
3
4
  # This file is generated. See the contributing for info on making contributions:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -25,7 +27,9 @@ module Aws::AutoScaling
25
27
  # See {Seahorse::Client::RequestContext} for more information.
26
28
  #
27
29
  # ## Error Classes
30
+ # * {ActiveInstanceRefreshNotFoundFault}
28
31
  # * {AlreadyExistsFault}
32
+ # * {InstanceRefreshInProgressFault}
29
33
  # * {InvalidNextToken}
30
34
  # * {LimitExceededFault}
31
35
  # * {ResourceContentionFault}
@@ -39,6 +43,21 @@ module Aws::AutoScaling
39
43
 
40
44
  extend Aws::Errors::DynamicErrors
41
45
 
46
+ class ActiveInstanceRefreshNotFoundFault < ServiceError
47
+
48
+ # @param [Seahorse::Client::RequestContext] context
49
+ # @param [String] message
50
+ # @param [Aws::AutoScaling::Types::ActiveInstanceRefreshNotFoundFault] data
51
+ def initialize(context, message, data = Aws::EmptyStructure.new)
52
+ super(context, message, data)
53
+ end
54
+
55
+ # @return [String]
56
+ def message
57
+ @message || @data[:message]
58
+ end
59
+ end
60
+
42
61
  class AlreadyExistsFault < ServiceError
43
62
 
44
63
  # @param [Seahorse::Client::RequestContext] context
@@ -54,6 +73,21 @@ module Aws::AutoScaling
54
73
  end
55
74
  end
56
75
 
76
+ class InstanceRefreshInProgressFault < ServiceError
77
+
78
+ # @param [Seahorse::Client::RequestContext] context
79
+ # @param [String] message
80
+ # @param [Aws::AutoScaling::Types::InstanceRefreshInProgressFault] data
81
+ def initialize(context, message, data = Aws::EmptyStructure.new)
82
+ super(context, message, data)
83
+ end
84
+
85
+ # @return [String]
86
+ def message
87
+ @message || @data[:message]
88
+ end
89
+ end
90
+
57
91
  class InvalidNextToken < ServiceError
58
92
 
59
93
  # @param [Seahorse::Client::RequestContext] context
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -341,7 +343,12 @@ module Aws::AutoScaling
341
343
  # not respect the grace period associated with the group.
342
344
  #
343
345
  # For more information about the health check grace period, see
344
- # CreateAutoScalingGroup.
346
+ # [CreateAutoScalingGroup][1] in the *Amazon EC2 Auto Scaling API
347
+ # Reference*.
348
+ #
349
+ #
350
+ #
351
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_CreateAutoScalingGroup.html
345
352
  # @return [EmptyStructure]
346
353
  def set_health(options = {})
347
354
  options = options.merge(instance_id: @id)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -333,8 +335,8 @@ module Aws::AutoScaling
333
335
  #
334
336
  # If the lifecycle hook times out, Amazon EC2 Auto Scaling performs the
335
337
  # action that you specified in the `DefaultResult` parameter. You can
336
- # prevent the lifecycle hook from timing out by calling
337
- # RecordLifecycleActionHeartbeat.
338
+ # prevent the lifecycle hook from timing out by calling the
339
+ # RecordLifecycleActionHeartbeat API.
338
340
  # @option options [String] :default_result
339
341
  # Defines the action the Auto Scaling group should take when the
340
342
  # lifecycle hook timeout elapses or if an unexpected failure occurs.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -108,19 +110,26 @@ module Aws::AutoScaling
108
110
  # The name of the Auto Scaling group. This name must be unique per
109
111
  # Region per account.
110
112
  # @option options [String] :launch_configuration_name
111
- # The name of the launch configuration.
113
+ # The name of the launch configuration to use when an instance is
114
+ # launched. To get the launch configuration name, use the
115
+ # DescribeLaunchConfigurations API operation. New launch configurations
116
+ # can be created with the CreateLaunchConfiguration API.
112
117
  #
113
- # If you do not specify `LaunchConfigurationName`, you must specify one
114
- # of the following parameters: `InstanceId`, `LaunchTemplate`, or
118
+ # You must specify one of the following parameters in your request:
119
+ # `LaunchConfigurationName`, `LaunchTemplate`, `InstanceId`, or
115
120
  # `MixedInstancesPolicy`.
116
121
  # @option options [Types::LaunchTemplateSpecification] :launch_template
117
- # The launch template to use to launch instances.
122
+ # Parameters used to specify the launch template and version to use when
123
+ # an instance is launched.
118
124
  #
119
125
  # For more information, see [LaunchTemplateSpecification][1] in the
120
126
  # *Amazon EC2 Auto Scaling API Reference*.
121
127
  #
122
- # If you do not specify `LaunchTemplate`, you must specify one of the
123
- # following parameters: `InstanceId`, `LaunchConfigurationName`, or
128
+ # You can alternatively associate a launch template to the Auto Scaling
129
+ # group by using the `MixedInstancesPolicy` parameter.
130
+ #
131
+ # You must specify one of the following parameters in your request:
132
+ # `LaunchConfigurationName`, `LaunchTemplate`, `InstanceId`, or
124
133
  # `MixedInstancesPolicy`.
125
134
  #
126
135
  #
@@ -153,33 +162,43 @@ module Aws::AutoScaling
153
162
  # [2]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html
154
163
  # @option options [String] :instance_id
155
164
  # The ID of the instance used to create a launch configuration for the
156
- # group.
165
+ # group. To get the instance ID, use the Amazon EC2
166
+ # [DescribeInstances][1] API operation.
157
167
  #
158
168
  # When you specify an ID of an instance, Amazon EC2 Auto Scaling creates
159
169
  # a new launch configuration and associates it with the group. This
160
170
  # launch configuration derives its attributes from the specified
161
171
  # instance, except for the block device mapping.
162
172
  #
163
- # For more information, see [Create an Auto Scaling Group Using an EC2
164
- # Instance][1] in the *Amazon EC2 Auto Scaling User Guide*.
165
- #
166
173
  # You must specify one of the following parameters in your request:
167
174
  # `LaunchConfigurationName`, `LaunchTemplate`, `InstanceId`, or
168
175
  # `MixedInstancesPolicy`.
169
176
  #
170
177
  #
171
178
  #
172
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-from-instance.html
179
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html
173
180
  # @option options [required, Integer] :min_size
174
181
  # The minimum size of the group.
175
182
  # @option options [required, Integer] :max_size
176
183
  # The maximum size of the group.
184
+ #
185
+ # <note markdown="1"> With a mixed instances policy that uses instance weighting, Amazon EC2
186
+ # Auto Scaling may need to go above `MaxSize` to meet your capacity
187
+ # requirements. In this event, Amazon EC2 Auto Scaling will never go
188
+ # above `MaxSize` by more than your maximum instance weight (weights
189
+ # that define how many capacity units each instance contributes to the
190
+ # capacity of the group).
191
+ #
192
+ # </note>
177
193
  # @option options [Integer] :desired_capacity
178
- # The number of Amazon EC2 instances that the Auto Scaling group
179
- # attempts to maintain. This number must be greater than or equal to the
180
- # minimum size of the group and less than or equal to the maximum size
181
- # of the group. If you do not specify a desired capacity, the default is
182
- # the minimum size of the group.
194
+ # The desired capacity is the initial capacity of the Auto Scaling group
195
+ # at the time of its creation and the capacity it attempts to maintain.
196
+ # It can scale beyond this capacity if you configure automatic scaling.
197
+ #
198
+ # This number must be greater than or equal to the minimum size of the
199
+ # group and less than or equal to the maximum size of the group. If you
200
+ # do not specify a desired capacity, the default is the minimum size of
201
+ # the group.
183
202
  # @option options [Integer] :default_cooldown
184
203
  # The amount of time, in seconds, after a scaling activity completes
185
204
  # before another scaling activity can start. The default value is `300`.
@@ -293,7 +312,15 @@ module Aws::AutoScaling
293
312
  # @option options [Array<Types::LifecycleHookSpecification>] :lifecycle_hook_specification_list
294
313
  # One or more lifecycle hooks.
295
314
  # @option options [Array<Types::Tag>] :tags
296
- # One or more tags.
315
+ # One or more tags. You can tag your Auto Scaling group and propagate
316
+ # the tags to the Amazon EC2 instances it launches.
317
+ #
318
+ # Tags are not propagated to Amazon EBS volumes. To add tags to Amazon
319
+ # EBS volumes, specify the tags in a launch template but use caution. If
320
+ # the launch template specifies an instance tag with a key that is also
321
+ # specified for the Auto Scaling group, Amazon EC2 Auto Scaling
322
+ # overrides the value of that instance tag with the value specified by
323
+ # the Auto Scaling group.
297
324
  #
298
325
  # For more information, see [Tagging Auto Scaling Groups and
299
326
  # Instances][1] in the *Amazon EC2 Auto Scaling User Guide*.
@@ -314,20 +341,24 @@ module Aws::AutoScaling
314
341
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-service-linked-role.html
315
342
  # @option options [Integer] :max_instance_lifetime
316
343
  # The maximum amount of time, in seconds, that an instance can be in
317
- # service.
344
+ # service. The default is null.
345
+ #
346
+ # This parameter is optional, but if you specify a value for it, you
347
+ # must specify a value of at least 604,800 seconds (7 days). To clear a
348
+ # previously set value, specify a new value of 0.
318
349
  #
319
350
  # For more information, see [Replacing Auto Scaling Instances Based on
320
351
  # Maximum Instance Lifetime][1] in the *Amazon EC2 Auto Scaling User
321
352
  # Guide*.
322
353
  #
323
- # Valid Range: Minimum value of 604800.
354
+ # Valid Range: Minimum value of 0.
324
355
  #
325
356
  #
326
357
  #
327
358
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-max-instance-lifetime.html
328
359
  # @return [AutoScalingGroup]
329
360
  def create_group(options = {})
330
- resp = @client.create_auto_scaling_group(options)
361
+ @client.create_auto_scaling_group(options)
331
362
  AutoScalingGroup.new(
332
363
  name: options[:auto_scaling_group_name],
333
364
  client: @client
@@ -589,7 +620,7 @@ module Aws::AutoScaling
589
620
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-in-vpc.html#as-vpc-tenancy
590
621
  # @return [LaunchConfiguration]
591
622
  def create_launch_configuration(options = {})
592
- resp = @client.create_launch_configuration(options)
623
+ @client.create_launch_configuration(options)
593
624
  LaunchConfiguration.new(
594
625
  name: options[:launch_configuration_name],
595
626
  client: @client