aws-sdk-autoscaling 1.66.0 → 1.70.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4702ef6e1a335ae90ba305208649171d24bc42d537b219ee01c7c04bd903cbf9
4
- data.tar.gz: 6b89a9111eb65fda1e887a100bdf92f5047303d885feea6e203fd1c091b392ef
3
+ metadata.gz: e449082e1f1f1647b9e9fd15095cf695863dfc032803713dbd240f7a9b9c042c
4
+ data.tar.gz: fa54a0250d3cee88c11811aeb5b3db4b3e59b14a84dd5ddd644bb8520a73c52d
5
5
  SHA512:
6
- metadata.gz: 5e136023a7a45e2e98cae02b2ef42446c3bb09a70e6a9d921c6367870afa447de18ffb262f8a8d0b3bf3d2d48829b1f92fc1d081d4568db0d1215dcaa1feafc8
7
- data.tar.gz: 5c02f08fb1157e8ec0659a1125db97a4ad63cc5bc3c9e65ab309d35eb6d7c8a28c27ca2975d27e1a3c203b41aa6c258a4dccc863bce1575c7a4d430c433153b1
6
+ metadata.gz: 23eb7430df35ac5abf46aec22056916b0f96bab10235dd5a24f191143ea844a475baba3c433e9a2959759cba3897a59c4d3fc07080fcda9b369c1213bddd8f9d
7
+ data.tar.gz: 17b71420efae77c2fbe400dcfae24016512f5132148dc0888bb089086d92f3467cf82f63e2ee42992af62975250f2fd8e1ff9b044a3e99c5bdb3e2618712842e
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.70.0 (2021-10-18)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.69.0 (2021-10-14)
10
+ ------------------
11
+
12
+ * Feature - Amazon EC2 Auto Scaling now supports filtering describe Auto Scaling groups API using tags
13
+
14
+ 1.68.0 (2021-09-01)
15
+ ------------------
16
+
17
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
18
+
19
+ 1.67.0 (2021-08-05)
20
+ ------------------
21
+
22
+ * Feature - EC2 Auto Scaling adds configuration checks and Launch Template validation to Instance Refresh.
23
+
4
24
  1.66.0 (2021-07-30)
5
25
  ------------------
6
26
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.66.0
1
+ 1.70.0
@@ -1375,7 +1375,7 @@ module Aws::AutoScaling
1375
1375
  # provide optimal I/O performance. This optimization is not available
1376
1376
  # with all instance types. Additional fees are incurred when you enable
1377
1377
  # EBS optimization for an instance type that is not EBS-optimized by
1378
- # default. For more information, see [Amazon EBS-Optimized Instances][1]
1378
+ # default. For more information, see [Amazon EBS-optimized instances][1]
1379
1379
  # in the *Amazon EC2 User Guide for Linux Instances*.
1380
1380
  #
1381
1381
  # The default value is `false`.
@@ -1917,11 +1917,11 @@ module Aws::AutoScaling
1917
1917
  # Describes the current Amazon EC2 Auto Scaling resource quotas for your
1918
1918
  # account.
1919
1919
  #
1920
- # When you establish an account, the account has initial quotas on the
1921
- # maximum number of Auto Scaling groups and launch configurations that
1922
- # you can create in a given Region. For more information, see [Amazon
1923
- # EC2 Auto Scaling service quotas][1] in the *Amazon EC2 Auto Scaling
1924
- # User Guide*.
1920
+ # When you establish an Amazon Web Services account, the account has
1921
+ # initial quotas on the maximum number of Auto Scaling groups and launch
1922
+ # configurations that you can create in a given Region. For more
1923
+ # information, see [Amazon EC2 Auto Scaling service quotas][1] in the
1924
+ # *Amazon EC2 Auto Scaling User Guide*.
1925
1925
  #
1926
1926
  #
1927
1927
  #
@@ -2021,9 +2021,16 @@ module Aws::AutoScaling
2021
2021
  # Gets information about the Auto Scaling groups in the account and
2022
2022
  # Region.
2023
2023
  #
2024
- # This operation returns information about instances in Auto Scaling
2025
- # groups. To retrieve information about the instances in a warm pool,
2026
- # you must call the DescribeWarmPool API.
2024
+ # If you specify Auto Scaling group names, the output includes
2025
+ # information for only the specified Auto Scaling groups. If you specify
2026
+ # filters, the output includes information for only those Auto Scaling
2027
+ # groups that meet the filter criteria. If you do not specify group
2028
+ # names or filters, the output includes information for all Auto Scaling
2029
+ # groups.
2030
+ #
2031
+ # This operation also returns information about instances in Auto
2032
+ # Scaling groups. To retrieve information about the instances in a warm
2033
+ # pool, you must call the DescribeWarmPool API.
2027
2034
  #
2028
2035
  # @option params [Array<String>] :auto_scaling_group_names
2029
2036
  # The names of the Auto Scaling groups. By default, you can only specify
@@ -2040,6 +2047,9 @@ module Aws::AutoScaling
2040
2047
  # The maximum number of items to return with this call. The default
2041
2048
  # value is `50` and the maximum value is `100`.
2042
2049
  #
2050
+ # @option params [Array<Types::Filter>] :filters
2051
+ # One or more filters to limit the results based on specific tags.
2052
+ #
2043
2053
  # @return [Types::AutoScalingGroupsType] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2044
2054
  #
2045
2055
  # * {Types::AutoScalingGroupsType#auto_scaling_groups #auto_scaling_groups} => Array&lt;Types::AutoScalingGroup&gt;
@@ -2108,6 +2118,12 @@ module Aws::AutoScaling
2108
2118
  # auto_scaling_group_names: ["XmlStringMaxLen255"],
2109
2119
  # next_token: "XmlString",
2110
2120
  # max_records: 1,
2121
+ # filters: [
2122
+ # {
2123
+ # name: "XmlString",
2124
+ # values: ["XmlString"],
2125
+ # },
2126
+ # ],
2111
2127
  # })
2112
2128
  #
2113
2129
  # @example Response structure
@@ -2440,6 +2456,30 @@ module Aws::AutoScaling
2440
2456
  # resp.instance_refreshes[0].progress_details.live_pool_progress.instances_to_update #=> Integer
2441
2457
  # resp.instance_refreshes[0].progress_details.warm_pool_progress.percentage_complete #=> Integer
2442
2458
  # resp.instance_refreshes[0].progress_details.warm_pool_progress.instances_to_update #=> Integer
2459
+ # resp.instance_refreshes[0].preferences.min_healthy_percentage #=> Integer
2460
+ # resp.instance_refreshes[0].preferences.instance_warmup #=> Integer
2461
+ # resp.instance_refreshes[0].preferences.checkpoint_percentages #=> Array
2462
+ # resp.instance_refreshes[0].preferences.checkpoint_percentages[0] #=> Integer
2463
+ # resp.instance_refreshes[0].preferences.checkpoint_delay #=> Integer
2464
+ # resp.instance_refreshes[0].preferences.skip_matching #=> Boolean
2465
+ # resp.instance_refreshes[0].desired_configuration.launch_template.launch_template_id #=> String
2466
+ # resp.instance_refreshes[0].desired_configuration.launch_template.launch_template_name #=> String
2467
+ # resp.instance_refreshes[0].desired_configuration.launch_template.version #=> String
2468
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.launch_template_specification.launch_template_id #=> String
2469
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.launch_template_specification.launch_template_name #=> String
2470
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.launch_template_specification.version #=> String
2471
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides #=> Array
2472
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_type #=> String
2473
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].weighted_capacity #=> String
2474
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].launch_template_specification.launch_template_id #=> String
2475
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].launch_template_specification.launch_template_name #=> String
2476
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].launch_template_specification.version #=> String
2477
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.on_demand_allocation_strategy #=> String
2478
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.on_demand_base_capacity #=> Integer
2479
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.on_demand_percentage_above_base_capacity #=> Integer
2480
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.spot_allocation_strategy #=> String
2481
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.spot_instance_pools #=> Integer
2482
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.spot_max_price #=> String
2443
2483
  # resp.next_token #=> String
2444
2484
  #
2445
2485
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeInstanceRefreshes AWS API Documentation
@@ -5362,13 +5402,19 @@ module Aws::AutoScaling
5362
5402
  req.send_request(options)
5363
5403
  end
5364
5404
 
5365
- # Starts a new instance refresh operation, which triggers a rolling
5366
- # replacement of previously launched instances in the Auto Scaling group
5367
- # with a new group of instances.
5405
+ # Starts a new instance refresh operation. An instance refresh performs
5406
+ # a rolling replacement of all or some instances in an Auto Scaling
5407
+ # group. Each instance is terminated first and then replaced, which
5408
+ # temporarily reduces the capacity available within your Auto Scaling
5409
+ # group.
5368
5410
  #
5369
5411
  # This operation is part of the [instance refresh feature][1] in Amazon
5370
5412
  # EC2 Auto Scaling, which helps you update instances in your Auto
5371
- # Scaling group after you make configuration changes.
5413
+ # Scaling group. This feature is helpful, for example, when you have a
5414
+ # new AMI or a new user data script. You just need to create a new
5415
+ # launch template that specifies the new AMI or user data script. Then
5416
+ # start an instance refresh to immediately begin the process of updating
5417
+ # instances in the group.
5372
5418
  #
5373
5419
  # If the call succeeds, it creates a new instance refresh request with a
5374
5420
  # unique ID that you can use to track its progress. To query its status,
@@ -5388,27 +5434,33 @@ module Aws::AutoScaling
5388
5434
  # The strategy to use for the instance refresh. The only valid value is
5389
5435
  # `Rolling`.
5390
5436
  #
5391
- # A rolling update is an update that is applied to all instances in an
5392
- # Auto Scaling group until all instances have been updated. A rolling
5437
+ # A rolling update helps you update your instances gradually. A rolling
5393
5438
  # update can fail due to failed health checks or if instances are on
5394
5439
  # standby or are protected from scale in. If the rolling update process
5395
- # fails, any instances that were already replaced are not rolled back to
5396
- # their previous configuration.
5440
+ # fails, any instances that are replaced are not rolled back to their
5441
+ # previous configuration.
5397
5442
  #
5398
- # @option params [Types::RefreshPreferences] :preferences
5399
- # Set of preferences associated with the instance refresh request.
5400
- #
5401
- # If not provided, the default values are used. For
5402
- # `MinHealthyPercentage`, the default value is `90`. For
5403
- # `InstanceWarmup`, the default is to use the value specified for the
5404
- # health check grace period for the Auto Scaling group.
5443
+ # @option params [Types::DesiredConfiguration] :desired_configuration
5444
+ # The desired configuration. For example, the desired configuration can
5445
+ # specify a new launch template or a new version of the current launch
5446
+ # template.
5405
5447
  #
5406
- # For more information, see [RefreshPreferences][1] in the *Amazon EC2
5407
- # Auto Scaling API Reference*.
5448
+ # Once the instance refresh succeeds, Amazon EC2 Auto Scaling updates
5449
+ # the settings of the Auto Scaling group to reflect the new desired
5450
+ # configuration.
5408
5451
  #
5452
+ # <note markdown="1"> When you specify a new launch template or a new version of the current
5453
+ # launch template for your desired configuration, consider enabling the
5454
+ # `SkipMatching` property in preferences. If it's enabled, Amazon EC2
5455
+ # Auto Scaling skips replacing instances that already use the specified
5456
+ # launch template and version. This can help you reduce the number of
5457
+ # replacements that are required to apply updates.
5409
5458
  #
5459
+ # </note>
5410
5460
  #
5411
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_RefreshPreferences.html
5461
+ # @option params [Types::RefreshPreferences] :preferences
5462
+ # Set of preferences associated with the instance refresh request. If
5463
+ # not provided, the default values are used.
5412
5464
  #
5413
5465
  # @return [Types::StartInstanceRefreshAnswer] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5414
5466
  #
@@ -5437,11 +5489,47 @@ module Aws::AutoScaling
5437
5489
  # resp = client.start_instance_refresh({
5438
5490
  # auto_scaling_group_name: "XmlStringMaxLen255", # required
5439
5491
  # strategy: "Rolling", # accepts Rolling
5492
+ # desired_configuration: {
5493
+ # launch_template: {
5494
+ # launch_template_id: "XmlStringMaxLen255",
5495
+ # launch_template_name: "LaunchTemplateName",
5496
+ # version: "XmlStringMaxLen255",
5497
+ # },
5498
+ # mixed_instances_policy: {
5499
+ # launch_template: {
5500
+ # launch_template_specification: {
5501
+ # launch_template_id: "XmlStringMaxLen255",
5502
+ # launch_template_name: "LaunchTemplateName",
5503
+ # version: "XmlStringMaxLen255",
5504
+ # },
5505
+ # overrides: [
5506
+ # {
5507
+ # instance_type: "XmlStringMaxLen255",
5508
+ # weighted_capacity: "XmlStringMaxLen32",
5509
+ # launch_template_specification: {
5510
+ # launch_template_id: "XmlStringMaxLen255",
5511
+ # launch_template_name: "LaunchTemplateName",
5512
+ # version: "XmlStringMaxLen255",
5513
+ # },
5514
+ # },
5515
+ # ],
5516
+ # },
5517
+ # instances_distribution: {
5518
+ # on_demand_allocation_strategy: "XmlString",
5519
+ # on_demand_base_capacity: 1,
5520
+ # on_demand_percentage_above_base_capacity: 1,
5521
+ # spot_allocation_strategy: "XmlString",
5522
+ # spot_instance_pools: 1,
5523
+ # spot_max_price: "MixedInstanceSpotPrice",
5524
+ # },
5525
+ # },
5526
+ # },
5440
5527
  # preferences: {
5441
5528
  # min_healthy_percentage: 1,
5442
5529
  # instance_warmup: 1,
5443
5530
  # checkpoint_percentages: [1],
5444
5531
  # checkpoint_delay: 1,
5532
+ # skip_matching: false,
5445
5533
  # },
5446
5534
  # })
5447
5535
  #
@@ -5918,7 +6006,7 @@ module Aws::AutoScaling
5918
6006
  params: params,
5919
6007
  config: config)
5920
6008
  context[:gem_name] = 'aws-sdk-autoscaling'
5921
- context[:gem_version] = '1.66.0'
6009
+ context[:gem_version] = '1.70.0'
5922
6010
  Seahorse::Client::Request.new(handlers, context)
5923
6011
  end
5924
6012
 
@@ -105,6 +105,7 @@ module Aws::AutoScaling
105
105
  DescribeTerminationPolicyTypesAnswer = Shapes::StructureShape.new(name: 'DescribeTerminationPolicyTypesAnswer')
106
106
  DescribeWarmPoolAnswer = Shapes::StructureShape.new(name: 'DescribeWarmPoolAnswer')
107
107
  DescribeWarmPoolType = Shapes::StructureShape.new(name: 'DescribeWarmPoolType')
108
+ DesiredConfiguration = Shapes::StructureShape.new(name: 'DesiredConfiguration')
108
109
  DetachInstancesAnswer = Shapes::StructureShape.new(name: 'DetachInstancesAnswer')
109
110
  DetachInstancesQuery = Shapes::StructureShape.new(name: 'DetachInstancesQuery')
110
111
  DetachLoadBalancerTargetGroupsResultType = Shapes::StructureShape.new(name: 'DetachLoadBalancerTargetGroupsResultType')
@@ -282,6 +283,7 @@ module Aws::AutoScaling
282
283
  SetInstanceProtectionQuery = Shapes::StructureShape.new(name: 'SetInstanceProtectionQuery')
283
284
  ShouldDecrementDesiredCapacity = Shapes::BooleanShape.new(name: 'ShouldDecrementDesiredCapacity')
284
285
  ShouldRespectGracePeriod = Shapes::BooleanShape.new(name: 'ShouldRespectGracePeriod')
286
+ SkipMatching = Shapes::BooleanShape.new(name: 'SkipMatching')
285
287
  SpotInstancePools = Shapes::IntegerShape.new(name: 'SpotInstancePools')
286
288
  SpotPrice = Shapes::StringShape.new(name: 'SpotPrice')
287
289
  StartInstanceRefreshAnswer = Shapes::StructureShape.new(name: 'StartInstanceRefreshAnswer')
@@ -416,6 +418,7 @@ module Aws::AutoScaling
416
418
  AutoScalingGroupNamesType.add_member(:auto_scaling_group_names, Shapes::ShapeRef.new(shape: AutoScalingGroupNames, location_name: "AutoScalingGroupNames"))
417
419
  AutoScalingGroupNamesType.add_member(:next_token, Shapes::ShapeRef.new(shape: XmlString, location_name: "NextToken"))
418
420
  AutoScalingGroupNamesType.add_member(:max_records, Shapes::ShapeRef.new(shape: MaxRecords, location_name: "MaxRecords"))
421
+ AutoScalingGroupNamesType.add_member(:filters, Shapes::ShapeRef.new(shape: Filters, location_name: "Filters"))
419
422
  AutoScalingGroupNamesType.struct_class = Types::AutoScalingGroupNamesType
420
423
 
421
424
  AutoScalingGroups.member = Shapes::ShapeRef.new(shape: AutoScalingGroup)
@@ -687,6 +690,10 @@ module Aws::AutoScaling
687
690
  DescribeWarmPoolType.add_member(:next_token, Shapes::ShapeRef.new(shape: XmlString, location_name: "NextToken"))
688
691
  DescribeWarmPoolType.struct_class = Types::DescribeWarmPoolType
689
692
 
693
+ DesiredConfiguration.add_member(:launch_template, Shapes::ShapeRef.new(shape: LaunchTemplateSpecification, location_name: "LaunchTemplate"))
694
+ DesiredConfiguration.add_member(:mixed_instances_policy, Shapes::ShapeRef.new(shape: MixedInstancesPolicy, location_name: "MixedInstancesPolicy"))
695
+ DesiredConfiguration.struct_class = Types::DesiredConfiguration
696
+
690
697
  DetachInstancesAnswer.add_member(:activities, Shapes::ShapeRef.new(shape: Activities, location_name: "Activities"))
691
698
  DetachInstancesAnswer.struct_class = Types::DetachInstancesAnswer
692
699
 
@@ -807,6 +814,8 @@ module Aws::AutoScaling
807
814
  InstanceRefresh.add_member(:percentage_complete, Shapes::ShapeRef.new(shape: IntPercent, location_name: "PercentageComplete"))
808
815
  InstanceRefresh.add_member(:instances_to_update, Shapes::ShapeRef.new(shape: InstancesToUpdate, location_name: "InstancesToUpdate"))
809
816
  InstanceRefresh.add_member(:progress_details, Shapes::ShapeRef.new(shape: InstanceRefreshProgressDetails, location_name: "ProgressDetails"))
817
+ InstanceRefresh.add_member(:preferences, Shapes::ShapeRef.new(shape: RefreshPreferences, location_name: "Preferences"))
818
+ InstanceRefresh.add_member(:desired_configuration, Shapes::ShapeRef.new(shape: DesiredConfiguration, location_name: "DesiredConfiguration"))
810
819
  InstanceRefresh.struct_class = Types::InstanceRefresh
811
820
 
812
821
  InstanceRefreshIds.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen255)
@@ -1096,6 +1105,7 @@ module Aws::AutoScaling
1096
1105
  RefreshPreferences.add_member(:instance_warmup, Shapes::ShapeRef.new(shape: RefreshInstanceWarmup, location_name: "InstanceWarmup"))
1097
1106
  RefreshPreferences.add_member(:checkpoint_percentages, Shapes::ShapeRef.new(shape: CheckpointPercentages, location_name: "CheckpointPercentages"))
1098
1107
  RefreshPreferences.add_member(:checkpoint_delay, Shapes::ShapeRef.new(shape: CheckpointDelay, location_name: "CheckpointDelay"))
1108
+ RefreshPreferences.add_member(:skip_matching, Shapes::ShapeRef.new(shape: SkipMatching, location_name: "SkipMatching"))
1099
1109
  RefreshPreferences.struct_class = Types::RefreshPreferences
1100
1110
 
1101
1111
  ResourceContentionFault.add_member(:message, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "message"))
@@ -1191,6 +1201,7 @@ module Aws::AutoScaling
1191
1201
 
1192
1202
  StartInstanceRefreshType.add_member(:auto_scaling_group_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, required: true, location_name: "AutoScalingGroupName"))
1193
1203
  StartInstanceRefreshType.add_member(:strategy, Shapes::ShapeRef.new(shape: RefreshStrategy, location_name: "Strategy"))
1204
+ StartInstanceRefreshType.add_member(:desired_configuration, Shapes::ShapeRef.new(shape: DesiredConfiguration, location_name: "DesiredConfiguration"))
1194
1205
  StartInstanceRefreshType.add_member(:preferences, Shapes::ShapeRef.new(shape: RefreshPreferences, location_name: "Preferences"))
1195
1206
  StartInstanceRefreshType.struct_class = Types::StartInstanceRefreshType
1196
1207
 
@@ -1584,6 +1595,7 @@ module Aws::AutoScaling
1584
1595
  o.input = Shapes::ShapeRef.new(shape: DescribeLoadBalancerTargetGroupsRequest)
1585
1596
  o.output = Shapes::ShapeRef.new(shape: DescribeLoadBalancerTargetGroupsResponse)
1586
1597
  o.errors << Shapes::ShapeRef.new(shape: ResourceContentionFault)
1598
+ o.errors << Shapes::ShapeRef.new(shape: InvalidNextToken)
1587
1599
  end)
1588
1600
 
1589
1601
  api.add_operation(:describe_load_balancers, Seahorse::Model::Operation.new.tap do |o|
@@ -1593,6 +1605,7 @@ module Aws::AutoScaling
1593
1605
  o.input = Shapes::ShapeRef.new(shape: DescribeLoadBalancersRequest)
1594
1606
  o.output = Shapes::ShapeRef.new(shape: DescribeLoadBalancersResponse)
1595
1607
  o.errors << Shapes::ShapeRef.new(shape: ResourceContentionFault)
1608
+ o.errors << Shapes::ShapeRef.new(shape: InvalidNextToken)
1596
1609
  end)
1597
1610
 
1598
1611
  api.add_operation(:describe_metric_collection_types, Seahorse::Model::Operation.new.tap do |o|
@@ -562,7 +562,7 @@ module Aws::AutoScaling
562
562
  # provide optimal I/O performance. This optimization is not available
563
563
  # with all instance types. Additional fees are incurred when you enable
564
564
  # EBS optimization for an instance type that is not EBS-optimized by
565
- # default. For more information, see [Amazon EBS-Optimized Instances][1]
565
+ # default. For more information, see [Amazon EBS-optimized instances][1]
566
566
  # in the *Amazon EC2 User Guide for Linux Instances*.
567
567
  #
568
568
  # The default value is `false`.
@@ -694,6 +694,12 @@ module Aws::AutoScaling
694
694
  #
695
695
  # groups = auto_scaling.groups({
696
696
  # auto_scaling_group_names: ["XmlStringMaxLen255"],
697
+ # filters: [
698
+ # {
699
+ # name: "XmlString",
700
+ # values: ["XmlString"],
701
+ # },
702
+ # ],
697
703
  # })
698
704
  # @param [Hash] options ({})
699
705
  # @option options [Array<String>] :auto_scaling_group_names
@@ -702,6 +708,8 @@ module Aws::AutoScaling
702
708
  # `MaxRecords` parameter.
703
709
  #
704
710
  # If you omit this parameter, all Auto Scaling groups are described.
711
+ # @option options [Array<Types::Filter>] :filters
712
+ # One or more filters to limit the results based on specific tags.
705
713
  # @return [AutoScalingGroup::Collection]
706
714
  def groups(options = {})
707
715
  batches = Enumerator.new do |y|
@@ -456,6 +456,12 @@ module Aws::AutoScaling
456
456
  # auto_scaling_group_names: ["XmlStringMaxLen255"],
457
457
  # next_token: "XmlString",
458
458
  # max_records: 1,
459
+ # filters: [
460
+ # {
461
+ # name: "XmlString",
462
+ # values: ["XmlString"],
463
+ # },
464
+ # ],
459
465
  # }
460
466
  #
461
467
  # @!attribute [rw] auto_scaling_group_names
@@ -476,12 +482,17 @@ module Aws::AutoScaling
476
482
  # value is `50` and the maximum value is `100`.
477
483
  # @return [Integer]
478
484
  #
485
+ # @!attribute [rw] filters
486
+ # One or more filters to limit the results based on specific tags.
487
+ # @return [Array<Types::Filter>]
488
+ #
479
489
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AutoScalingGroupNamesType AWS API Documentation
480
490
  #
481
491
  class AutoScalingGroupNamesType < Struct.new(
482
492
  :auto_scaling_group_names,
483
493
  :next_token,
484
- :max_records)
494
+ :max_records,
495
+ :filters)
485
496
  SENSITIVE = []
486
497
  include Aws::Structure
487
498
  end
@@ -1506,7 +1517,7 @@ module Aws::AutoScaling
1506
1517
  # with all instance types. Additional fees are incurred when you
1507
1518
  # enable EBS optimization for an instance type that is not
1508
1519
  # EBS-optimized by default. For more information, see [Amazon
1509
- # EBS-Optimized Instances][1] in the *Amazon EC2 User Guide for Linux
1520
+ # EBS-optimized instances][1] in the *Amazon EC2 User Guide for Linux
1510
1521
  # Instances*.
1511
1522
  #
1512
1523
  # The default value is `false`.
@@ -2543,6 +2554,83 @@ module Aws::AutoScaling
2543
2554
  include Aws::Structure
2544
2555
  end
2545
2556
 
2557
+ # Describes the desired configuration for an instance refresh.
2558
+ #
2559
+ # If you specify a desired configuration, you must specify either a
2560
+ # `LaunchTemplate` or a `MixedInstancesPolicy`.
2561
+ #
2562
+ # @note When making an API call, you may pass DesiredConfiguration
2563
+ # data as a hash:
2564
+ #
2565
+ # {
2566
+ # launch_template: {
2567
+ # launch_template_id: "XmlStringMaxLen255",
2568
+ # launch_template_name: "LaunchTemplateName",
2569
+ # version: "XmlStringMaxLen255",
2570
+ # },
2571
+ # mixed_instances_policy: {
2572
+ # launch_template: {
2573
+ # launch_template_specification: {
2574
+ # launch_template_id: "XmlStringMaxLen255",
2575
+ # launch_template_name: "LaunchTemplateName",
2576
+ # version: "XmlStringMaxLen255",
2577
+ # },
2578
+ # overrides: [
2579
+ # {
2580
+ # instance_type: "XmlStringMaxLen255",
2581
+ # weighted_capacity: "XmlStringMaxLen32",
2582
+ # launch_template_specification: {
2583
+ # launch_template_id: "XmlStringMaxLen255",
2584
+ # launch_template_name: "LaunchTemplateName",
2585
+ # version: "XmlStringMaxLen255",
2586
+ # },
2587
+ # },
2588
+ # ],
2589
+ # },
2590
+ # instances_distribution: {
2591
+ # on_demand_allocation_strategy: "XmlString",
2592
+ # on_demand_base_capacity: 1,
2593
+ # on_demand_percentage_above_base_capacity: 1,
2594
+ # spot_allocation_strategy: "XmlString",
2595
+ # spot_instance_pools: 1,
2596
+ # spot_max_price: "MixedInstanceSpotPrice",
2597
+ # },
2598
+ # },
2599
+ # }
2600
+ #
2601
+ # @!attribute [rw] launch_template
2602
+ # Describes the launch template and the version of the launch template
2603
+ # that Amazon EC2 Auto Scaling uses to launch Amazon EC2 instances.
2604
+ # For more information about launch templates, see [Launch
2605
+ # templates][1] in the *Amazon EC2 Auto Scaling User Guide*.
2606
+ #
2607
+ #
2608
+ #
2609
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/LaunchTemplates.html
2610
+ # @return [Types::LaunchTemplateSpecification]
2611
+ #
2612
+ # @!attribute [rw] mixed_instances_policy
2613
+ # Describes a mixed instances policy. A mixed instances policy
2614
+ # contains the instance types Amazon EC2 Auto Scaling can launch, and
2615
+ # other information Amazon EC2 Auto Scaling can use to launch
2616
+ # instances to help you optimize your costs. For more information, see
2617
+ # [Auto Scaling groups with multiple instance types and purchase
2618
+ # options][1] in the *Amazon EC2 Auto Scaling User Guide*.
2619
+ #
2620
+ #
2621
+ #
2622
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html
2623
+ # @return [Types::MixedInstancesPolicy]
2624
+ #
2625
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DesiredConfiguration AWS API Documentation
2626
+ #
2627
+ class DesiredConfiguration < Struct.new(
2628
+ :launch_template,
2629
+ :mixed_instances_policy)
2630
+ SENSITIVE = []
2631
+ include Aws::Structure
2632
+ end
2633
+
2546
2634
  # @!attribute [rw] activities
2547
2635
  # The activities related to detaching the instances from the Auto
2548
2636
  # Scaling group.
@@ -2755,8 +2843,8 @@ module Aws::AutoScaling
2755
2843
  # @return [Integer]
2756
2844
  #
2757
2845
  # @!attribute [rw] volume_type
2758
- # The volume type. For more information, see [Amazon EBS Volume
2759
- # Types][1] in the *Amazon EC2 User Guide for Linux Instances*.
2846
+ # The volume type. For more information, see [Amazon EBS volume
2847
+ # types][1] in the *Amazon EC2 User Guide for Linux Instances*.
2760
2848
  #
2761
2849
  # Valid Values: `standard` \| `io1` \| `gp2` \| `st1` \| `sc1` \|
2762
2850
  # `gp3`
@@ -2801,38 +2889,29 @@ module Aws::AutoScaling
2801
2889
  # @!attribute [rw] encrypted
2802
2890
  # Specifies whether the volume should be encrypted. Encrypted EBS
2803
2891
  # volumes can only be attached to instances that support Amazon EBS
2804
- # encryption. For more information, see [Supported Instance Types][1].
2892
+ # encryption. For more information, see [Supported instance types][1].
2805
2893
  # If your AMI uses encrypted volumes, you can also only launch it on
2806
2894
  # supported instance types.
2807
2895
  #
2808
- # <note markdown="1"> If you are creating a volume from a snapshot, you cannot specify an
2809
- # encryption value. Volumes that are created from encrypted snapshots
2810
- # are automatically encrypted, and volumes that are created from
2811
- # unencrypted snapshots are automatically unencrypted. By default,
2812
- # encrypted snapshots use the Amazon Web Services managed CMK that is
2813
- # used for EBS encryption, but you can specify a custom CMK when you
2814
- # create the snapshot. The ability to encrypt a snapshot during
2815
- # copying also allows you to apply a new CMK to an already-encrypted
2816
- # snapshot. Volumes restored from the resulting copy are only
2817
- # accessible using the new CMK.
2818
- #
2819
- # Enabling [encryption by default][2] results in all EBS volumes being
2820
- # encrypted with the Amazon Web Services managed CMK or a customer
2821
- # managed CMK, whether or not the snapshot was encrypted.
2896
+ # <note markdown="1"> If you are creating a volume from a snapshot, you cannot create an
2897
+ # unencrypted volume from an encrypted snapshot. Also, you cannot
2898
+ # specify a KMS key ID when using a launch configuration.
2822
2899
  #
2823
- # </note>
2900
+ # If you enable encryption by default, the EBS volumes that you create
2901
+ # are always encrypted, either using the Amazon Web Services managed
2902
+ # KMS key or a customer-managed KMS key, regardless of whether the
2903
+ # snapshot was encrypted.
2824
2904
  #
2825
- # For more information, see [Using Encryption with EBS-Backed AMIs][3]
2826
- # in the *Amazon EC2 User Guide for Linux Instances* and [Required CMK
2827
- # key policy for use with encrypted volumes][4] in the *Amazon EC2
2828
- # Auto Scaling User Guide*.
2905
+ # For more information, see [Using Amazon Web Services KMS keys to
2906
+ # encrypt Amazon EBS volumes][2] in the *Amazon EC2 Auto Scaling User
2907
+ # Guide*.
2908
+ #
2909
+ # </note>
2829
2910
  #
2830
2911
  #
2831
2912
  #
2832
2913
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#EBSEncryption_supported_instances
2833
- # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default
2834
- # [3]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIEncryption.html
2835
- # [4]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/key-policy-requirements-EBS-encryption.html
2914
+ # [2]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-data-protection.html#encryption
2836
2915
  # @return [Boolean]
2837
2916
  #
2838
2917
  # @!attribute [rw] throughput
@@ -3164,7 +3243,11 @@ module Aws::AutoScaling
3164
3243
  end
3165
3244
 
3166
3245
  # Describes a filter that is used to return a more specific list of
3167
- # results when describing tags.
3246
+ # results from a describe operation.
3247
+ #
3248
+ # If you specify multiple filters, the filters are joined with an `AND`,
3249
+ # and the request returns only results that match all of the specified
3250
+ # filters.
3168
3251
  #
3169
3252
  # For more information, see [Tagging Auto Scaling groups and
3170
3253
  # instances][1] in the *Amazon EC2 Auto Scaling User Guide*.
@@ -3182,12 +3265,58 @@ module Aws::AutoScaling
3182
3265
  # }
3183
3266
  #
3184
3267
  # @!attribute [rw] name
3185
- # The name of the filter. The valid values are: `auto-scaling-group`,
3186
- # `key`, `value`, and `propagate-at-launch`.
3268
+ # The name of the filter.
3269
+ #
3270
+ # The valid values for `Name` depend on the API operation that you are
3271
+ # including the filter in, DescribeAutoScalingGroups or DescribeTags.
3272
+ #
3273
+ # **DescribeAutoScalingGroups**
3274
+ #
3275
+ # Valid values for `Name` include the following:
3276
+ #
3277
+ # * `tag-key` - Accepts tag keys. The results will only include
3278
+ # information about the Auto Scaling groups associated with these
3279
+ # tag keys.
3280
+ #
3281
+ # * `tag-value` - Accepts tag values. The results will only include
3282
+ # information about the Auto Scaling groups associated with these
3283
+ # tag values.
3284
+ #
3285
+ # * `tag:<key>` - Accepts the key/value combination of the tag. Use
3286
+ # the tag key in the filter name and the tag value as the filter
3287
+ # value. The results will only include information about the Auto
3288
+ # Scaling groups associated with the specified key/value
3289
+ # combination.
3290
+ #
3291
+ # **DescribeTags**
3292
+ #
3293
+ # Valid values for `Name` include the following:
3294
+ #
3295
+ # * `auto-scaling-group` - Accepts the names of Auto Scaling groups.
3296
+ # The results will only include information about the tags
3297
+ # associated with these Auto Scaling groups.
3298
+ #
3299
+ # * `key` - Accepts tag keys. The results will only include
3300
+ # information about the tags associated with these tag keys.
3301
+ #
3302
+ # * `value` - Accepts tag values. The results will only include
3303
+ # information about the tags associated with these tag values.
3304
+ #
3305
+ # * `propagate-at-launch` - Accepts a boolean value, which specifies
3306
+ # whether tags propagate to instances at launch. The results will
3307
+ # only include information about the tags associated with the
3308
+ # specified boolean value.
3187
3309
  # @return [String]
3188
3310
  #
3189
3311
  # @!attribute [rw] values
3190
3312
  # One or more filter values. Filter values are case-sensitive.
3313
+ #
3314
+ # If you specify multiple values for a filter, the values are joined
3315
+ # with an `OR`, and the request returns all results that match any of
3316
+ # the specified values. For example, specify "tag:environment" for
3317
+ # the filter name and "production,development" for the filter values
3318
+ # to find Auto Scaling groups with the tag "environment=production"
3319
+ # or "environment=development".
3191
3320
  # @return [Array<String>]
3192
3321
  #
3193
3322
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/Filter AWS API Documentation
@@ -3484,6 +3613,14 @@ module Aws::AutoScaling
3484
3613
  # warm pool.
3485
3614
  # @return [Types::InstanceRefreshProgressDetails]
3486
3615
  #
3616
+ # @!attribute [rw] preferences
3617
+ # Describes the preferences for an instance refresh.
3618
+ # @return [Types::RefreshPreferences]
3619
+ #
3620
+ # @!attribute [rw] desired_configuration
3621
+ # Describes the specific update you want to deploy.
3622
+ # @return [Types::DesiredConfiguration]
3623
+ #
3487
3624
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/InstanceRefresh AWS API Documentation
3488
3625
  #
3489
3626
  class InstanceRefresh < Struct.new(
@@ -3495,7 +3632,9 @@ module Aws::AutoScaling
3495
3632
  :end_time,
3496
3633
  :percentage_complete,
3497
3634
  :instances_to_update,
3498
- :progress_details)
3635
+ :progress_details,
3636
+ :preferences,
3637
+ :desired_configuration)
3499
3638
  SENSITIVE = []
3500
3639
  include Aws::Structure
3501
3640
  end
@@ -3595,14 +3734,15 @@ module Aws::AutoScaling
3595
3734
  # Instances, and how the Auto Scaling group allocates instance types to
3596
3735
  # fulfill On-Demand and Spot capacities.
3597
3736
  #
3598
- # When you update `SpotAllocationStrategy`, `SpotInstancePools`, or
3599
- # `SpotMaxPrice`, this update action does not deploy any changes across
3600
- # the running Amazon EC2 instances in the group. Your existing Spot
3601
- # Instances continue to run as long as the maximum price for those
3602
- # instances is higher than the current Spot price. When scale out
3603
- # occurs, Amazon EC2 Auto Scaling launches instances based on the new
3604
- # settings. When scale in occurs, Amazon EC2 Auto Scaling terminates
3605
- # instances according to the group's termination policies.
3737
+ # When you modify `SpotAllocationStrategy`, `SpotInstancePools`, or
3738
+ # `SpotMaxPrice` in the UpdateAutoScalingGroup API call, this update
3739
+ # action does not deploy any changes across the running Amazon EC2
3740
+ # instances in the group. Your existing Spot Instances continue to run
3741
+ # as long as the maximum price for those instances is higher than the
3742
+ # current Spot price. When scale out occurs, Amazon EC2 Auto Scaling
3743
+ # launches instances based on the new settings. When scale in occurs,
3744
+ # Amazon EC2 Auto Scaling terminates instances according to the group's
3745
+ # termination policies.
3606
3746
  #
3607
3747
  # @note When making an API call, you may pass InstancesDistribution
3608
3748
  # data as a hash:
@@ -4009,11 +4149,12 @@ module Aws::AutoScaling
4009
4149
  #
4010
4150
  # You specify these properties as part of a mixed instances policy.
4011
4151
  #
4012
- # When you update the launch template or overrides, existing Amazon EC2
4013
- # instances continue to run. When scale out occurs, Amazon EC2 Auto
4014
- # Scaling launches instances to match the new settings. When scale in
4015
- # occurs, Amazon EC2 Auto Scaling terminates instances according to the
4016
- # group's termination policies.
4152
+ # When you update the launch template or overrides in the
4153
+ # UpdateAutoScalingGroup API call, existing Amazon EC2 instances
4154
+ # continue to run. When scale out occurs, Amazon EC2 Auto Scaling
4155
+ # launches instances to match the new settings. When scale in occurs,
4156
+ # Amazon EC2 Auto Scaling terminates instances according to the group's
4157
+ # termination policies.
4017
4158
  #
4018
4159
  # @note When making an API call, you may pass LaunchTemplate
4019
4160
  # data as a hash:
@@ -4136,18 +4277,14 @@ module Aws::AutoScaling
4136
4277
  include Aws::Structure
4137
4278
  end
4138
4279
 
4139
- # Describes the Amazon EC2 launch template and the launch template
4140
- # version that can be used by an Auto Scaling group to configure Amazon
4141
- # EC2 instances.
4142
- #
4143
- # The launch template that is specified must be configured for use with
4144
- # an Auto Scaling group. For more information, see [Creating a launch
4145
- # template for an Auto Scaling group][1] in the *Amazon EC2 Auto Scaling
4146
- # User Guide*.
4280
+ # Describes the launch template and the version of the launch template
4281
+ # that Amazon EC2 Auto Scaling uses to launch Amazon EC2 instances. For
4282
+ # more information about launch templates, see [Launch templates][1] in
4283
+ # the *Amazon EC2 Auto Scaling User Guide*.
4147
4284
  #
4148
4285
  #
4149
4286
  #
4150
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html
4287
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/LaunchTemplates.html
4151
4288
  #
4152
4289
  # @note When making an API call, you may pass LaunchTemplateSpecification
4153
4290
  # data as a hash:
@@ -4613,17 +4750,12 @@ module Aws::AutoScaling
4613
4750
  include Aws::Structure
4614
4751
  end
4615
4752
 
4616
- # Describes a mixed instances policy for an Auto Scaling group. With
4617
- # mixed instances, your Auto Scaling group can provision a combination
4618
- # of On-Demand Instances and Spot Instances across multiple instance
4619
- # types. For more information, see [Auto Scaling groups with multiple
4620
- # instance types and purchase options][1] in the *Amazon EC2 Auto
4621
- # Scaling User Guide*.
4622
- #
4623
- # You can create a mixed instances policy for a new Auto Scaling group,
4624
- # or you can create it for an existing group by updating the group to
4625
- # specify `MixedInstancesPolicy` as the top-level property instead of a
4626
- # launch configuration or launch template.
4753
+ # Describes a mixed instances policy. A mixed instances policy contains
4754
+ # the instance types Amazon EC2 Auto Scaling can launch, and other
4755
+ # information Amazon EC2 Auto Scaling can use to launch instances to
4756
+ # help you optimize your costs. For more information, see [Auto Scaling
4757
+ # groups with multiple instance types and purchase options][1] in the
4758
+ # *Amazon EC2 Auto Scaling User Guide*.
4627
4759
  #
4628
4760
  #
4629
4761
  #
@@ -4662,10 +4794,10 @@ module Aws::AutoScaling
4662
4794
  # }
4663
4795
  #
4664
4796
  # @!attribute [rw] launch_template
4665
- # Specifies the launch template to use and optionally the instance
4666
- # types (overrides) that are used to provision EC2 instances to
4667
- # fulfill On-Demand and Spot capacities. Required when creating a
4668
- # mixed instances policy.
4797
+ # Specifies the launch template to use and the instance types
4798
+ # (overrides) that are used to provision EC2 instances to fulfill
4799
+ # On-Demand and Spot capacities. Required when creating a mixed
4800
+ # instances policy.
4669
4801
  # @return [Types::LaunchTemplate]
4670
4802
  #
4671
4803
  # @!attribute [rw] instances_distribution
@@ -5856,11 +5988,7 @@ module Aws::AutoScaling
5856
5988
  include Aws::Structure
5857
5989
  end
5858
5990
 
5859
- # Describes information used to start an instance refresh.
5860
- #
5861
- # All properties are optional. However, if you specify a value for
5862
- # `CheckpointDelay`, you must also provide a value for
5863
- # `CheckpointPercentages`.
5991
+ # Describes the preferences for an instance refresh.
5864
5992
  #
5865
5993
  # @note When making an API call, you may pass RefreshPreferences
5866
5994
  # data as a hash:
@@ -5870,14 +5998,20 @@ module Aws::AutoScaling
5870
5998
  # instance_warmup: 1,
5871
5999
  # checkpoint_percentages: [1],
5872
6000
  # checkpoint_delay: 1,
6001
+ # skip_matching: false,
5873
6002
  # }
5874
6003
  #
5875
6004
  # @!attribute [rw] min_healthy_percentage
5876
6005
  # The amount of capacity in the Auto Scaling group that must remain
5877
6006
  # healthy during an instance refresh to allow the operation to
5878
- # continue, as a percentage of the desired capacity of the Auto
5879
- # Scaling group (rounded up to the nearest integer). The default is
5880
- # `90`.
6007
+ # continue. The value is expressed as a percentage of the desired
6008
+ # capacity of the Auto Scaling group (rounded up to the nearest
6009
+ # integer). The default is `90`.
6010
+ #
6011
+ # Setting the minimum healthy percentage to 100 percent limits the
6012
+ # rate of replacement to one instance at a time. In contrast, setting
6013
+ # it to 0 percent has the effect of replacing all instances at the
6014
+ # same time.
5881
6015
  # @return [Integer]
5882
6016
  #
5883
6017
  # @!attribute [rw] instance_warmup
@@ -5909,13 +6043,23 @@ module Aws::AutoScaling
5909
6043
  # hour).
5910
6044
  # @return [Integer]
5911
6045
  #
6046
+ # @!attribute [rw] skip_matching
6047
+ # A boolean value that indicates whether skip matching is enabled. If
6048
+ # true, then Amazon EC2 Auto Scaling skips replacing instances that
6049
+ # match the desired configuration. If no desired configuration is
6050
+ # specified, then it skips replacing instances that have the same
6051
+ # configuration that is already set on the group. The default is
6052
+ # `false`.
6053
+ # @return [Boolean]
6054
+ #
5912
6055
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/RefreshPreferences AWS API Documentation
5913
6056
  #
5914
6057
  class RefreshPreferences < Struct.new(
5915
6058
  :min_healthy_percentage,
5916
6059
  :instance_warmup,
5917
6060
  :checkpoint_percentages,
5918
- :checkpoint_delay)
6061
+ :checkpoint_delay,
6062
+ :skip_matching)
5919
6063
  SENSITIVE = []
5920
6064
  include Aws::Structure
5921
6065
  end
@@ -6463,11 +6607,47 @@ module Aws::AutoScaling
6463
6607
  # {
6464
6608
  # auto_scaling_group_name: "XmlStringMaxLen255", # required
6465
6609
  # strategy: "Rolling", # accepts Rolling
6610
+ # desired_configuration: {
6611
+ # launch_template: {
6612
+ # launch_template_id: "XmlStringMaxLen255",
6613
+ # launch_template_name: "LaunchTemplateName",
6614
+ # version: "XmlStringMaxLen255",
6615
+ # },
6616
+ # mixed_instances_policy: {
6617
+ # launch_template: {
6618
+ # launch_template_specification: {
6619
+ # launch_template_id: "XmlStringMaxLen255",
6620
+ # launch_template_name: "LaunchTemplateName",
6621
+ # version: "XmlStringMaxLen255",
6622
+ # },
6623
+ # overrides: [
6624
+ # {
6625
+ # instance_type: "XmlStringMaxLen255",
6626
+ # weighted_capacity: "XmlStringMaxLen32",
6627
+ # launch_template_specification: {
6628
+ # launch_template_id: "XmlStringMaxLen255",
6629
+ # launch_template_name: "LaunchTemplateName",
6630
+ # version: "XmlStringMaxLen255",
6631
+ # },
6632
+ # },
6633
+ # ],
6634
+ # },
6635
+ # instances_distribution: {
6636
+ # on_demand_allocation_strategy: "XmlString",
6637
+ # on_demand_base_capacity: 1,
6638
+ # on_demand_percentage_above_base_capacity: 1,
6639
+ # spot_allocation_strategy: "XmlString",
6640
+ # spot_instance_pools: 1,
6641
+ # spot_max_price: "MixedInstanceSpotPrice",
6642
+ # },
6643
+ # },
6644
+ # },
6466
6645
  # preferences: {
6467
6646
  # min_healthy_percentage: 1,
6468
6647
  # instance_warmup: 1,
6469
6648
  # checkpoint_percentages: [1],
6470
6649
  # checkpoint_delay: 1,
6650
+ # skip_matching: false,
6471
6651
  # },
6472
6652
  # }
6473
6653
  #
@@ -6479,28 +6659,36 @@ module Aws::AutoScaling
6479
6659
  # The strategy to use for the instance refresh. The only valid value
6480
6660
  # is `Rolling`.
6481
6661
  #
6482
- # A rolling update is an update that is applied to all instances in an
6483
- # Auto Scaling group until all instances have been updated. A rolling
6484
- # update can fail due to failed health checks or if instances are on
6485
- # standby or are protected from scale in. If the rolling update
6486
- # process fails, any instances that were already replaced are not
6487
- # rolled back to their previous configuration.
6662
+ # A rolling update helps you update your instances gradually. A
6663
+ # rolling update can fail due to failed health checks or if instances
6664
+ # are on standby or are protected from scale in. If the rolling update
6665
+ # process fails, any instances that are replaced are not rolled back
6666
+ # to their previous configuration.
6488
6667
  # @return [String]
6489
6668
  #
6490
- # @!attribute [rw] preferences
6491
- # Set of preferences associated with the instance refresh request.
6669
+ # @!attribute [rw] desired_configuration
6670
+ # The desired configuration. For example, the desired configuration
6671
+ # can specify a new launch template or a new version of the current
6672
+ # launch template.
6492
6673
  #
6493
- # If not provided, the default values are used. For
6494
- # `MinHealthyPercentage`, the default value is `90`. For
6495
- # `InstanceWarmup`, the default is to use the value specified for the
6496
- # health check grace period for the Auto Scaling group.
6497
- #
6498
- # For more information, see [RefreshPreferences][1] in the *Amazon EC2
6499
- # Auto Scaling API Reference*.
6674
+ # Once the instance refresh succeeds, Amazon EC2 Auto Scaling updates
6675
+ # the settings of the Auto Scaling group to reflect the new desired
6676
+ # configuration.
6500
6677
  #
6678
+ # <note markdown="1"> When you specify a new launch template or a new version of the
6679
+ # current launch template for your desired configuration, consider
6680
+ # enabling the `SkipMatching` property in preferences. If it's
6681
+ # enabled, Amazon EC2 Auto Scaling skips replacing instances that
6682
+ # already use the specified launch template and version. This can help
6683
+ # you reduce the number of replacements that are required to apply
6684
+ # updates.
6501
6685
  #
6686
+ # </note>
6687
+ # @return [Types::DesiredConfiguration]
6502
6688
  #
6503
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_RefreshPreferences.html
6689
+ # @!attribute [rw] preferences
6690
+ # Set of preferences associated with the instance refresh request. If
6691
+ # not provided, the default values are used.
6504
6692
  # @return [Types::RefreshPreferences]
6505
6693
  #
6506
6694
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/StartInstanceRefreshType AWS API Documentation
@@ -6508,6 +6696,7 @@ module Aws::AutoScaling
6508
6696
  class StartInstanceRefreshType < Struct.new(
6509
6697
  :auto_scaling_group_name,
6510
6698
  :strategy,
6699
+ :desired_configuration,
6511
6700
  :preferences)
6512
6701
  SENSITIVE = []
6513
6702
  include Aws::Structure
@@ -59,6 +59,6 @@ require_relative 'aws-sdk-autoscaling/customizations'
59
59
  # @!group service
60
60
  module Aws::AutoScaling
61
61
 
62
- GEM_VERSION = '1.66.0'
62
+ GEM_VERSION = '1.70.0'
63
63
 
64
64
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-autoscaling
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.66.0
4
+ version: 1.70.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-07-30 00:00:00.000000000 Z
11
+ date: 2021-10-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.119.0
22
+ version: 3.121.2
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.119.0
32
+ version: 3.121.2
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -87,7 +87,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
87
87
  requirements:
88
88
  - - ">="
89
89
  - !ruby/object:Gem::Version
90
- version: '0'
90
+ version: '2.3'
91
91
  required_rubygems_version: !ruby/object:Gem::Requirement
92
92
  requirements:
93
93
  - - ">="