aws-sdk-autoscaling 1.98.0 → 1.100.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3d0be1e44da4320f4db914653b73f6d0aeabea464f17d8855a30b342e81bf261
4
- data.tar.gz: 9d40c8035a1a14a8bc5f406d474ebcc785ed8834886888b4bfd331701263ad46
3
+ metadata.gz: d9ac5c5f2f8a4fc1bf643b1c385e265d602cf43fc7ba686e87362eb53e6fd5b0
4
+ data.tar.gz: 5daa72f1da1522423c421d79b61792c68191357f7a31bdae7febbc0dc60c3709
5
5
  SHA512:
6
- metadata.gz: 3b9b0cc5f5619cb49855ffc36b797a8b9a14a3bbb8bcea118c3c2976f322934b44706432285af8af986f447711722ab624b04b24422270954e1b0537e627acd6
7
- data.tar.gz: 2600acde9de4f9f525286ddd26d7364353803242194e06601d09be958cbc13ca1ec3e82459c6925091a758e8cc825d20db76359bc9431aa1e795d24ebb7c10c7
6
+ metadata.gz: 7dc3d63ca389b6ca956f3993520128737333fbab2c178c61f369ee873f71b23e715139e66bc7828c6aab64b62b3ba600ae491732d1771bf4aac87d671b3f54e8
7
+ data.tar.gz: 0c3ef237e1c7fd295f18969a10f237c88b47cfb7794c741b3e2c3132548a4f821407c3b49abf99ce1a0cda019202649f7c885ebe05bd517bb2dbaa35fe9bb234
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.100.0 (2023-11-15)
5
+ ------------------
6
+
7
+ * Feature - This release introduces Instance Maintenance Policy, a new EC2 Auto Scaling capability that allows customers to define whether instances are launched before or after existing instances are terminated during instance replacement operations.
8
+
9
+ 1.99.0 (2023-10-12)
10
+ ------------------
11
+
12
+ * Feature - Update the NotificationMetadata field to only allow visible ascii characters. Add paginators to DescribeInstanceRefreshes, DescribeLoadBalancers, and DescribeLoadBalancerTargetGroups
13
+
4
14
  1.98.0 (2023-09-27)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.98.0
1
+ 1.100.0
@@ -233,6 +233,12 @@ module Aws::AutoScaling
233
233
  data[:traffic_sources]
234
234
  end
235
235
 
236
+ # An instance maintenance policy.
237
+ # @return [Types::InstanceMaintenancePolicy]
238
+ def instance_maintenance_policy
239
+ data[:instance_maintenance_policy]
240
+ end
241
+
236
242
  # @!endgroup
237
243
 
238
244
  # @return [Client]
@@ -1258,6 +1264,10 @@ module Aws::AutoScaling
1258
1264
  # context: "Context",
1259
1265
  # desired_capacity_type: "XmlStringMaxLen255",
1260
1266
  # default_instance_warmup: 1,
1267
+ # instance_maintenance_policy: {
1268
+ # min_healthy_percentage: 1,
1269
+ # max_healthy_percentage: 1,
1270
+ # },
1261
1271
  # })
1262
1272
  # @param [Hash] options ({})
1263
1273
  # @option options [String] :launch_configuration_name
@@ -1444,6 +1454,14 @@ module Aws::AutoScaling
1444
1454
  #
1445
1455
  #
1446
1456
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-default-instance-warmup.html
1457
+ # @option options [Types::InstanceMaintenancePolicy] :instance_maintenance_policy
1458
+ # An instance maintenance policy. For more information, see [Set
1459
+ # instance maintenance policy][1] in the *Amazon EC2 Auto Scaling User
1460
+ # Guide*.
1461
+ #
1462
+ #
1463
+ #
1464
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html
1447
1465
  # @return [AutoScalingGroup]
1448
1466
  def update(options = {})
1449
1467
  options = options.merge(auto_scaling_group_name: @name)
@@ -1576,34 +1594,27 @@ module Aws::AutoScaling
1576
1594
 
1577
1595
  # @example Request syntax with placeholder values
1578
1596
  #
1579
- # load_balancers = auto_scaling_group.load_balancers({
1580
- # next_token: "XmlString",
1581
- # max_records: 1,
1582
- # })
1597
+ # auto_scaling_group.load_balancers()
1583
1598
  # @param [Hash] options ({})
1584
- # @option options [String] :next_token
1585
- # The token for the next set of items to return. (You received this
1586
- # token from a previous call.)
1587
- # @option options [Integer] :max_records
1588
- # The maximum number of items to return with this call. The default
1589
- # value is `100` and the maximum value is `100`.
1590
1599
  # @return [LoadBalancer::Collection]
1591
1600
  def load_balancers(options = {})
1592
1601
  batches = Enumerator.new do |y|
1593
- batch = []
1594
1602
  options = options.merge(auto_scaling_group_name: @name)
1595
1603
  resp = Aws::Plugins::UserAgent.feature('resource') do
1596
1604
  @client.describe_load_balancers(options)
1597
1605
  end
1598
- resp.data.load_balancers.each do |l|
1599
- batch << LoadBalancer.new(
1600
- group_name: @name,
1601
- name: l.load_balancer_name,
1602
- data: l,
1603
- client: @client
1604
- )
1606
+ resp.each_page do |page|
1607
+ batch = []
1608
+ page.data.load_balancers.each do |l|
1609
+ batch << LoadBalancer.new(
1610
+ group_name: @name,
1611
+ name: l.load_balancer_name,
1612
+ data: l,
1613
+ client: @client
1614
+ )
1615
+ end
1616
+ y.yield(batch)
1605
1617
  end
1606
- y.yield(batch)
1607
1618
  end
1608
1619
  LoadBalancer::Collection.new(batches)
1609
1620
  end
@@ -1227,8 +1227,139 @@ module Aws::AutoScaling
1227
1227
  # group: Classic Load Balancer, Application Load Balancer, Gateway Load
1228
1228
  # Balancer, Network Load Balancer, and VPC Lattice.
1229
1229
  #
1230
+ # @option params [Types::InstanceMaintenancePolicy] :instance_maintenance_policy
1231
+ # An instance maintenance policy. For more information, see [Set
1232
+ # instance maintenance policy][1] in the *Amazon EC2 Auto Scaling User
1233
+ # Guide*.
1234
+ #
1235
+ #
1236
+ #
1237
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html
1238
+ #
1230
1239
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1231
1240
  #
1241
+ #
1242
+ # @example Example: To create an Auto Scaling group
1243
+ #
1244
+ # # This example creates an Auto Scaling group.
1245
+ #
1246
+ # resp = client.create_auto_scaling_group({
1247
+ # auto_scaling_group_name: "my-auto-scaling-group",
1248
+ # default_instance_warmup: 120,
1249
+ # launch_template: {
1250
+ # launch_template_name: "my-template-for-auto-scaling",
1251
+ # version: "$Default",
1252
+ # },
1253
+ # max_instance_lifetime: 2592000,
1254
+ # max_size: 3,
1255
+ # min_size: 1,
1256
+ # vpc_zone_identifier: "subnet-057fa0918fEXAMPLE",
1257
+ # })
1258
+ #
1259
+ # @example Example: To create an Auto Scaling group with an attached target group
1260
+ #
1261
+ # # This example creates an Auto Scaling group and attaches the specified target group.
1262
+ #
1263
+ # resp = client.create_auto_scaling_group({
1264
+ # auto_scaling_group_name: "my-auto-scaling-group",
1265
+ # health_check_grace_period: 300,
1266
+ # health_check_type: "ELB",
1267
+ # launch_template: {
1268
+ # launch_template_name: "my-template-for-auto-scaling",
1269
+ # version: "$Default",
1270
+ # },
1271
+ # max_size: 3,
1272
+ # min_size: 1,
1273
+ # target_group_arns: [
1274
+ # "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067",
1275
+ # ],
1276
+ # vpc_zone_identifier: "subnet-057fa0918fEXAMPLE, subnet-610acd08EXAMPLE",
1277
+ # })
1278
+ #
1279
+ # @example Example: To create an Auto Scaling group with a mixed instances policy
1280
+ #
1281
+ # # This example creates an Auto Scaling group with a mixed instances policy. It specifies the c5.large, c5a.large, and
1282
+ # # c6g.large instance types and defines a different launch template for the c6g.large instance type.
1283
+ #
1284
+ # resp = client.create_auto_scaling_group({
1285
+ # auto_scaling_group_name: "my-asg",
1286
+ # desired_capacity: 3,
1287
+ # max_size: 5,
1288
+ # min_size: 1,
1289
+ # mixed_instances_policy: {
1290
+ # instances_distribution: {
1291
+ # on_demand_base_capacity: 1,
1292
+ # on_demand_percentage_above_base_capacity: 50,
1293
+ # spot_allocation_strategy: "price-capacity-optimized",
1294
+ # },
1295
+ # launch_template: {
1296
+ # launch_template_specification: {
1297
+ # launch_template_name: "my-launch-template-for-x86",
1298
+ # version: "$Default",
1299
+ # },
1300
+ # overrides: [
1301
+ # {
1302
+ # instance_type: "c6g.large",
1303
+ # launch_template_specification: {
1304
+ # launch_template_name: "my-launch-template-for-arm",
1305
+ # version: "$Default",
1306
+ # },
1307
+ # },
1308
+ # {
1309
+ # instance_type: "c5.large",
1310
+ # },
1311
+ # {
1312
+ # instance_type: "c5a.large",
1313
+ # },
1314
+ # ],
1315
+ # },
1316
+ # },
1317
+ # vpc_zone_identifier: "subnet-057fa0918fEXAMPLE, subnet-610acd08EXAMPLE",
1318
+ # })
1319
+ #
1320
+ # @example Example: To create an Auto Scaling group using attribute-based instance type selection
1321
+ #
1322
+ # # This example creates an Auto Scaling group using attribute-based instance type selection. It requires the instance types
1323
+ # # to have a minimum of four vCPUs and a maximum of eight vCPUs, a minimum of 16,384 MiB of memory, and an Intel
1324
+ # # manufactured CPU.
1325
+ #
1326
+ # resp = client.create_auto_scaling_group({
1327
+ # auto_scaling_group_name: "my-asg",
1328
+ # desired_capacity: 4,
1329
+ # desired_capacity_type: "units",
1330
+ # max_size: 100,
1331
+ # min_size: 0,
1332
+ # mixed_instances_policy: {
1333
+ # instances_distribution: {
1334
+ # on_demand_percentage_above_base_capacity: 50,
1335
+ # spot_allocation_strategy: "price-capacity-optimized",
1336
+ # },
1337
+ # launch_template: {
1338
+ # launch_template_specification: {
1339
+ # launch_template_name: "my-template-for-auto-scaling",
1340
+ # version: "$Default",
1341
+ # },
1342
+ # overrides: [
1343
+ # {
1344
+ # instance_requirements: {
1345
+ # cpu_manufacturers: [
1346
+ # "intel",
1347
+ # ],
1348
+ # memory_mi_b: {
1349
+ # min: 16384,
1350
+ # },
1351
+ # v_cpu_count: {
1352
+ # max: 8,
1353
+ # min: 4,
1354
+ # },
1355
+ # },
1356
+ # },
1357
+ # ],
1358
+ # },
1359
+ # },
1360
+ # vpc_zone_identifier: "subnet-057fa0918fEXAMPLE, subnet-610acd08EXAMPLE",
1361
+ # })
1362
+ #
1232
1363
  # @example Request syntax with placeholder values
1233
1364
  #
1234
1365
  # resp = client.create_auto_scaling_group({
@@ -1338,7 +1469,7 @@ module Aws::AutoScaling
1338
1469
  # {
1339
1470
  # lifecycle_hook_name: "AsciiStringMaxLen255", # required
1340
1471
  # lifecycle_transition: "LifecycleTransition", # required
1341
- # notification_metadata: "XmlStringMaxLen1023",
1472
+ # notification_metadata: "AnyPrintableAsciiStringMaxLen4000",
1342
1473
  # heartbeat_timeout: 1,
1343
1474
  # default_result: "LifecycleActionResult",
1344
1475
  # notification_target_arn: "NotificationTargetResourceName",
@@ -1365,6 +1496,10 @@ module Aws::AutoScaling
1365
1496
  # type: "XmlStringMaxLen511",
1366
1497
  # },
1367
1498
  # ],
1499
+ # instance_maintenance_policy: {
1500
+ # min_healthy_percentage: 1,
1501
+ # max_healthy_percentage: 1,
1502
+ # },
1368
1503
  # })
1369
1504
  #
1370
1505
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateAutoScalingGroup AWS API Documentation
@@ -2468,6 +2603,8 @@ module Aws::AutoScaling
2468
2603
  # resp.auto_scaling_groups[0].traffic_sources #=> Array
2469
2604
  # resp.auto_scaling_groups[0].traffic_sources[0].identifier #=> String
2470
2605
  # resp.auto_scaling_groups[0].traffic_sources[0].type #=> String
2606
+ # resp.auto_scaling_groups[0].instance_maintenance_policy.min_healthy_percentage #=> Integer
2607
+ # resp.auto_scaling_groups[0].instance_maintenance_policy.max_healthy_percentage #=> Integer
2471
2608
  # resp.next_token #=> String
2472
2609
  #
2473
2610
  #
@@ -2651,6 +2788,8 @@ module Aws::AutoScaling
2651
2788
  # * {Types::DescribeInstanceRefreshesAnswer#instance_refreshes #instance_refreshes} => Array&lt;Types::InstanceRefresh&gt;
2652
2789
  # * {Types::DescribeInstanceRefreshesAnswer#next_token #next_token} => String
2653
2790
  #
2791
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2792
+ #
2654
2793
  #
2655
2794
  # @example Example: To list instance refreshes
2656
2795
  #
@@ -2676,6 +2815,7 @@ module Aws::AutoScaling
2676
2815
  # },
2677
2816
  # auto_rollback: true,
2678
2817
  # instance_warmup: 200,
2818
+ # max_healthy_percentage: 120,
2679
2819
  # min_healthy_percentage: 90,
2680
2820
  # scale_in_protected_instances: "Ignore",
2681
2821
  # skip_matching: false,
@@ -2699,6 +2839,7 @@ module Aws::AutoScaling
2699
2839
  # },
2700
2840
  # auto_rollback: true,
2701
2841
  # instance_warmup: 200,
2842
+ # max_healthy_percentage: 120,
2702
2843
  # min_healthy_percentage: 90,
2703
2844
  # scale_in_protected_instances: "Ignore",
2704
2845
  # skip_matching: false,
@@ -2745,6 +2886,7 @@ module Aws::AutoScaling
2745
2886
  # resp.instance_refreshes[0].preferences.standby_instances #=> String, one of "Terminate", "Ignore", "Wait"
2746
2887
  # resp.instance_refreshes[0].preferences.alarm_specification.alarms #=> Array
2747
2888
  # resp.instance_refreshes[0].preferences.alarm_specification.alarms[0] #=> String
2889
+ # resp.instance_refreshes[0].preferences.max_healthy_percentage #=> Integer
2748
2890
  # resp.instance_refreshes[0].desired_configuration.launch_template.launch_template_id #=> String
2749
2891
  # resp.instance_refreshes[0].desired_configuration.launch_template.launch_template_name #=> String
2750
2892
  # resp.instance_refreshes[0].desired_configuration.launch_template.version #=> String
@@ -3109,6 +3251,8 @@ module Aws::AutoScaling
3109
3251
  # * {Types::DescribeLoadBalancerTargetGroupsResponse#load_balancer_target_groups #load_balancer_target_groups} => Array&lt;Types::LoadBalancerTargetGroupState&gt;
3110
3252
  # * {Types::DescribeLoadBalancerTargetGroupsResponse#next_token #next_token} => String
3111
3253
  #
3254
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3255
+ #
3112
3256
  #
3113
3257
  # @example Example: To describe the target groups for an Auto Scaling group
3114
3258
  #
@@ -3213,6 +3357,8 @@ module Aws::AutoScaling
3213
3357
  # * {Types::DescribeLoadBalancersResponse#load_balancers #load_balancers} => Array&lt;Types::LoadBalancerState&gt;
3214
3358
  # * {Types::DescribeLoadBalancersResponse#next_token #next_token} => String
3215
3359
  #
3360
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3361
+ #
3216
3362
  #
3217
3363
  # @example Example: To describe the load balancers for an Auto Scaling group
3218
3364
  #
@@ -5122,7 +5268,7 @@ module Aws::AutoScaling
5122
5268
  # lifecycle_transition: "LifecycleTransition",
5123
5269
  # role_arn: "XmlStringMaxLen255",
5124
5270
  # notification_target_arn: "NotificationTargetResourceName",
5125
- # notification_metadata: "XmlStringMaxLen1023",
5271
+ # notification_metadata: "AnyPrintableAsciiStringMaxLen4000",
5126
5272
  # heartbeat_timeout: 1,
5127
5273
  # default_result: "LifecycleActionResult",
5128
5274
  # })
@@ -6219,11 +6365,7 @@ module Aws::AutoScaling
6219
6365
  req.send_request(options)
6220
6366
  end
6221
6367
 
6222
- # Starts an instance refresh. During an instance refresh, Amazon EC2
6223
- # Auto Scaling performs a rolling update of instances in an Auto Scaling
6224
- # group. Instances are terminated first and then replaced, which
6225
- # temporarily reduces the capacity available within your Auto Scaling
6226
- # group.
6368
+ # Starts an instance refresh.
6227
6369
  #
6228
6370
  # This operation is part of the [instance refresh feature][1] in Amazon
6229
6371
  # EC2 Auto Scaling, which helps you update instances in your Auto
@@ -6286,10 +6428,10 @@ module Aws::AutoScaling
6286
6428
  # @option params [Types::RefreshPreferences] :preferences
6287
6429
  # Sets your preferences for the instance refresh so that it performs as
6288
6430
  # expected when you start it. Includes the instance warmup time, the
6289
- # minimum healthy percentage, and the behaviors that you want Amazon EC2
6290
- # Auto Scaling to use if instances that are in `Standby` state or
6291
- # protected from scale in are found. You can also choose to enable
6292
- # additional features, such as the following:
6431
+ # minimum and maximum healthy percentages, and the behaviors that you
6432
+ # want Amazon EC2 Auto Scaling to use if instances that are in `Standby`
6433
+ # state or protected from scale in are found. You can also choose to
6434
+ # enable additional features, such as the following:
6293
6435
  #
6294
6436
  # * Auto rollback
6295
6437
  #
@@ -6324,6 +6466,7 @@ module Aws::AutoScaling
6324
6466
  # },
6325
6467
  # auto_rollback: true,
6326
6468
  # instance_warmup: 200,
6469
+ # max_healthy_percentage: 120,
6327
6470
  # min_healthy_percentage: 90,
6328
6471
  # },
6329
6472
  # })
@@ -6437,6 +6580,7 @@ module Aws::AutoScaling
6437
6580
  # alarm_specification: {
6438
6581
  # alarms: ["XmlStringMaxLen255"],
6439
6582
  # },
6583
+ # max_healthy_percentage: 1,
6440
6584
  # },
6441
6585
  # })
6442
6586
  #
@@ -6858,6 +7002,15 @@ module Aws::AutoScaling
6858
7002
  #
6859
7003
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-default-instance-warmup.html
6860
7004
  #
7005
+ # @option params [Types::InstanceMaintenancePolicy] :instance_maintenance_policy
7006
+ # An instance maintenance policy. For more information, see [Set
7007
+ # instance maintenance policy][1] in the *Amazon EC2 Auto Scaling User
7008
+ # Guide*.
7009
+ #
7010
+ #
7011
+ #
7012
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html
7013
+ #
6861
7014
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
6862
7015
  #
6863
7016
  #
@@ -6983,6 +7136,10 @@ module Aws::AutoScaling
6983
7136
  # context: "Context",
6984
7137
  # desired_capacity_type: "XmlStringMaxLen255",
6985
7138
  # default_instance_warmup: 1,
7139
+ # instance_maintenance_policy: {
7140
+ # min_healthy_percentage: 1,
7141
+ # max_healthy_percentage: 1,
7142
+ # },
6986
7143
  # })
6987
7144
  #
6988
7145
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/UpdateAutoScalingGroup AWS API Documentation
@@ -7007,7 +7164,7 @@ module Aws::AutoScaling
7007
7164
  params: params,
7008
7165
  config: config)
7009
7166
  context[:gem_name] = 'aws-sdk-autoscaling'
7010
- context[:gem_version] = '1.98.0'
7167
+ context[:gem_version] = '1.100.0'
7011
7168
  Seahorse::Client::Request.new(handlers, context)
7012
7169
  end
7013
7170
 
@@ -36,6 +36,7 @@ module Aws::AutoScaling
36
36
  AllowedInstanceType = Shapes::StringShape.new(name: 'AllowedInstanceType')
37
37
  AllowedInstanceTypes = Shapes::ListShape.new(name: 'AllowedInstanceTypes')
38
38
  AlreadyExistsFault = Shapes::StructureShape.new(name: 'AlreadyExistsFault')
39
+ AnyPrintableAsciiStringMaxLen4000 = Shapes::StringShape.new(name: 'AnyPrintableAsciiStringMaxLen4000')
39
40
  AsciiStringMaxLen255 = Shapes::StringShape.new(name: 'AsciiStringMaxLen255')
40
41
  AssociatePublicIpAddress = Shapes::BooleanShape.new(name: 'AssociatePublicIpAddress')
41
42
  AttachInstancesQuery = Shapes::StructureShape.new(name: 'AttachInstancesQuery')
@@ -168,6 +169,7 @@ module Aws::AutoScaling
168
169
  InstanceGeneration = Shapes::StringShape.new(name: 'InstanceGeneration')
169
170
  InstanceGenerations = Shapes::ListShape.new(name: 'InstanceGenerations')
170
171
  InstanceIds = Shapes::ListShape.new(name: 'InstanceIds')
172
+ InstanceMaintenancePolicy = Shapes::StructureShape.new(name: 'InstanceMaintenancePolicy')
171
173
  InstanceMetadataEndpointState = Shapes::StringShape.new(name: 'InstanceMetadataEndpointState')
172
174
  InstanceMetadataHttpPutResponseHopLimit = Shapes::IntegerShape.new(name: 'InstanceMetadataHttpPutResponseHopLimit')
173
175
  InstanceMetadataHttpTokensState = Shapes::StringShape.new(name: 'InstanceMetadataHttpTokensState')
@@ -188,6 +190,9 @@ module Aws::AutoScaling
188
190
  InstancesDistribution = Shapes::StructureShape.new(name: 'InstancesDistribution')
189
191
  InstancesToUpdate = Shapes::IntegerShape.new(name: 'InstancesToUpdate')
190
192
  IntPercent = Shapes::IntegerShape.new(name: 'IntPercent')
193
+ IntPercent100To200 = Shapes::IntegerShape.new(name: 'IntPercent100To200')
194
+ IntPercent100To200Resettable = Shapes::IntegerShape.new(name: 'IntPercent100To200Resettable')
195
+ IntPercentResettable = Shapes::IntegerShape.new(name: 'IntPercentResettable')
191
196
  InvalidNextToken = Shapes::StructureShape.new(name: 'InvalidNextToken')
192
197
  IrreversibleInstanceRefreshFault = Shapes::StructureShape.new(name: 'IrreversibleInstanceRefreshFault')
193
198
  LaunchConfiguration = Shapes::StructureShape.new(name: 'LaunchConfiguration')
@@ -508,6 +513,7 @@ module Aws::AutoScaling
508
513
  AutoScalingGroup.add_member(:desired_capacity_type, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "DesiredCapacityType"))
509
514
  AutoScalingGroup.add_member(:default_instance_warmup, Shapes::ShapeRef.new(shape: DefaultInstanceWarmup, location_name: "DefaultInstanceWarmup"))
510
515
  AutoScalingGroup.add_member(:traffic_sources, Shapes::ShapeRef.new(shape: TrafficSources, location_name: "TrafficSources"))
516
+ AutoScalingGroup.add_member(:instance_maintenance_policy, Shapes::ShapeRef.new(shape: InstanceMaintenancePolicy, location_name: "InstanceMaintenancePolicy"))
511
517
  AutoScalingGroup.struct_class = Types::AutoScalingGroup
512
518
 
513
519
  AutoScalingGroupNames.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen255)
@@ -624,6 +630,7 @@ module Aws::AutoScaling
624
630
  CreateAutoScalingGroupType.add_member(:desired_capacity_type, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "DesiredCapacityType"))
625
631
  CreateAutoScalingGroupType.add_member(:default_instance_warmup, Shapes::ShapeRef.new(shape: DefaultInstanceWarmup, location_name: "DefaultInstanceWarmup"))
626
632
  CreateAutoScalingGroupType.add_member(:traffic_sources, Shapes::ShapeRef.new(shape: TrafficSources, location_name: "TrafficSources"))
633
+ CreateAutoScalingGroupType.add_member(:instance_maintenance_policy, Shapes::ShapeRef.new(shape: InstanceMaintenancePolicy, location_name: "InstanceMaintenancePolicy"))
627
634
  CreateAutoScalingGroupType.struct_class = Types::CreateAutoScalingGroupType
628
635
 
629
636
  CreateLaunchConfigurationType.add_member(:launch_configuration_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, required: true, location_name: "LaunchConfigurationName"))
@@ -924,6 +931,10 @@ module Aws::AutoScaling
924
931
 
925
932
  InstanceIds.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen19)
926
933
 
934
+ InstanceMaintenancePolicy.add_member(:min_healthy_percentage, Shapes::ShapeRef.new(shape: IntPercentResettable, location_name: "MinHealthyPercentage"))
935
+ InstanceMaintenancePolicy.add_member(:max_healthy_percentage, Shapes::ShapeRef.new(shape: IntPercent100To200Resettable, location_name: "MaxHealthyPercentage"))
936
+ InstanceMaintenancePolicy.struct_class = Types::InstanceMaintenancePolicy
937
+
927
938
  InstanceMetadataOptions.add_member(:http_tokens, Shapes::ShapeRef.new(shape: InstanceMetadataHttpTokensState, location_name: "HttpTokens"))
928
939
  InstanceMetadataOptions.add_member(:http_put_response_hop_limit, Shapes::ShapeRef.new(shape: InstanceMetadataHttpPutResponseHopLimit, location_name: "HttpPutResponseHopLimit"))
929
940
  InstanceMetadataOptions.add_member(:http_endpoint, Shapes::ShapeRef.new(shape: InstanceMetadataEndpointState, location_name: "HttpEndpoint"))
@@ -1067,7 +1078,7 @@ module Aws::AutoScaling
1067
1078
  LifecycleHook.add_member(:lifecycle_transition, Shapes::ShapeRef.new(shape: LifecycleTransition, location_name: "LifecycleTransition"))
1068
1079
  LifecycleHook.add_member(:notification_target_arn, Shapes::ShapeRef.new(shape: NotificationTargetResourceName, location_name: "NotificationTargetARN"))
1069
1080
  LifecycleHook.add_member(:role_arn, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "RoleARN"))
1070
- LifecycleHook.add_member(:notification_metadata, Shapes::ShapeRef.new(shape: XmlStringMaxLen1023, location_name: "NotificationMetadata"))
1081
+ LifecycleHook.add_member(:notification_metadata, Shapes::ShapeRef.new(shape: AnyPrintableAsciiStringMaxLen4000, location_name: "NotificationMetadata"))
1071
1082
  LifecycleHook.add_member(:heartbeat_timeout, Shapes::ShapeRef.new(shape: HeartbeatTimeout, location_name: "HeartbeatTimeout"))
1072
1083
  LifecycleHook.add_member(:global_timeout, Shapes::ShapeRef.new(shape: GlobalTimeout, location_name: "GlobalTimeout"))
1073
1084
  LifecycleHook.add_member(:default_result, Shapes::ShapeRef.new(shape: LifecycleActionResult, location_name: "DefaultResult"))
@@ -1077,7 +1088,7 @@ module Aws::AutoScaling
1077
1088
 
1078
1089
  LifecycleHookSpecification.add_member(:lifecycle_hook_name, Shapes::ShapeRef.new(shape: AsciiStringMaxLen255, required: true, location_name: "LifecycleHookName"))
1079
1090
  LifecycleHookSpecification.add_member(:lifecycle_transition, Shapes::ShapeRef.new(shape: LifecycleTransition, required: true, location_name: "LifecycleTransition"))
1080
- LifecycleHookSpecification.add_member(:notification_metadata, Shapes::ShapeRef.new(shape: XmlStringMaxLen1023, location_name: "NotificationMetadata"))
1091
+ LifecycleHookSpecification.add_member(:notification_metadata, Shapes::ShapeRef.new(shape: AnyPrintableAsciiStringMaxLen4000, location_name: "NotificationMetadata"))
1081
1092
  LifecycleHookSpecification.add_member(:heartbeat_timeout, Shapes::ShapeRef.new(shape: HeartbeatTimeout, location_name: "HeartbeatTimeout"))
1082
1093
  LifecycleHookSpecification.add_member(:default_result, Shapes::ShapeRef.new(shape: LifecycleActionResult, location_name: "DefaultResult"))
1083
1094
  LifecycleHookSpecification.add_member(:notification_target_arn, Shapes::ShapeRef.new(shape: NotificationTargetResourceName, location_name: "NotificationTargetARN"))
@@ -1256,7 +1267,7 @@ module Aws::AutoScaling
1256
1267
  PutLifecycleHookType.add_member(:lifecycle_transition, Shapes::ShapeRef.new(shape: LifecycleTransition, location_name: "LifecycleTransition"))
1257
1268
  PutLifecycleHookType.add_member(:role_arn, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "RoleARN"))
1258
1269
  PutLifecycleHookType.add_member(:notification_target_arn, Shapes::ShapeRef.new(shape: NotificationTargetResourceName, location_name: "NotificationTargetARN"))
1259
- PutLifecycleHookType.add_member(:notification_metadata, Shapes::ShapeRef.new(shape: XmlStringMaxLen1023, location_name: "NotificationMetadata"))
1270
+ PutLifecycleHookType.add_member(:notification_metadata, Shapes::ShapeRef.new(shape: AnyPrintableAsciiStringMaxLen4000, location_name: "NotificationMetadata"))
1260
1271
  PutLifecycleHookType.add_member(:heartbeat_timeout, Shapes::ShapeRef.new(shape: HeartbeatTimeout, location_name: "HeartbeatTimeout"))
1261
1272
  PutLifecycleHookType.add_member(:default_result, Shapes::ShapeRef.new(shape: LifecycleActionResult, location_name: "DefaultResult"))
1262
1273
  PutLifecycleHookType.struct_class = Types::PutLifecycleHookType
@@ -1320,6 +1331,7 @@ module Aws::AutoScaling
1320
1331
  RefreshPreferences.add_member(:scale_in_protected_instances, Shapes::ShapeRef.new(shape: ScaleInProtectedInstances, location_name: "ScaleInProtectedInstances"))
1321
1332
  RefreshPreferences.add_member(:standby_instances, Shapes::ShapeRef.new(shape: StandbyInstances, location_name: "StandbyInstances"))
1322
1333
  RefreshPreferences.add_member(:alarm_specification, Shapes::ShapeRef.new(shape: AlarmSpecification, location_name: "AlarmSpecification"))
1334
+ RefreshPreferences.add_member(:max_healthy_percentage, Shapes::ShapeRef.new(shape: IntPercent100To200, location_name: "MaxHealthyPercentage"))
1323
1335
  RefreshPreferences.struct_class = Types::RefreshPreferences
1324
1336
 
1325
1337
  ResourceContentionFault.add_member(:message, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "message"))
@@ -1534,6 +1546,7 @@ module Aws::AutoScaling
1534
1546
  UpdateAutoScalingGroupType.add_member(:context, Shapes::ShapeRef.new(shape: Context, location_name: "Context"))
1535
1547
  UpdateAutoScalingGroupType.add_member(:desired_capacity_type, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "DesiredCapacityType"))
1536
1548
  UpdateAutoScalingGroupType.add_member(:default_instance_warmup, Shapes::ShapeRef.new(shape: DefaultInstanceWarmup, location_name: "DefaultInstanceWarmup"))
1549
+ UpdateAutoScalingGroupType.add_member(:instance_maintenance_policy, Shapes::ShapeRef.new(shape: InstanceMaintenancePolicy, location_name: "InstanceMaintenancePolicy"))
1537
1550
  UpdateAutoScalingGroupType.struct_class = Types::UpdateAutoScalingGroupType
1538
1551
 
1539
1552
  VCpuCountRequest.add_member(:min, Shapes::ShapeRef.new(shape: NullablePositiveInteger, required: true, location_name: "Min"))
@@ -1828,6 +1841,12 @@ module Aws::AutoScaling
1828
1841
  o.output = Shapes::ShapeRef.new(shape: DescribeInstanceRefreshesAnswer)
1829
1842
  o.errors << Shapes::ShapeRef.new(shape: InvalidNextToken)
1830
1843
  o.errors << Shapes::ShapeRef.new(shape: ResourceContentionFault)
1844
+ o[:pager] = Aws::Pager.new(
1845
+ limit_key: "max_records",
1846
+ tokens: {
1847
+ "next_token" => "next_token"
1848
+ }
1849
+ )
1831
1850
  end)
1832
1851
 
1833
1852
  api.add_operation(:describe_launch_configurations, Seahorse::Model::Operation.new.tap do |o|
@@ -1872,6 +1891,12 @@ module Aws::AutoScaling
1872
1891
  o.output = Shapes::ShapeRef.new(shape: DescribeLoadBalancerTargetGroupsResponse)
1873
1892
  o.errors << Shapes::ShapeRef.new(shape: ResourceContentionFault)
1874
1893
  o.errors << Shapes::ShapeRef.new(shape: InvalidNextToken)
1894
+ o[:pager] = Aws::Pager.new(
1895
+ limit_key: "max_records",
1896
+ tokens: {
1897
+ "next_token" => "next_token"
1898
+ }
1899
+ )
1875
1900
  end)
1876
1901
 
1877
1902
  api.add_operation(:describe_load_balancers, Seahorse::Model::Operation.new.tap do |o|
@@ -1882,6 +1907,12 @@ module Aws::AutoScaling
1882
1907
  o.output = Shapes::ShapeRef.new(shape: DescribeLoadBalancersResponse)
1883
1908
  o.errors << Shapes::ShapeRef.new(shape: ResourceContentionFault)
1884
1909
  o.errors << Shapes::ShapeRef.new(shape: InvalidNextToken)
1910
+ o[:pager] = Aws::Pager.new(
1911
+ limit_key: "max_records",
1912
+ tokens: {
1913
+ "next_token" => "next_token"
1914
+ }
1915
+ )
1885
1916
  end)
1886
1917
 
1887
1918
  api.add_operation(:describe_metric_collection_types, Seahorse::Model::Operation.new.tap do |o|
@@ -32,8 +32,8 @@ module Aws::AutoScaling
32
32
  raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
33
  end
34
34
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
36
- if Aws::Endpoints::Matchers.string_equals?("aws-us-gov", Aws::Endpoints::Matchers.attr(partition_result, "name"))
35
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
36
+ if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-us-gov")
37
37
  return Aws::Endpoints::Endpoint.new(url: "https://autoscaling.#{region}.amazonaws.com", headers: {}, properties: {})
38
38
  end
39
39
  return Aws::Endpoints::Endpoint.new(url: "https://autoscaling-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
@@ -294,7 +294,7 @@ module Aws::AutoScaling
294
294
  # lifecycle_transition: "LifecycleTransition",
295
295
  # role_arn: "XmlStringMaxLen255",
296
296
  # notification_target_arn: "NotificationTargetResourceName",
297
- # notification_metadata: "XmlStringMaxLen1023",
297
+ # notification_metadata: "AnyPrintableAsciiStringMaxLen4000",
298
298
  # heartbeat_timeout: 1,
299
299
  # default_result: "LifecycleActionResult",
300
300
  # })
@@ -144,7 +144,7 @@ module Aws::AutoScaling
144
144
  # {
145
145
  # lifecycle_hook_name: "AsciiStringMaxLen255", # required
146
146
  # lifecycle_transition: "LifecycleTransition", # required
147
- # notification_metadata: "XmlStringMaxLen1023",
147
+ # notification_metadata: "AnyPrintableAsciiStringMaxLen4000",
148
148
  # heartbeat_timeout: 1,
149
149
  # default_result: "LifecycleActionResult",
150
150
  # notification_target_arn: "NotificationTargetResourceName",
@@ -171,6 +171,10 @@ module Aws::AutoScaling
171
171
  # type: "XmlStringMaxLen511",
172
172
  # },
173
173
  # ],
174
+ # instance_maintenance_policy: {
175
+ # min_healthy_percentage: 1,
176
+ # max_healthy_percentage: 1,
177
+ # },
174
178
  # })
175
179
  # @param [Hash] options ({})
176
180
  # @option options [required, String] :auto_scaling_group_name
@@ -453,6 +457,14 @@ module Aws::AutoScaling
453
457
  # can use any of the following as traffic sources for an Auto Scaling
454
458
  # group: Classic Load Balancer, Application Load Balancer, Gateway Load
455
459
  # Balancer, Network Load Balancer, and VPC Lattice.
460
+ # @option options [Types::InstanceMaintenancePolicy] :instance_maintenance_policy
461
+ # An instance maintenance policy. For more information, see [Set
462
+ # instance maintenance policy][1] in the *Amazon EC2 Auto Scaling User
463
+ # Guide*.
464
+ #
465
+ #
466
+ #
467
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html
456
468
  # @return [AutoScalingGroup]
457
469
  def create_group(options = {})
458
470
  Aws::Plugins::UserAgent.feature('resource') do
@@ -475,6 +475,10 @@ module Aws::AutoScaling
475
475
  # The traffic sources associated with this Auto Scaling group.
476
476
  # @return [Array<Types::TrafficSourceIdentifier>]
477
477
  #
478
+ # @!attribute [rw] instance_maintenance_policy
479
+ # An instance maintenance policy.
480
+ # @return [Types::InstanceMaintenancePolicy]
481
+ #
478
482
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AutoScalingGroup AWS API Documentation
479
483
  #
480
484
  class AutoScalingGroup < Struct.new(
@@ -511,7 +515,8 @@ module Aws::AutoScaling
511
515
  :context,
512
516
  :desired_capacity_type,
513
517
  :default_instance_warmup,
514
- :traffic_sources)
518
+ :traffic_sources,
519
+ :instance_maintenance_policy)
515
520
  SENSITIVE = []
516
521
  include Aws::Structure
517
522
  end
@@ -1232,6 +1237,16 @@ module Aws::AutoScaling
1232
1237
  # Gateway Load Balancer, Network Load Balancer, and VPC Lattice.
1233
1238
  # @return [Array<Types::TrafficSourceIdentifier>]
1234
1239
  #
1240
+ # @!attribute [rw] instance_maintenance_policy
1241
+ # An instance maintenance policy. For more information, see [Set
1242
+ # instance maintenance policy][1] in the *Amazon EC2 Auto Scaling User
1243
+ # Guide*.
1244
+ #
1245
+ #
1246
+ #
1247
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html
1248
+ # @return [Types::InstanceMaintenancePolicy]
1249
+ #
1235
1250
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateAutoScalingGroupType AWS API Documentation
1236
1251
  #
1237
1252
  class CreateAutoScalingGroupType < Struct.new(
@@ -1261,7 +1276,8 @@ module Aws::AutoScaling
1261
1276
  :context,
1262
1277
  :desired_capacity_type,
1263
1278
  :default_instance_warmup,
1264
- :traffic_sources)
1279
+ :traffic_sources,
1280
+ :instance_maintenance_policy)
1265
1281
  SENSITIVE = []
1266
1282
  include Aws::Structure
1267
1283
  end
@@ -3182,6 +3198,47 @@ module Aws::AutoScaling
3182
3198
  include Aws::Structure
3183
3199
  end
3184
3200
 
3201
+ # Describes an instance maintenance policy.
3202
+ #
3203
+ # For more information, see [Set instance maintenance policy][1] in the
3204
+ # *Amazon EC2 Auto Scaling User Guide*.
3205
+ #
3206
+ #
3207
+ #
3208
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html
3209
+ #
3210
+ # @!attribute [rw] min_healthy_percentage
3211
+ # Specifies the lower threshold as a percentage of the desired
3212
+ # capacity of the Auto Scaling group. It represents the minimum
3213
+ # percentage of the group to keep in service, healthy, and ready to
3214
+ # use to support your workload when replacing instances. Value range
3215
+ # is 0 to 100. After it's set, a value of `-1` will clear the
3216
+ # previously set value.
3217
+ # @return [Integer]
3218
+ #
3219
+ # @!attribute [rw] max_healthy_percentage
3220
+ # Specifies the upper threshold as a percentage of the desired
3221
+ # capacity of the Auto Scaling group. It represents the maximum
3222
+ # percentage of the group that can be in service and healthy, or
3223
+ # pending, to support your workload when replacing instances. Value
3224
+ # range is 100 to 200. After it's set, a value of `-1` will clear the
3225
+ # previously set value.
3226
+ #
3227
+ # Both `MinHealthyPercentage` and `MaxHealthyPercentage` must be
3228
+ # specified, and the difference between them cannot be greater than
3229
+ # 100. A large range increases the number of instances that can be
3230
+ # replaced at the same time.
3231
+ # @return [Integer]
3232
+ #
3233
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/InstanceMaintenancePolicy AWS API Documentation
3234
+ #
3235
+ class InstanceMaintenancePolicy < Struct.new(
3236
+ :min_healthy_percentage,
3237
+ :max_healthy_percentage)
3238
+ SENSITIVE = []
3239
+ include Aws::Structure
3240
+ end
3241
+
3185
3242
  # The metadata options for the instances. For more information, see
3186
3243
  # [Configuring the Instance Metadata Options][1] in the *Amazon EC2 Auto
3187
3244
  # Scaling User Guide*.
@@ -6188,16 +6245,14 @@ module Aws::AutoScaling
6188
6245
  # Describes the preferences for an instance refresh.
6189
6246
  #
6190
6247
  # @!attribute [rw] min_healthy_percentage
6191
- # The amount of capacity in the Auto Scaling group that must pass your
6192
- # group's health checks to allow the operation to continue. The value
6193
- # is expressed as a percentage of the desired capacity of the Auto
6194
- # Scaling group (rounded up to the nearest integer). The default is
6195
- # `90`.
6196
- #
6197
- # Setting the minimum healthy percentage to 100 percent limits the
6198
- # rate of replacement to one instance at a time. In contrast, setting
6199
- # it to 0 percent has the effect of replacing all instances at the
6200
- # same time.
6248
+ # Specifies the minimum percentage of the group to keep in service,
6249
+ # healthy, and ready to use to support your workload to allow the
6250
+ # operation to continue. The value is expressed as a percentage of the
6251
+ # desired capacity of the Auto Scaling group. Value range is 0 to 100.
6252
+ #
6253
+ # If you do not specify this property, the default is 90 percent, or
6254
+ # the percentage set in the instance maintenance policy for the Auto
6255
+ # Scaling group, if defined.
6201
6256
  # @return [Integer]
6202
6257
  #
6203
6258
  # @!attribute [rw] instance_warmup
@@ -6333,6 +6388,22 @@ module Aws::AutoScaling
6333
6388
  # threshold is met.
6334
6389
  # @return [Types::AlarmSpecification]
6335
6390
  #
6391
+ # @!attribute [rw] max_healthy_percentage
6392
+ # Specifies the maximum percentage of the group that can be in service
6393
+ # and healthy, or pending, to support your workload when replacing
6394
+ # instances. The value is expressed as a percentage of the desired
6395
+ # capacity of the Auto Scaling group. Value range is 100 to 200.
6396
+ #
6397
+ # If you specify `MaxHealthyPercentage`, you must also specify
6398
+ # `MinHealthyPercentage`, and the difference between them cannot be
6399
+ # greater than 100. A larger range increases the number of instances
6400
+ # that can be replaced at the same time.
6401
+ #
6402
+ # If you do not specify this property, the default is 100 percent, or
6403
+ # the percentage set in the instance maintenance policy for the Auto
6404
+ # Scaling group, if defined.
6405
+ # @return [Integer]
6406
+ #
6336
6407
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/RefreshPreferences AWS API Documentation
6337
6408
  #
6338
6409
  class RefreshPreferences < Struct.new(
@@ -6344,7 +6415,8 @@ module Aws::AutoScaling
6344
6415
  :auto_rollback,
6345
6416
  :scale_in_protected_instances,
6346
6417
  :standby_instances,
6347
- :alarm_specification)
6418
+ :alarm_specification,
6419
+ :max_healthy_percentage)
6348
6420
  SENSITIVE = []
6349
6421
  include Aws::Structure
6350
6422
  end
@@ -6934,10 +7006,10 @@ module Aws::AutoScaling
6934
7006
  # @!attribute [rw] preferences
6935
7007
  # Sets your preferences for the instance refresh so that it performs
6936
7008
  # as expected when you start it. Includes the instance warmup time,
6937
- # the minimum healthy percentage, and the behaviors that you want
6938
- # Amazon EC2 Auto Scaling to use if instances that are in `Standby`
6939
- # state or protected from scale in are found. You can also choose to
6940
- # enable additional features, such as the following:
7009
+ # the minimum and maximum healthy percentages, and the behaviors that
7010
+ # you want Amazon EC2 Auto Scaling to use if instances that are in
7011
+ # `Standby` state or protected from scale in are found. You can also
7012
+ # choose to enable additional features, such as the following:
6941
7013
  #
6942
7014
  # * Auto rollback
6943
7015
  #
@@ -7703,6 +7775,16 @@ module Aws::AutoScaling
7703
7775
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-default-instance-warmup.html
7704
7776
  # @return [Integer]
7705
7777
  #
7778
+ # @!attribute [rw] instance_maintenance_policy
7779
+ # An instance maintenance policy. For more information, see [Set
7780
+ # instance maintenance policy][1] in the *Amazon EC2 Auto Scaling User
7781
+ # Guide*.
7782
+ #
7783
+ #
7784
+ #
7785
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html
7786
+ # @return [Types::InstanceMaintenancePolicy]
7787
+ #
7706
7788
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/UpdateAutoScalingGroupType AWS API Documentation
7707
7789
  #
7708
7790
  class UpdateAutoScalingGroupType < Struct.new(
@@ -7726,7 +7808,8 @@ module Aws::AutoScaling
7726
7808
  :capacity_rebalance,
7727
7809
  :context,
7728
7810
  :desired_capacity_type,
7729
- :default_instance_warmup)
7811
+ :default_instance_warmup,
7812
+ :instance_maintenance_policy)
7730
7813
  SENSITIVE = []
7731
7814
  include Aws::Structure
7732
7815
  end
@@ -63,6 +63,6 @@ require_relative 'aws-sdk-autoscaling/customizations'
63
63
  # @!group service
64
64
  module Aws::AutoScaling
65
65
 
66
- GEM_VERSION = '1.98.0'
66
+ GEM_VERSION = '1.100.0'
67
67
 
68
68
  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.98.0
4
+ version: 1.100.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: 2023-09-27 00:00:00.000000000 Z
11
+ date: 2023-11-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core