aws-sdk-autoscaling 1.69.0 → 1.73.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.
@@ -13,6 +13,14 @@ module Aws::AutoScaling
13
13
 
14
14
  include Seahorse::Model
15
15
 
16
+ AcceleratorCountRequest = Shapes::StructureShape.new(name: 'AcceleratorCountRequest')
17
+ AcceleratorManufacturer = Shapes::StringShape.new(name: 'AcceleratorManufacturer')
18
+ AcceleratorManufacturers = Shapes::ListShape.new(name: 'AcceleratorManufacturers')
19
+ AcceleratorName = Shapes::StringShape.new(name: 'AcceleratorName')
20
+ AcceleratorNames = Shapes::ListShape.new(name: 'AcceleratorNames')
21
+ AcceleratorTotalMemoryMiBRequest = Shapes::StructureShape.new(name: 'AcceleratorTotalMemoryMiBRequest')
22
+ AcceleratorType = Shapes::StringShape.new(name: 'AcceleratorType')
23
+ AcceleratorTypes = Shapes::ListShape.new(name: 'AcceleratorTypes')
16
24
  ActiveInstanceRefreshNotFoundFault = Shapes::StructureShape.new(name: 'ActiveInstanceRefreshNotFoundFault')
17
25
  Activities = Shapes::ListShape.new(name: 'Activities')
18
26
  ActivitiesType = Shapes::StructureShape.new(name: 'ActivitiesType')
@@ -46,6 +54,8 @@ module Aws::AutoScaling
46
54
  AutoScalingInstancesType = Shapes::StructureShape.new(name: 'AutoScalingInstancesType')
47
55
  AutoScalingNotificationTypes = Shapes::ListShape.new(name: 'AutoScalingNotificationTypes')
48
56
  AvailabilityZones = Shapes::ListShape.new(name: 'AvailabilityZones')
57
+ BareMetal = Shapes::StringShape.new(name: 'BareMetal')
58
+ BaselineEbsBandwidthMbpsRequest = Shapes::StructureShape.new(name: 'BaselineEbsBandwidthMbpsRequest')
49
59
  BatchDeleteScheduledActionAnswer = Shapes::StructureShape.new(name: 'BatchDeleteScheduledActionAnswer')
50
60
  BatchDeleteScheduledActionType = Shapes::StructureShape.new(name: 'BatchDeleteScheduledActionType')
51
61
  BatchPutScheduledUpdateGroupActionAnswer = Shapes::StructureShape.new(name: 'BatchPutScheduledUpdateGroupActionAnswer')
@@ -58,6 +68,7 @@ module Aws::AutoScaling
58
68
  BlockDeviceEbsVolumeType = Shapes::StringShape.new(name: 'BlockDeviceEbsVolumeType')
59
69
  BlockDeviceMapping = Shapes::StructureShape.new(name: 'BlockDeviceMapping')
60
70
  BlockDeviceMappings = Shapes::ListShape.new(name: 'BlockDeviceMappings')
71
+ BurstablePerformance = Shapes::StringShape.new(name: 'BurstablePerformance')
61
72
  CancelInstanceRefreshAnswer = Shapes::StructureShape.new(name: 'CancelInstanceRefreshAnswer')
62
73
  CancelInstanceRefreshType = Shapes::StructureShape.new(name: 'CancelInstanceRefreshType')
63
74
  CapacityForecast = Shapes::StructureShape.new(name: 'CapacityForecast')
@@ -69,6 +80,8 @@ module Aws::AutoScaling
69
80
  CompleteLifecycleActionType = Shapes::StructureShape.new(name: 'CompleteLifecycleActionType')
70
81
  Context = Shapes::StringShape.new(name: 'Context')
71
82
  Cooldown = Shapes::IntegerShape.new(name: 'Cooldown')
83
+ CpuManufacturer = Shapes::StringShape.new(name: 'CpuManufacturer')
84
+ CpuManufacturers = Shapes::ListShape.new(name: 'CpuManufacturers')
72
85
  CreateAutoScalingGroupType = Shapes::StructureShape.new(name: 'CreateAutoScalingGroupType')
73
86
  CreateLaunchConfigurationType = Shapes::StructureShape.new(name: 'CreateLaunchConfigurationType')
74
87
  CreateOrUpdateTagsType = Shapes::StructureShape.new(name: 'CreateOrUpdateTagsType')
@@ -122,6 +135,8 @@ module Aws::AutoScaling
122
135
  EnterStandbyAnswer = Shapes::StructureShape.new(name: 'EnterStandbyAnswer')
123
136
  EnterStandbyQuery = Shapes::StructureShape.new(name: 'EnterStandbyQuery')
124
137
  EstimatedInstanceWarmup = Shapes::IntegerShape.new(name: 'EstimatedInstanceWarmup')
138
+ ExcludedInstance = Shapes::StringShape.new(name: 'ExcludedInstance')
139
+ ExcludedInstanceTypes = Shapes::ListShape.new(name: 'ExcludedInstanceTypes')
125
140
  ExecutePolicyType = Shapes::StructureShape.new(name: 'ExecutePolicyType')
126
141
  ExitStandbyAnswer = Shapes::StructureShape.new(name: 'ExitStandbyAnswer')
127
142
  ExitStandbyQuery = Shapes::StructureShape.new(name: 'ExitStandbyQuery')
@@ -138,6 +153,8 @@ module Aws::AutoScaling
138
153
  HonorCooldown = Shapes::BooleanShape.new(name: 'HonorCooldown')
139
154
  IncludeDeletedGroups = Shapes::BooleanShape.new(name: 'IncludeDeletedGroups')
140
155
  Instance = Shapes::StructureShape.new(name: 'Instance')
156
+ InstanceGeneration = Shapes::StringShape.new(name: 'InstanceGeneration')
157
+ InstanceGenerations = Shapes::ListShape.new(name: 'InstanceGenerations')
141
158
  InstanceIds = Shapes::ListShape.new(name: 'InstanceIds')
142
159
  InstanceMetadataEndpointState = Shapes::StringShape.new(name: 'InstanceMetadataEndpointState')
143
160
  InstanceMetadataHttpPutResponseHopLimit = Shapes::IntegerShape.new(name: 'InstanceMetadataHttpPutResponseHopLimit')
@@ -153,6 +170,7 @@ module Aws::AutoScaling
153
170
  InstanceRefreshStatus = Shapes::StringShape.new(name: 'InstanceRefreshStatus')
154
171
  InstanceRefreshWarmPoolProgress = Shapes::StructureShape.new(name: 'InstanceRefreshWarmPoolProgress')
155
172
  InstanceRefreshes = Shapes::ListShape.new(name: 'InstanceRefreshes')
173
+ InstanceRequirements = Shapes::StructureShape.new(name: 'InstanceRequirements')
156
174
  Instances = Shapes::ListShape.new(name: 'Instances')
157
175
  InstancesDistribution = Shapes::StructureShape.new(name: 'InstancesDistribution')
158
176
  InstancesToUpdate = Shapes::IntegerShape.new(name: 'InstancesToUpdate')
@@ -185,13 +203,21 @@ module Aws::AutoScaling
185
203
  LoadBalancerTargetGroupStates = Shapes::ListShape.new(name: 'LoadBalancerTargetGroupStates')
186
204
  LoadForecast = Shapes::StructureShape.new(name: 'LoadForecast')
187
205
  LoadForecasts = Shapes::ListShape.new(name: 'LoadForecasts')
206
+ LocalStorage = Shapes::StringShape.new(name: 'LocalStorage')
207
+ LocalStorageType = Shapes::StringShape.new(name: 'LocalStorageType')
208
+ LocalStorageTypes = Shapes::ListShape.new(name: 'LocalStorageTypes')
188
209
  MaxGroupPreparedCapacity = Shapes::IntegerShape.new(name: 'MaxGroupPreparedCapacity')
189
210
  MaxInstanceLifetime = Shapes::IntegerShape.new(name: 'MaxInstanceLifetime')
190
211
  MaxNumberOfAutoScalingGroups = Shapes::IntegerShape.new(name: 'MaxNumberOfAutoScalingGroups')
191
212
  MaxNumberOfLaunchConfigurations = Shapes::IntegerShape.new(name: 'MaxNumberOfLaunchConfigurations')
192
213
  MaxRecords = Shapes::IntegerShape.new(name: 'MaxRecords')
214
+ MemoryGiBPerVCpuRequest = Shapes::StructureShape.new(name: 'MemoryGiBPerVCpuRequest')
215
+ MemoryMiBRequest = Shapes::StructureShape.new(name: 'MemoryMiBRequest')
216
+ Metric = Shapes::StructureShape.new(name: 'Metric')
193
217
  MetricCollectionType = Shapes::StructureShape.new(name: 'MetricCollectionType')
194
218
  MetricCollectionTypes = Shapes::ListShape.new(name: 'MetricCollectionTypes')
219
+ MetricDataQueries = Shapes::ListShape.new(name: 'MetricDataQueries')
220
+ MetricDataQuery = Shapes::StructureShape.new(name: 'MetricDataQuery')
195
221
  MetricDimension = Shapes::StructureShape.new(name: 'MetricDimension')
196
222
  MetricDimensionName = Shapes::StringShape.new(name: 'MetricDimensionName')
197
223
  MetricDimensionValue = Shapes::StringShape.new(name: 'MetricDimensionValue')
@@ -201,6 +227,7 @@ module Aws::AutoScaling
201
227
  MetricName = Shapes::StringShape.new(name: 'MetricName')
202
228
  MetricNamespace = Shapes::StringShape.new(name: 'MetricNamespace')
203
229
  MetricScale = Shapes::FloatShape.new(name: 'MetricScale')
230
+ MetricStat = Shapes::StructureShape.new(name: 'MetricStat')
204
231
  MetricStatistic = Shapes::StringShape.new(name: 'MetricStatistic')
205
232
  MetricType = Shapes::StringShape.new(name: 'MetricType')
206
233
  MetricUnit = Shapes::StringShape.new(name: 'MetricUnit')
@@ -210,11 +237,15 @@ module Aws::AutoScaling
210
237
  MixedInstanceSpotPrice = Shapes::StringShape.new(name: 'MixedInstanceSpotPrice')
211
238
  MixedInstancesPolicy = Shapes::StructureShape.new(name: 'MixedInstancesPolicy')
212
239
  MonitoringEnabled = Shapes::BooleanShape.new(name: 'MonitoringEnabled')
240
+ NetworkInterfaceCountRequest = Shapes::StructureShape.new(name: 'NetworkInterfaceCountRequest')
213
241
  NoDevice = Shapes::BooleanShape.new(name: 'NoDevice')
214
242
  NonZeroIntPercent = Shapes::IntegerShape.new(name: 'NonZeroIntPercent')
215
243
  NotificationConfiguration = Shapes::StructureShape.new(name: 'NotificationConfiguration')
216
244
  NotificationConfigurations = Shapes::ListShape.new(name: 'NotificationConfigurations')
217
245
  NotificationTargetResourceName = Shapes::StringShape.new(name: 'NotificationTargetResourceName')
246
+ NullableBoolean = Shapes::BooleanShape.new(name: 'NullableBoolean')
247
+ NullablePositiveDouble = Shapes::FloatShape.new(name: 'NullablePositiveDouble')
248
+ NullablePositiveInteger = Shapes::IntegerShape.new(name: 'NullablePositiveInteger')
218
249
  NumberOfAutoScalingGroups = Shapes::IntegerShape.new(name: 'NumberOfAutoScalingGroups')
219
250
  NumberOfLaunchConfigurations = Shapes::IntegerShape.new(name: 'NumberOfLaunchConfigurations')
220
251
  OnDemandBaseCapacity = Shapes::IntegerShape.new(name: 'OnDemandBaseCapacity')
@@ -230,6 +261,9 @@ module Aws::AutoScaling
230
261
  PredefinedMetricSpecification = Shapes::StructureShape.new(name: 'PredefinedMetricSpecification')
231
262
  PredefinedScalingMetricType = Shapes::StringShape.new(name: 'PredefinedScalingMetricType')
232
263
  PredictiveScalingConfiguration = Shapes::StructureShape.new(name: 'PredictiveScalingConfiguration')
264
+ PredictiveScalingCustomizedCapacityMetric = Shapes::StructureShape.new(name: 'PredictiveScalingCustomizedCapacityMetric')
265
+ PredictiveScalingCustomizedLoadMetric = Shapes::StructureShape.new(name: 'PredictiveScalingCustomizedLoadMetric')
266
+ PredictiveScalingCustomizedScalingMetric = Shapes::StructureShape.new(name: 'PredictiveScalingCustomizedScalingMetric')
233
267
  PredictiveScalingForecastTimestamps = Shapes::ListShape.new(name: 'PredictiveScalingForecastTimestamps')
234
268
  PredictiveScalingForecastValues = Shapes::ListShape.new(name: 'PredictiveScalingForecastValues')
235
269
  PredictiveScalingMaxCapacityBreachBehavior = Shapes::StringShape.new(name: 'PredictiveScalingMaxCapacityBreachBehavior')
@@ -263,6 +297,7 @@ module Aws::AutoScaling
263
297
  ResourceContentionFault = Shapes::StructureShape.new(name: 'ResourceContentionFault')
264
298
  ResourceInUseFault = Shapes::StructureShape.new(name: 'ResourceInUseFault')
265
299
  ResourceName = Shapes::StringShape.new(name: 'ResourceName')
300
+ ReturnData = Shapes::BooleanShape.new(name: 'ReturnData')
266
301
  ScalingActivityInProgressFault = Shapes::StructureShape.new(name: 'ScalingActivityInProgressFault')
267
302
  ScalingActivityStatusCode = Shapes::StringShape.new(name: 'ScalingActivityStatusCode')
268
303
  ScalingPolicies = Shapes::ListShape.new(name: 'ScalingPolicies')
@@ -304,7 +339,9 @@ module Aws::AutoScaling
304
339
  TerminateInstanceInAutoScalingGroupType = Shapes::StructureShape.new(name: 'TerminateInstanceInAutoScalingGroupType')
305
340
  TerminationPolicies = Shapes::ListShape.new(name: 'TerminationPolicies')
306
341
  TimestampType = Shapes::TimestampShape.new(name: 'TimestampType')
342
+ TotalLocalStorageGBRequest = Shapes::StructureShape.new(name: 'TotalLocalStorageGBRequest')
307
343
  UpdateAutoScalingGroupType = Shapes::StructureShape.new(name: 'UpdateAutoScalingGroupType')
344
+ VCpuCountRequest = Shapes::StructureShape.new(name: 'VCpuCountRequest')
308
345
  Values = Shapes::ListShape.new(name: 'Values')
309
346
  WarmPoolConfiguration = Shapes::StructureShape.new(name: 'WarmPoolConfiguration')
310
347
  WarmPoolMinSize = Shapes::IntegerShape.new(name: 'WarmPoolMinSize')
@@ -320,8 +357,24 @@ module Aws::AutoScaling
320
357
  XmlStringMaxLen32 = Shapes::StringShape.new(name: 'XmlStringMaxLen32')
321
358
  XmlStringMaxLen511 = Shapes::StringShape.new(name: 'XmlStringMaxLen511')
322
359
  XmlStringMaxLen64 = Shapes::StringShape.new(name: 'XmlStringMaxLen64')
360
+ XmlStringMetricLabel = Shapes::StringShape.new(name: 'XmlStringMetricLabel')
361
+ XmlStringMetricStat = Shapes::StringShape.new(name: 'XmlStringMetricStat')
323
362
  XmlStringUserData = Shapes::StringShape.new(name: 'XmlStringUserData')
324
363
 
364
+ AcceleratorCountRequest.add_member(:min, Shapes::ShapeRef.new(shape: NullablePositiveInteger, location_name: "Min"))
365
+ AcceleratorCountRequest.add_member(:max, Shapes::ShapeRef.new(shape: NullablePositiveInteger, location_name: "Max"))
366
+ AcceleratorCountRequest.struct_class = Types::AcceleratorCountRequest
367
+
368
+ AcceleratorManufacturers.member = Shapes::ShapeRef.new(shape: AcceleratorManufacturer)
369
+
370
+ AcceleratorNames.member = Shapes::ShapeRef.new(shape: AcceleratorName)
371
+
372
+ AcceleratorTotalMemoryMiBRequest.add_member(:min, Shapes::ShapeRef.new(shape: NullablePositiveInteger, location_name: "Min"))
373
+ AcceleratorTotalMemoryMiBRequest.add_member(:max, Shapes::ShapeRef.new(shape: NullablePositiveInteger, location_name: "Max"))
374
+ AcceleratorTotalMemoryMiBRequest.struct_class = Types::AcceleratorTotalMemoryMiBRequest
375
+
376
+ AcceleratorTypes.member = Shapes::ShapeRef.new(shape: AcceleratorType)
377
+
325
378
  ActiveInstanceRefreshNotFoundFault.add_member(:message, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "message"))
326
379
  ActiveInstanceRefreshNotFoundFault.struct_class = Types::ActiveInstanceRefreshNotFoundFault
327
380
 
@@ -411,6 +464,7 @@ module Aws::AutoScaling
411
464
  AutoScalingGroup.add_member(:warm_pool_configuration, Shapes::ShapeRef.new(shape: WarmPoolConfiguration, location_name: "WarmPoolConfiguration"))
412
465
  AutoScalingGroup.add_member(:warm_pool_size, Shapes::ShapeRef.new(shape: WarmPoolSize, location_name: "WarmPoolSize"))
413
466
  AutoScalingGroup.add_member(:context, Shapes::ShapeRef.new(shape: Context, location_name: "Context"))
467
+ AutoScalingGroup.add_member(:desired_capacity_type, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "DesiredCapacityType"))
414
468
  AutoScalingGroup.struct_class = Types::AutoScalingGroup
415
469
 
416
470
  AutoScalingGroupNames.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen255)
@@ -449,6 +503,10 @@ module Aws::AutoScaling
449
503
 
450
504
  AvailabilityZones.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen255)
451
505
 
506
+ BaselineEbsBandwidthMbpsRequest.add_member(:min, Shapes::ShapeRef.new(shape: NullablePositiveInteger, location_name: "Min"))
507
+ BaselineEbsBandwidthMbpsRequest.add_member(:max, Shapes::ShapeRef.new(shape: NullablePositiveInteger, location_name: "Max"))
508
+ BaselineEbsBandwidthMbpsRequest.struct_class = Types::BaselineEbsBandwidthMbpsRequest
509
+
452
510
  BatchDeleteScheduledActionAnswer.add_member(:failed_scheduled_actions, Shapes::ShapeRef.new(shape: FailedScheduledUpdateGroupActionRequests, location_name: "FailedScheduledActions"))
453
511
  BatchDeleteScheduledActionAnswer.struct_class = Types::BatchDeleteScheduledActionAnswer
454
512
 
@@ -494,6 +552,8 @@ module Aws::AutoScaling
494
552
  CompleteLifecycleActionType.add_member(:instance_id, Shapes::ShapeRef.new(shape: XmlStringMaxLen19, location_name: "InstanceId"))
495
553
  CompleteLifecycleActionType.struct_class = Types::CompleteLifecycleActionType
496
554
 
555
+ CpuManufacturers.member = Shapes::ShapeRef.new(shape: CpuManufacturer)
556
+
497
557
  CreateAutoScalingGroupType.add_member(:auto_scaling_group_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, required: true, location_name: "AutoScalingGroupName"))
498
558
  CreateAutoScalingGroupType.add_member(:launch_configuration_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "LaunchConfigurationName"))
499
559
  CreateAutoScalingGroupType.add_member(:launch_template, Shapes::ShapeRef.new(shape: LaunchTemplateSpecification, location_name: "LaunchTemplate"))
@@ -518,6 +578,7 @@ module Aws::AutoScaling
518
578
  CreateAutoScalingGroupType.add_member(:service_linked_role_arn, Shapes::ShapeRef.new(shape: ResourceName, location_name: "ServiceLinkedRoleARN"))
519
579
  CreateAutoScalingGroupType.add_member(:max_instance_lifetime, Shapes::ShapeRef.new(shape: MaxInstanceLifetime, location_name: "MaxInstanceLifetime"))
520
580
  CreateAutoScalingGroupType.add_member(:context, Shapes::ShapeRef.new(shape: Context, location_name: "Context"))
581
+ CreateAutoScalingGroupType.add_member(:desired_capacity_type, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "DesiredCapacityType"))
521
582
  CreateAutoScalingGroupType.struct_class = Types::CreateAutoScalingGroupType
522
583
 
523
584
  CreateLaunchConfigurationType.add_member(:launch_configuration_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, required: true, location_name: "LaunchConfigurationName"))
@@ -746,6 +807,8 @@ module Aws::AutoScaling
746
807
  EnterStandbyQuery.add_member(:should_decrement_desired_capacity, Shapes::ShapeRef.new(shape: ShouldDecrementDesiredCapacity, required: true, location_name: "ShouldDecrementDesiredCapacity"))
747
808
  EnterStandbyQuery.struct_class = Types::EnterStandbyQuery
748
809
 
810
+ ExcludedInstanceTypes.member = Shapes::ShapeRef.new(shape: ExcludedInstance)
811
+
749
812
  ExecutePolicyType.add_member(:auto_scaling_group_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "AutoScalingGroupName"))
750
813
  ExecutePolicyType.add_member(:policy_name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "PolicyName"))
751
814
  ExecutePolicyType.add_member(:honor_cooldown, Shapes::ShapeRef.new(shape: HonorCooldown, location_name: "HonorCooldown"))
@@ -795,6 +858,8 @@ module Aws::AutoScaling
795
858
  Instance.add_member(:weighted_capacity, Shapes::ShapeRef.new(shape: XmlStringMaxLen32, location_name: "WeightedCapacity"))
796
859
  Instance.struct_class = Types::Instance
797
860
 
861
+ InstanceGenerations.member = Shapes::ShapeRef.new(shape: InstanceGeneration)
862
+
798
863
  InstanceIds.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen19)
799
864
 
800
865
  InstanceMetadataOptions.add_member(:http_tokens, Shapes::ShapeRef.new(shape: InstanceMetadataHttpTokensState, location_name: "HttpTokens"))
@@ -837,6 +902,29 @@ module Aws::AutoScaling
837
902
 
838
903
  InstanceRefreshes.member = Shapes::ShapeRef.new(shape: InstanceRefresh)
839
904
 
905
+ InstanceRequirements.add_member(:v_cpu_count, Shapes::ShapeRef.new(shape: VCpuCountRequest, required: true, location_name: "VCpuCount"))
906
+ InstanceRequirements.add_member(:memory_mi_b, Shapes::ShapeRef.new(shape: MemoryMiBRequest, required: true, location_name: "MemoryMiB"))
907
+ InstanceRequirements.add_member(:cpu_manufacturers, Shapes::ShapeRef.new(shape: CpuManufacturers, location_name: "CpuManufacturers"))
908
+ InstanceRequirements.add_member(:memory_gi_b_per_v_cpu, Shapes::ShapeRef.new(shape: MemoryGiBPerVCpuRequest, location_name: "MemoryGiBPerVCpu"))
909
+ InstanceRequirements.add_member(:excluded_instance_types, Shapes::ShapeRef.new(shape: ExcludedInstanceTypes, location_name: "ExcludedInstanceTypes"))
910
+ InstanceRequirements.add_member(:instance_generations, Shapes::ShapeRef.new(shape: InstanceGenerations, location_name: "InstanceGenerations"))
911
+ InstanceRequirements.add_member(:spot_max_price_percentage_over_lowest_price, Shapes::ShapeRef.new(shape: NullablePositiveInteger, location_name: "SpotMaxPricePercentageOverLowestPrice"))
912
+ InstanceRequirements.add_member(:on_demand_max_price_percentage_over_lowest_price, Shapes::ShapeRef.new(shape: NullablePositiveInteger, location_name: "OnDemandMaxPricePercentageOverLowestPrice"))
913
+ InstanceRequirements.add_member(:bare_metal, Shapes::ShapeRef.new(shape: BareMetal, location_name: "BareMetal"))
914
+ InstanceRequirements.add_member(:burstable_performance, Shapes::ShapeRef.new(shape: BurstablePerformance, location_name: "BurstablePerformance"))
915
+ InstanceRequirements.add_member(:require_hibernate_support, Shapes::ShapeRef.new(shape: NullableBoolean, location_name: "RequireHibernateSupport"))
916
+ InstanceRequirements.add_member(:network_interface_count, Shapes::ShapeRef.new(shape: NetworkInterfaceCountRequest, location_name: "NetworkInterfaceCount"))
917
+ InstanceRequirements.add_member(:local_storage, Shapes::ShapeRef.new(shape: LocalStorage, location_name: "LocalStorage"))
918
+ InstanceRequirements.add_member(:local_storage_types, Shapes::ShapeRef.new(shape: LocalStorageTypes, location_name: "LocalStorageTypes"))
919
+ InstanceRequirements.add_member(:total_local_storage_gb, Shapes::ShapeRef.new(shape: TotalLocalStorageGBRequest, location_name: "TotalLocalStorageGB"))
920
+ InstanceRequirements.add_member(:baseline_ebs_bandwidth_mbps, Shapes::ShapeRef.new(shape: BaselineEbsBandwidthMbpsRequest, location_name: "BaselineEbsBandwidthMbps"))
921
+ InstanceRequirements.add_member(:accelerator_types, Shapes::ShapeRef.new(shape: AcceleratorTypes, location_name: "AcceleratorTypes"))
922
+ InstanceRequirements.add_member(:accelerator_count, Shapes::ShapeRef.new(shape: AcceleratorCountRequest, location_name: "AcceleratorCount"))
923
+ InstanceRequirements.add_member(:accelerator_manufacturers, Shapes::ShapeRef.new(shape: AcceleratorManufacturers, location_name: "AcceleratorManufacturers"))
924
+ InstanceRequirements.add_member(:accelerator_names, Shapes::ShapeRef.new(shape: AcceleratorNames, location_name: "AcceleratorNames"))
925
+ InstanceRequirements.add_member(:accelerator_total_memory_mi_b, Shapes::ShapeRef.new(shape: AcceleratorTotalMemoryMiBRequest, location_name: "AcceleratorTotalMemoryMiB"))
926
+ InstanceRequirements.struct_class = Types::InstanceRequirements
927
+
840
928
  Instances.member = Shapes::ShapeRef.new(shape: Instance)
841
929
 
842
930
  InstancesDistribution.add_member(:on_demand_allocation_strategy, Shapes::ShapeRef.new(shape: XmlString, location_name: "OnDemandAllocationStrategy"))
@@ -895,6 +983,7 @@ module Aws::AutoScaling
895
983
  LaunchTemplateOverrides.add_member(:instance_type, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "InstanceType"))
896
984
  LaunchTemplateOverrides.add_member(:weighted_capacity, Shapes::ShapeRef.new(shape: XmlStringMaxLen32, location_name: "WeightedCapacity"))
897
985
  LaunchTemplateOverrides.add_member(:launch_template_specification, Shapes::ShapeRef.new(shape: LaunchTemplateSpecification, location_name: "LaunchTemplateSpecification"))
986
+ LaunchTemplateOverrides.add_member(:instance_requirements, Shapes::ShapeRef.new(shape: InstanceRequirements, location_name: "InstanceRequirements"))
898
987
  LaunchTemplateOverrides.struct_class = Types::LaunchTemplateOverrides
899
988
 
900
989
  LaunchTemplateSpecification.add_member(:launch_template_id, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "LaunchTemplateId"))
@@ -952,11 +1041,35 @@ module Aws::AutoScaling
952
1041
 
953
1042
  LoadForecasts.member = Shapes::ShapeRef.new(shape: LoadForecast)
954
1043
 
1044
+ LocalStorageTypes.member = Shapes::ShapeRef.new(shape: LocalStorageType)
1045
+
1046
+ MemoryGiBPerVCpuRequest.add_member(:min, Shapes::ShapeRef.new(shape: NullablePositiveDouble, location_name: "Min"))
1047
+ MemoryGiBPerVCpuRequest.add_member(:max, Shapes::ShapeRef.new(shape: NullablePositiveDouble, location_name: "Max"))
1048
+ MemoryGiBPerVCpuRequest.struct_class = Types::MemoryGiBPerVCpuRequest
1049
+
1050
+ MemoryMiBRequest.add_member(:min, Shapes::ShapeRef.new(shape: NullablePositiveInteger, required: true, location_name: "Min"))
1051
+ MemoryMiBRequest.add_member(:max, Shapes::ShapeRef.new(shape: NullablePositiveInteger, location_name: "Max"))
1052
+ MemoryMiBRequest.struct_class = Types::MemoryMiBRequest
1053
+
1054
+ Metric.add_member(:namespace, Shapes::ShapeRef.new(shape: MetricNamespace, required: true, location_name: "Namespace"))
1055
+ Metric.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, required: true, location_name: "MetricName"))
1056
+ Metric.add_member(:dimensions, Shapes::ShapeRef.new(shape: MetricDimensions, location_name: "Dimensions"))
1057
+ Metric.struct_class = Types::Metric
1058
+
955
1059
  MetricCollectionType.add_member(:metric, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "Metric"))
956
1060
  MetricCollectionType.struct_class = Types::MetricCollectionType
957
1061
 
958
1062
  MetricCollectionTypes.member = Shapes::ShapeRef.new(shape: MetricCollectionType)
959
1063
 
1064
+ MetricDataQueries.member = Shapes::ShapeRef.new(shape: MetricDataQuery)
1065
+
1066
+ MetricDataQuery.add_member(:id, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, required: true, location_name: "Id"))
1067
+ MetricDataQuery.add_member(:expression, Shapes::ShapeRef.new(shape: XmlStringMaxLen1023, location_name: "Expression"))
1068
+ MetricDataQuery.add_member(:metric_stat, Shapes::ShapeRef.new(shape: MetricStat, location_name: "MetricStat"))
1069
+ MetricDataQuery.add_member(:label, Shapes::ShapeRef.new(shape: XmlStringMetricLabel, location_name: "Label"))
1070
+ MetricDataQuery.add_member(:return_data, Shapes::ShapeRef.new(shape: ReturnData, location_name: "ReturnData"))
1071
+ MetricDataQuery.struct_class = Types::MetricDataQuery
1072
+
960
1073
  MetricDimension.add_member(:name, Shapes::ShapeRef.new(shape: MetricDimensionName, required: true, location_name: "Name"))
961
1074
  MetricDimension.add_member(:value, Shapes::ShapeRef.new(shape: MetricDimensionValue, required: true, location_name: "Value"))
962
1075
  MetricDimension.struct_class = Types::MetricDimension
@@ -968,12 +1081,21 @@ module Aws::AutoScaling
968
1081
 
969
1082
  MetricGranularityTypes.member = Shapes::ShapeRef.new(shape: MetricGranularityType)
970
1083
 
1084
+ MetricStat.add_member(:metric, Shapes::ShapeRef.new(shape: Metric, required: true, location_name: "Metric"))
1085
+ MetricStat.add_member(:stat, Shapes::ShapeRef.new(shape: XmlStringMetricStat, required: true, location_name: "Stat"))
1086
+ MetricStat.add_member(:unit, Shapes::ShapeRef.new(shape: MetricUnit, location_name: "Unit"))
1087
+ MetricStat.struct_class = Types::MetricStat
1088
+
971
1089
  Metrics.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen255)
972
1090
 
973
1091
  MixedInstancesPolicy.add_member(:launch_template, Shapes::ShapeRef.new(shape: LaunchTemplate, location_name: "LaunchTemplate"))
974
1092
  MixedInstancesPolicy.add_member(:instances_distribution, Shapes::ShapeRef.new(shape: InstancesDistribution, location_name: "InstancesDistribution"))
975
1093
  MixedInstancesPolicy.struct_class = Types::MixedInstancesPolicy
976
1094
 
1095
+ NetworkInterfaceCountRequest.add_member(:min, Shapes::ShapeRef.new(shape: NullablePositiveInteger, location_name: "Min"))
1096
+ NetworkInterfaceCountRequest.add_member(:max, Shapes::ShapeRef.new(shape: NullablePositiveInteger, location_name: "Max"))
1097
+ NetworkInterfaceCountRequest.struct_class = Types::NetworkInterfaceCountRequest
1098
+
977
1099
  NotificationConfiguration.add_member(:auto_scaling_group_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "AutoScalingGroupName"))
978
1100
  NotificationConfiguration.add_member(:topic_arn, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "TopicARN"))
979
1101
  NotificationConfiguration.add_member(:notification_type, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "NotificationType"))
@@ -1006,6 +1128,15 @@ module Aws::AutoScaling
1006
1128
  PredictiveScalingConfiguration.add_member(:max_capacity_buffer, Shapes::ShapeRef.new(shape: PredictiveScalingMaxCapacityBuffer, location_name: "MaxCapacityBuffer"))
1007
1129
  PredictiveScalingConfiguration.struct_class = Types::PredictiveScalingConfiguration
1008
1130
 
1131
+ PredictiveScalingCustomizedCapacityMetric.add_member(:metric_data_queries, Shapes::ShapeRef.new(shape: MetricDataQueries, required: true, location_name: "MetricDataQueries"))
1132
+ PredictiveScalingCustomizedCapacityMetric.struct_class = Types::PredictiveScalingCustomizedCapacityMetric
1133
+
1134
+ PredictiveScalingCustomizedLoadMetric.add_member(:metric_data_queries, Shapes::ShapeRef.new(shape: MetricDataQueries, required: true, location_name: "MetricDataQueries"))
1135
+ PredictiveScalingCustomizedLoadMetric.struct_class = Types::PredictiveScalingCustomizedLoadMetric
1136
+
1137
+ PredictiveScalingCustomizedScalingMetric.add_member(:metric_data_queries, Shapes::ShapeRef.new(shape: MetricDataQueries, required: true, location_name: "MetricDataQueries"))
1138
+ PredictiveScalingCustomizedScalingMetric.struct_class = Types::PredictiveScalingCustomizedScalingMetric
1139
+
1009
1140
  PredictiveScalingForecastTimestamps.member = Shapes::ShapeRef.new(shape: TimestampType)
1010
1141
 
1011
1142
  PredictiveScalingForecastValues.member = Shapes::ShapeRef.new(shape: MetricScale)
@@ -1014,6 +1145,9 @@ module Aws::AutoScaling
1014
1145
  PredictiveScalingMetricSpecification.add_member(:predefined_metric_pair_specification, Shapes::ShapeRef.new(shape: PredictiveScalingPredefinedMetricPair, location_name: "PredefinedMetricPairSpecification"))
1015
1146
  PredictiveScalingMetricSpecification.add_member(:predefined_scaling_metric_specification, Shapes::ShapeRef.new(shape: PredictiveScalingPredefinedScalingMetric, location_name: "PredefinedScalingMetricSpecification"))
1016
1147
  PredictiveScalingMetricSpecification.add_member(:predefined_load_metric_specification, Shapes::ShapeRef.new(shape: PredictiveScalingPredefinedLoadMetric, location_name: "PredefinedLoadMetricSpecification"))
1148
+ PredictiveScalingMetricSpecification.add_member(:customized_scaling_metric_specification, Shapes::ShapeRef.new(shape: PredictiveScalingCustomizedScalingMetric, location_name: "CustomizedScalingMetricSpecification"))
1149
+ PredictiveScalingMetricSpecification.add_member(:customized_load_metric_specification, Shapes::ShapeRef.new(shape: PredictiveScalingCustomizedLoadMetric, location_name: "CustomizedLoadMetricSpecification"))
1150
+ PredictiveScalingMetricSpecification.add_member(:customized_capacity_metric_specification, Shapes::ShapeRef.new(shape: PredictiveScalingCustomizedCapacityMetric, location_name: "CustomizedCapacityMetricSpecification"))
1017
1151
  PredictiveScalingMetricSpecification.struct_class = Types::PredictiveScalingMetricSpecification
1018
1152
 
1019
1153
  PredictiveScalingMetricSpecifications.member = Shapes::ShapeRef.new(shape: PredictiveScalingMetricSpecification)
@@ -1254,6 +1388,10 @@ module Aws::AutoScaling
1254
1388
 
1255
1389
  TerminationPolicies.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen1600)
1256
1390
 
1391
+ TotalLocalStorageGBRequest.add_member(:min, Shapes::ShapeRef.new(shape: NullablePositiveDouble, location_name: "Min"))
1392
+ TotalLocalStorageGBRequest.add_member(:max, Shapes::ShapeRef.new(shape: NullablePositiveDouble, location_name: "Max"))
1393
+ TotalLocalStorageGBRequest.struct_class = Types::TotalLocalStorageGBRequest
1394
+
1257
1395
  UpdateAutoScalingGroupType.add_member(:auto_scaling_group_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, required: true, location_name: "AutoScalingGroupName"))
1258
1396
  UpdateAutoScalingGroupType.add_member(:launch_configuration_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "LaunchConfigurationName"))
1259
1397
  UpdateAutoScalingGroupType.add_member(:launch_template, Shapes::ShapeRef.new(shape: LaunchTemplateSpecification, location_name: "LaunchTemplate"))
@@ -1273,8 +1411,13 @@ module Aws::AutoScaling
1273
1411
  UpdateAutoScalingGroupType.add_member(:max_instance_lifetime, Shapes::ShapeRef.new(shape: MaxInstanceLifetime, location_name: "MaxInstanceLifetime"))
1274
1412
  UpdateAutoScalingGroupType.add_member(:capacity_rebalance, Shapes::ShapeRef.new(shape: CapacityRebalanceEnabled, location_name: "CapacityRebalance"))
1275
1413
  UpdateAutoScalingGroupType.add_member(:context, Shapes::ShapeRef.new(shape: Context, location_name: "Context"))
1414
+ UpdateAutoScalingGroupType.add_member(:desired_capacity_type, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "DesiredCapacityType"))
1276
1415
  UpdateAutoScalingGroupType.struct_class = Types::UpdateAutoScalingGroupType
1277
1416
 
1417
+ VCpuCountRequest.add_member(:min, Shapes::ShapeRef.new(shape: NullablePositiveInteger, required: true, location_name: "Min"))
1418
+ VCpuCountRequest.add_member(:max, Shapes::ShapeRef.new(shape: NullablePositiveInteger, location_name: "Max"))
1419
+ VCpuCountRequest.struct_class = Types::VCpuCountRequest
1420
+
1278
1421
  Values.member = Shapes::ShapeRef.new(shape: XmlString)
1279
1422
 
1280
1423
  WarmPoolConfiguration.add_member(:max_group_prepared_capacity, Shapes::ShapeRef.new(shape: MaxGroupPreparedCapacity, location_name: "MaxGroupPreparedCapacity"))
@@ -61,6 +61,53 @@ module Aws::AutoScaling
61
61
  # launch_template_name: "LaunchTemplateName",
62
62
  # version: "XmlStringMaxLen255",
63
63
  # },
64
+ # instance_requirements: {
65
+ # v_cpu_count: { # required
66
+ # min: 1, # required
67
+ # max: 1,
68
+ # },
69
+ # memory_mi_b: { # required
70
+ # min: 1, # required
71
+ # max: 1,
72
+ # },
73
+ # cpu_manufacturers: ["intel"], # accepts intel, amd, amazon-web-services
74
+ # memory_gi_b_per_v_cpu: {
75
+ # min: 1.0,
76
+ # max: 1.0,
77
+ # },
78
+ # excluded_instance_types: ["ExcludedInstance"],
79
+ # instance_generations: ["current"], # accepts current, previous
80
+ # spot_max_price_percentage_over_lowest_price: 1,
81
+ # on_demand_max_price_percentage_over_lowest_price: 1,
82
+ # bare_metal: "included", # accepts included, excluded, required
83
+ # burstable_performance: "included", # accepts included, excluded, required
84
+ # require_hibernate_support: false,
85
+ # network_interface_count: {
86
+ # min: 1,
87
+ # max: 1,
88
+ # },
89
+ # local_storage: "included", # accepts included, excluded, required
90
+ # local_storage_types: ["hdd"], # accepts hdd, ssd
91
+ # total_local_storage_gb: {
92
+ # min: 1.0,
93
+ # max: 1.0,
94
+ # },
95
+ # baseline_ebs_bandwidth_mbps: {
96
+ # min: 1,
97
+ # max: 1,
98
+ # },
99
+ # accelerator_types: ["gpu"], # accepts gpu, fpga, inference
100
+ # accelerator_count: {
101
+ # min: 1,
102
+ # max: 1,
103
+ # },
104
+ # accelerator_manufacturers: ["nvidia"], # accepts nvidia, amd, amazon-web-services, xilinx
105
+ # accelerator_names: ["a100"], # accepts a100, v100, k80, t4, m60, radeon-pro-v520, vu9p
106
+ # accelerator_total_memory_mi_b: {
107
+ # min: 1,
108
+ # max: 1,
109
+ # },
110
+ # },
64
111
  # },
65
112
  # ],
66
113
  # },
@@ -111,6 +158,7 @@ module Aws::AutoScaling
111
158
  # service_linked_role_arn: "ResourceName",
112
159
  # max_instance_lifetime: 1,
113
160
  # context: "Context",
161
+ # desired_capacity_type: "XmlStringMaxLen255",
114
162
  # })
115
163
  # @param [Hash] options ({})
116
164
  # @option options [required, String] :auto_scaling_group_name
@@ -141,20 +189,11 @@ module Aws::AutoScaling
141
189
  #
142
190
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html
143
191
  # @option options [Types::MixedInstancesPolicy] :mixed_instances_policy
144
- # An embedded object that specifies a mixed instances policy. The
145
- # required properties must be specified. If optional properties are
146
- # unspecified, their default values are used.
147
- #
148
- # The policy includes properties that not only define the distribution
149
- # of On-Demand Instances and Spot Instances, the maximum price to pay
150
- # for Spot Instances, and how the Auto Scaling group allocates instance
151
- # types to fulfill On-Demand and Spot capacities, but also the
152
- # properties that specify the instance configuration information—the
153
- # launch template and instance types. The policy can also include a
154
- # weight for each instance type and different launch templates for
155
- # individual instance types. For more information, see [Auto Scaling
156
- # groups with multiple instance types and purchase options][1] in the
157
- # *Amazon EC2 Auto Scaling User Guide*.
192
+ # An embedded object that specifies a mixed instances policy.
193
+ #
194
+ # For more information, see [Auto Scaling groups with multiple instance
195
+ # types and purchase options][1] in the *Amazon EC2 Auto Scaling User
196
+ # Guide*.
158
197
  #
159
198
  #
160
199
  #
@@ -341,6 +380,21 @@ module Aws::AutoScaling
341
380
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-max-instance-lifetime.html
342
381
  # @option options [String] :context
343
382
  # Reserved.
383
+ # @option options [String] :desired_capacity_type
384
+ # The unit of measurement for the value specified for desired capacity.
385
+ # Amazon EC2 Auto Scaling supports `DesiredCapacityType` for
386
+ # attribute-based instance type selection only. For more information,
387
+ # see [Creating an Auto Scaling group using attribute-based instance
388
+ # type selection][1] in the *Amazon EC2 Auto Scaling User Guide*.
389
+ #
390
+ # By default, Amazon EC2 Auto Scaling specifies `units`, which
391
+ # translates into number of instances.
392
+ #
393
+ # Valid values: `units` \| `vcpu` \| `memory-mib`
394
+ #
395
+ #
396
+ #
397
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html
344
398
  # @return [AutoScalingGroup]
345
399
  def create_group(options = {})
346
400
  @client.create_auto_scaling_group(options)