aws-sdk-costoptimizationhub 1.20.0 → 1.21.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: 986ce880c5bbad5e4e79d1ed8a319e9a0f01a4397383b92e2763696c2fc79f08
4
- data.tar.gz: 59b96bbe67e7c5764623ba82b21023731c3573f13c2d02f2b2caba2e7a26d6fc
3
+ metadata.gz: f53c4e57daa254e590d53108c5d5605c577cf3bb03ab130f10313ded4fb677ed
4
+ data.tar.gz: 43be62fffa708b2a5c7e37cb39ba6d1836479d63cb19a340e997039d53ba8af1
5
5
  SHA512:
6
- metadata.gz: a9145ed3326c3252b8d4663a184b894f189cd3733f946465e5b8aeb26bf949422ced965e43d254a66f2dddd854940c93867b9157e5f683f53b6603814afc7ffc
7
- data.tar.gz: 7b800050e6de5bdab155fcc8cac09b669a8ac4de2bbfe59453f5c745b9a7b8aaf6c735dbc4356f9f7e799de058b37dadad97f901a456fa7bc01f6923ca85f3f0
6
+ metadata.gz: 840c526e8d648465a260a6a84029d17ca2ef6fe0fe60bb99b5180889afc8156242f4e4afd77b44541dc4b67b2b65ca3be8c34d871eacfaa04dd1cf7bcd416ad8
7
+ data.tar.gz: c9ecc5d626bf3d82450e4231a8e5090ef71e534c17073c62acbc1fdf740b7cf47ec45c31d956e8a278e2f554f6a193cd3e925fdcd594808ca74b5a930e6a9d52
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.21.0 (2025-02-06)
5
+ ------------------
6
+
7
+ * Feature - This release enables AWS Cost Optimization Hub to show cost optimization recommendations for Amazon Auto Scaling Groups, including those with single and mixed instance types.
8
+
4
9
  1.20.0 (2025-01-15)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.20.0
1
+ 1.21.0
@@ -564,7 +564,7 @@ module Aws::CostOptimizationHub
564
564
  # resp.estimated_monthly_cost #=> Float
565
565
  # resp.implementation_effort #=> String, one of "VeryLow", "Low", "Medium", "High", "VeryHigh"
566
566
  # resp.restart_needed #=> Boolean
567
- # resp.action_type #=> String, one of "Rightsize", "Stop", "Upgrade", "PurchaseSavingsPlans", "PurchaseReservedInstances", "MigrateToGraviton", "Delete"
567
+ # resp.action_type #=> String, one of "Rightsize", "Stop", "Upgrade", "PurchaseSavingsPlans", "PurchaseReservedInstances", "MigrateToGraviton", "Delete", "ScaleIn"
568
568
  # resp.rollback_possible #=> Boolean
569
569
  # resp.current_resource_details.lambda_function.configuration.compute.v_cpu #=> Float
570
570
  # resp.current_resource_details.lambda_function.configuration.compute.memory_size_in_mb #=> Integer
@@ -629,6 +629,10 @@ module Aws::CostOptimizationHub
629
629
  # resp.current_resource_details.ebs_volume.cost_calculation.pricing.estimated_discounts.other_discount #=> Float
630
630
  # resp.current_resource_details.ebs_volume.cost_calculation.pricing.estimated_cost_after_discounts #=> Float
631
631
  # resp.current_resource_details.ec2_auto_scaling_group.configuration.instance.type #=> String
632
+ # resp.current_resource_details.ec2_auto_scaling_group.configuration.mixed_instances #=> Array
633
+ # resp.current_resource_details.ec2_auto_scaling_group.configuration.mixed_instances[0].type #=> String
634
+ # resp.current_resource_details.ec2_auto_scaling_group.configuration.type #=> String, one of "SingleInstanceType", "MixedInstanceTypes"
635
+ # resp.current_resource_details.ec2_auto_scaling_group.configuration.allocation_strategy #=> String, one of "Prioritized", "LowestPrice"
632
636
  # resp.current_resource_details.ec2_auto_scaling_group.cost_calculation.usages #=> Array
633
637
  # resp.current_resource_details.ec2_auto_scaling_group.cost_calculation.usages[0].usage_type #=> String
634
638
  # resp.current_resource_details.ec2_auto_scaling_group.cost_calculation.usages[0].usage_amount #=> Float
@@ -850,6 +854,10 @@ module Aws::CostOptimizationHub
850
854
  # resp.recommended_resource_details.ebs_volume.cost_calculation.pricing.estimated_discounts.other_discount #=> Float
851
855
  # resp.recommended_resource_details.ebs_volume.cost_calculation.pricing.estimated_cost_after_discounts #=> Float
852
856
  # resp.recommended_resource_details.ec2_auto_scaling_group.configuration.instance.type #=> String
857
+ # resp.recommended_resource_details.ec2_auto_scaling_group.configuration.mixed_instances #=> Array
858
+ # resp.recommended_resource_details.ec2_auto_scaling_group.configuration.mixed_instances[0].type #=> String
859
+ # resp.recommended_resource_details.ec2_auto_scaling_group.configuration.type #=> String, one of "SingleInstanceType", "MixedInstanceTypes"
860
+ # resp.recommended_resource_details.ec2_auto_scaling_group.configuration.allocation_strategy #=> String, one of "Prioritized", "LowestPrice"
853
861
  # resp.recommended_resource_details.ec2_auto_scaling_group.cost_calculation.usages #=> Array
854
862
  # resp.recommended_resource_details.ec2_auto_scaling_group.cost_calculation.usages[0].usage_type #=> String
855
863
  # resp.recommended_resource_details.ec2_auto_scaling_group.cost_calculation.usages[0].usage_amount #=> Float
@@ -1120,7 +1128,7 @@ module Aws::CostOptimizationHub
1120
1128
  # account_ids: ["AccountId"],
1121
1129
  # regions: ["String"],
1122
1130
  # resource_types: ["Ec2Instance"], # accepts Ec2Instance, LambdaFunction, EbsVolume, EcsService, Ec2AutoScalingGroup, Ec2InstanceSavingsPlans, ComputeSavingsPlans, SageMakerSavingsPlans, Ec2ReservedInstances, RdsReservedInstances, OpenSearchReservedInstances, RedshiftReservedInstances, ElastiCacheReservedInstances, RdsDbInstanceStorage, RdsDbInstance
1123
- # action_types: ["Rightsize"], # accepts Rightsize, Stop, Upgrade, PurchaseSavingsPlans, PurchaseReservedInstances, MigrateToGraviton, Delete
1131
+ # action_types: ["Rightsize"], # accepts Rightsize, Stop, Upgrade, PurchaseSavingsPlans, PurchaseReservedInstances, MigrateToGraviton, Delete, ScaleIn
1124
1132
  # tags: [
1125
1133
  # {
1126
1134
  # key: "String",
@@ -1194,7 +1202,7 @@ module Aws::CostOptimizationHub
1194
1202
  # account_ids: ["AccountId"],
1195
1203
  # regions: ["String"],
1196
1204
  # resource_types: ["Ec2Instance"], # accepts Ec2Instance, LambdaFunction, EbsVolume, EcsService, Ec2AutoScalingGroup, Ec2InstanceSavingsPlans, ComputeSavingsPlans, SageMakerSavingsPlans, Ec2ReservedInstances, RdsReservedInstances, OpenSearchReservedInstances, RedshiftReservedInstances, ElastiCacheReservedInstances, RdsDbInstanceStorage, RdsDbInstance
1197
- # action_types: ["Rightsize"], # accepts Rightsize, Stop, Upgrade, PurchaseSavingsPlans, PurchaseReservedInstances, MigrateToGraviton, Delete
1205
+ # action_types: ["Rightsize"], # accepts Rightsize, Stop, Upgrade, PurchaseSavingsPlans, PurchaseReservedInstances, MigrateToGraviton, Delete, ScaleIn
1198
1206
  # tags: [
1199
1207
  # {
1200
1208
  # key: "String",
@@ -1348,7 +1356,7 @@ module Aws::CostOptimizationHub
1348
1356
  tracer: tracer
1349
1357
  )
1350
1358
  context[:gem_name] = 'aws-sdk-costoptimizationhub'
1351
- context[:gem_version] = '1.20.0'
1359
+ context[:gem_version] = '1.21.0'
1352
1360
  Seahorse::Client::Request.new(handlers, context)
1353
1361
  end
1354
1362
 
@@ -21,6 +21,7 @@ module Aws::CostOptimizationHub
21
21
  AccountIdList = Shapes::ListShape.new(name: 'AccountIdList')
22
22
  ActionType = Shapes::StringShape.new(name: 'ActionType')
23
23
  ActionTypeList = Shapes::ListShape.new(name: 'ActionTypeList')
24
+ AllocationStrategy = Shapes::StringShape.new(name: 'AllocationStrategy')
24
25
  BlockStoragePerformanceConfiguration = Shapes::StructureShape.new(name: 'BlockStoragePerformanceConfiguration')
25
26
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
26
27
  ComputeConfiguration = Shapes::StructureShape.new(name: 'ComputeConfiguration')
@@ -33,6 +34,7 @@ module Aws::CostOptimizationHub
33
34
  EbsVolumeConfiguration = Shapes::StructureShape.new(name: 'EbsVolumeConfiguration')
34
35
  Ec2AutoScalingGroup = Shapes::StructureShape.new(name: 'Ec2AutoScalingGroup')
35
36
  Ec2AutoScalingGroupConfiguration = Shapes::StructureShape.new(name: 'Ec2AutoScalingGroupConfiguration')
37
+ Ec2AutoScalingGroupType = Shapes::StringShape.new(name: 'Ec2AutoScalingGroupType')
36
38
  Ec2Instance = Shapes::StructureShape.new(name: 'Ec2Instance')
37
39
  Ec2InstanceConfiguration = Shapes::StructureShape.new(name: 'Ec2InstanceConfiguration')
38
40
  Ec2InstanceSavingsPlans = Shapes::StructureShape.new(name: 'Ec2InstanceSavingsPlans')
@@ -67,6 +69,8 @@ module Aws::CostOptimizationHub
67
69
  ListRecommendationsResponse = Shapes::StructureShape.new(name: 'ListRecommendationsResponse')
68
70
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
69
71
  MemberAccountDiscountVisibility = Shapes::StringShape.new(name: 'MemberAccountDiscountVisibility')
72
+ MixedInstanceConfiguration = Shapes::StructureShape.new(name: 'MixedInstanceConfiguration')
73
+ MixedInstanceConfigurationList = Shapes::ListShape.new(name: 'MixedInstanceConfigurationList')
70
74
  OpenSearchReservedInstances = Shapes::StructureShape.new(name: 'OpenSearchReservedInstances')
71
75
  OpenSearchReservedInstancesConfiguration = Shapes::StructureShape.new(name: 'OpenSearchReservedInstancesConfiguration')
72
76
  Order = Shapes::StringShape.new(name: 'Order')
@@ -174,6 +178,9 @@ module Aws::CostOptimizationHub
174
178
  Ec2AutoScalingGroup.struct_class = Types::Ec2AutoScalingGroup
175
179
 
176
180
  Ec2AutoScalingGroupConfiguration.add_member(:instance, Shapes::ShapeRef.new(shape: InstanceConfiguration, location_name: "instance"))
181
+ Ec2AutoScalingGroupConfiguration.add_member(:mixed_instances, Shapes::ShapeRef.new(shape: MixedInstanceConfigurationList, location_name: "mixedInstances"))
182
+ Ec2AutoScalingGroupConfiguration.add_member(:type, Shapes::ShapeRef.new(shape: Ec2AutoScalingGroupType, location_name: "type"))
183
+ Ec2AutoScalingGroupConfiguration.add_member(:allocation_strategy, Shapes::ShapeRef.new(shape: AllocationStrategy, location_name: "allocationStrategy"))
177
184
  Ec2AutoScalingGroupConfiguration.struct_class = Types::Ec2AutoScalingGroupConfiguration
178
185
 
179
186
  Ec2Instance.add_member(:configuration, Shapes::ShapeRef.new(shape: Ec2InstanceConfiguration, location_name: "configuration"))
@@ -347,6 +354,11 @@ module Aws::CostOptimizationHub
347
354
  ListRecommendationsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
348
355
  ListRecommendationsResponse.struct_class = Types::ListRecommendationsResponse
349
356
 
357
+ MixedInstanceConfiguration.add_member(:type, Shapes::ShapeRef.new(shape: String, location_name: "type"))
358
+ MixedInstanceConfiguration.struct_class = Types::MixedInstanceConfiguration
359
+
360
+ MixedInstanceConfigurationList.member = Shapes::ShapeRef.new(shape: MixedInstanceConfiguration)
361
+
350
362
  OpenSearchReservedInstances.add_member(:configuration, Shapes::ShapeRef.new(shape: OpenSearchReservedInstancesConfiguration, location_name: "configuration"))
351
363
  OpenSearchReservedInstances.add_member(:cost_calculation, Shapes::ShapeRef.new(shape: ReservedInstancesCostCalculation, location_name: "costCalculation"))
352
364
  OpenSearchReservedInstances.struct_class = Types::OpenSearchReservedInstances
@@ -10,40 +10,36 @@
10
10
  module Aws::CostOptimizationHub
11
11
  class EndpointProvider
12
12
  def resolve_endpoint(parameters)
13
- region = parameters.region
14
- use_dual_stack = parameters.use_dual_stack
15
- use_fips = parameters.use_fips
16
- endpoint = parameters.endpoint
17
- if Aws::Endpoints::Matchers.set?(endpoint)
18
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
13
+ if Aws::Endpoints::Matchers.set?(parameters.endpoint)
14
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)
19
15
  raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
20
16
  end
21
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
17
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
22
18
  raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
19
  end
24
- return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
20
+ return Aws::Endpoints::Endpoint.new(url: parameters.endpoint, headers: {}, properties: {})
25
21
  end
26
- if Aws::Endpoints::Matchers.set?(region)
27
- if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
22
+ if Aws::Endpoints::Matchers.set?(parameters.region)
23
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(parameters.region))
24
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
29
25
  if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
- return Aws::Endpoints::Endpoint.new(url: "https://cost-optimization-hub-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
26
+ return Aws::Endpoints::Endpoint.new(url: "https://cost-optimization-hub-fips.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
27
  end
32
28
  raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
29
  end
34
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
30
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)
35
31
  if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
36
- return Aws::Endpoints::Endpoint.new(url: "https://cost-optimization-hub-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
32
+ return Aws::Endpoints::Endpoint.new(url: "https://cost-optimization-hub-fips.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
33
  end
38
34
  raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
39
35
  end
40
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
36
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
41
37
  if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
42
- return Aws::Endpoints::Endpoint.new(url: "https://cost-optimization-hub.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
38
+ return Aws::Endpoints::Endpoint.new(url: "https://cost-optimization-hub.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
43
39
  end
44
40
  raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
45
41
  end
46
- return Aws::Endpoints::Endpoint.new(url: "https://cost-optimization-hub.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
42
+ return Aws::Endpoints::Endpoint.new(url: "https://cost-optimization-hub.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
47
43
  end
48
44
  end
49
45
  raise ArgumentError, "Invalid Configuration: Missing Region"
@@ -238,16 +238,35 @@ module Aws::CostOptimizationHub
238
238
  include Aws::Structure
239
239
  end
240
240
 
241
- # The EC2 auto scaling group configuration used for recommendations.
241
+ # The EC2 Auto Scaling group configuration used for recommendations.
242
242
  #
243
243
  # @!attribute [rw] instance
244
- # Details about the instance.
244
+ # Details about the instance for the EC2 Auto Scaling group with a
245
+ # single instance type.
245
246
  # @return [Types::InstanceConfiguration]
246
247
  #
248
+ # @!attribute [rw] mixed_instances
249
+ # A list of instance types for an EC2 Auto Scaling group with mixed
250
+ # instance types.
251
+ # @return [Array<Types::MixedInstanceConfiguration>]
252
+ #
253
+ # @!attribute [rw] type
254
+ # The type of EC2 Auto Scaling group, showing whether it consists of a
255
+ # single instance type or mixed instance types.
256
+ # @return [String]
257
+ #
258
+ # @!attribute [rw] allocation_strategy
259
+ # The strategy used for allocating instances, based on a predefined
260
+ # priority order or based on the lowest available price.
261
+ # @return [String]
262
+ #
247
263
  # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/Ec2AutoScalingGroupConfiguration AWS API Documentation
248
264
  #
249
265
  class Ec2AutoScalingGroupConfiguration < Struct.new(
250
- :instance)
266
+ :instance,
267
+ :mixed_instances,
268
+ :type,
269
+ :allocation_strategy)
251
270
  SENSITIVE = []
252
271
  include Aws::Structure
253
272
  end
@@ -848,10 +867,10 @@ module Aws::CostOptimizationHub
848
867
  include Aws::Structure
849
868
  end
850
869
 
851
- # The Instance configuration used for recommendations.
870
+ # The instance configuration used for recommendations.
852
871
  #
853
872
  # @!attribute [rw] type
854
- # Details about the type.
873
+ # The instance type of the configuration.
855
874
  # @return [String]
856
875
  #
857
876
  # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/InstanceConfiguration AWS API Documentation
@@ -1085,6 +1104,21 @@ module Aws::CostOptimizationHub
1085
1104
  include Aws::Structure
1086
1105
  end
1087
1106
 
1107
+ # The configuration for the EC2 Auto Scaling group with mixed instance
1108
+ # types.
1109
+ #
1110
+ # @!attribute [rw] type
1111
+ # The instance type of the configuration.
1112
+ # @return [String]
1113
+ #
1114
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/MixedInstanceConfiguration AWS API Documentation
1115
+ #
1116
+ class MixedInstanceConfiguration < Struct.new(
1117
+ :type)
1118
+ SENSITIVE = []
1119
+ include Aws::Structure
1120
+ end
1121
+
1088
1122
  # The OpenSearch reserved instances recommendation details.
1089
1123
  #
1090
1124
  # @!attribute [rw] configuration
@@ -1759,7 +1793,7 @@ module Aws::CostOptimizationHub
1759
1793
  # @return [Types::ComputeSavingsPlans]
1760
1794
  #
1761
1795
  # @!attribute [rw] sage_maker_savings_plans
1762
- # The SageMaker Savings Plans recommendation details.
1796
+ # The SageMaker AI Savings Plans recommendation details.
1763
1797
  # @return [Types::SageMakerSavingsPlans]
1764
1798
  #
1765
1799
  # @!attribute [rw] rds_db_instance
@@ -55,7 +55,7 @@ module Aws::CostOptimizationHub
55
55
  autoload :EndpointProvider, 'aws-sdk-costoptimizationhub/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-costoptimizationhub/endpoints'
57
57
 
58
- GEM_VERSION = '1.20.0'
58
+ GEM_VERSION = '1.21.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -108,7 +108,7 @@ module Aws
108
108
  def estimated_monthly_cost: () -> ::Float
109
109
  def implementation_effort: () -> ("VeryLow" | "Low" | "Medium" | "High" | "VeryHigh")
110
110
  def restart_needed: () -> bool
111
- def action_type: () -> ("Rightsize" | "Stop" | "Upgrade" | "PurchaseSavingsPlans" | "PurchaseReservedInstances" | "MigrateToGraviton" | "Delete")
111
+ def action_type: () -> ("Rightsize" | "Stop" | "Upgrade" | "PurchaseSavingsPlans" | "PurchaseReservedInstances" | "MigrateToGraviton" | "Delete" | "ScaleIn")
112
112
  def rollback_possible: () -> bool
113
113
  def current_resource_details: () -> Types::ResourceDetails
114
114
  def recommended_resource_details: () -> Types::ResourceDetails
@@ -153,7 +153,7 @@ module Aws
153
153
  account_ids: Array[::String]?,
154
154
  regions: Array[::String]?,
155
155
  resource_types: Array[("Ec2Instance" | "LambdaFunction" | "EbsVolume" | "EcsService" | "Ec2AutoScalingGroup" | "Ec2InstanceSavingsPlans" | "ComputeSavingsPlans" | "SageMakerSavingsPlans" | "Ec2ReservedInstances" | "RdsReservedInstances" | "OpenSearchReservedInstances" | "RedshiftReservedInstances" | "ElastiCacheReservedInstances" | "RdsDbInstanceStorage" | "RdsDbInstance")]?,
156
- action_types: Array[("Rightsize" | "Stop" | "Upgrade" | "PurchaseSavingsPlans" | "PurchaseReservedInstances" | "MigrateToGraviton" | "Delete")]?,
156
+ action_types: Array[("Rightsize" | "Stop" | "Upgrade" | "PurchaseSavingsPlans" | "PurchaseReservedInstances" | "MigrateToGraviton" | "Delete" | "ScaleIn")]?,
157
157
  tags: Array[
158
158
  {
159
159
  key: ::String?,
@@ -185,7 +185,7 @@ module Aws
185
185
  account_ids: Array[::String]?,
186
186
  regions: Array[::String]?,
187
187
  resource_types: Array[("Ec2Instance" | "LambdaFunction" | "EbsVolume" | "EcsService" | "Ec2AutoScalingGroup" | "Ec2InstanceSavingsPlans" | "ComputeSavingsPlans" | "SageMakerSavingsPlans" | "Ec2ReservedInstances" | "RdsReservedInstances" | "OpenSearchReservedInstances" | "RedshiftReservedInstances" | "ElastiCacheReservedInstances" | "RdsDbInstanceStorage" | "RdsDbInstance")]?,
188
- action_types: Array[("Rightsize" | "Stop" | "Upgrade" | "PurchaseSavingsPlans" | "PurchaseReservedInstances" | "MigrateToGraviton" | "Delete")]?,
188
+ action_types: Array[("Rightsize" | "Stop" | "Upgrade" | "PurchaseSavingsPlans" | "PurchaseReservedInstances" | "MigrateToGraviton" | "Delete" | "ScaleIn")]?,
189
189
  tags: Array[
190
190
  {
191
191
  key: ::String?,
data/sig/types.rbs CHANGED
@@ -75,6 +75,9 @@ module Aws::CostOptimizationHub
75
75
 
76
76
  class Ec2AutoScalingGroupConfiguration
77
77
  attr_accessor instance: Types::InstanceConfiguration
78
+ attr_accessor mixed_instances: ::Array[Types::MixedInstanceConfiguration]
79
+ attr_accessor type: ("SingleInstanceType" | "MixedInstanceTypes")
80
+ attr_accessor allocation_strategy: ("Prioritized" | "LowestPrice")
78
81
  SENSITIVE: []
79
82
  end
80
83
 
@@ -179,7 +182,7 @@ module Aws::CostOptimizationHub
179
182
  attr_accessor account_ids: ::Array[::String]
180
183
  attr_accessor regions: ::Array[::String]
181
184
  attr_accessor resource_types: ::Array[("Ec2Instance" | "LambdaFunction" | "EbsVolume" | "EcsService" | "Ec2AutoScalingGroup" | "Ec2InstanceSavingsPlans" | "ComputeSavingsPlans" | "SageMakerSavingsPlans" | "Ec2ReservedInstances" | "RdsReservedInstances" | "OpenSearchReservedInstances" | "RedshiftReservedInstances" | "ElastiCacheReservedInstances" | "RdsDbInstanceStorage" | "RdsDbInstance")]
182
- attr_accessor action_types: ::Array[("Rightsize" | "Stop" | "Upgrade" | "PurchaseSavingsPlans" | "PurchaseReservedInstances" | "MigrateToGraviton" | "Delete")]
185
+ attr_accessor action_types: ::Array[("Rightsize" | "Stop" | "Upgrade" | "PurchaseSavingsPlans" | "PurchaseReservedInstances" | "MigrateToGraviton" | "Delete" | "ScaleIn")]
183
186
  attr_accessor tags: ::Array[Types::Tag]
184
187
  attr_accessor resource_ids: ::Array[::String]
185
188
  attr_accessor resource_arns: ::Array[::String]
@@ -220,7 +223,7 @@ module Aws::CostOptimizationHub
220
223
  attr_accessor estimated_monthly_cost: ::Float
221
224
  attr_accessor implementation_effort: ("VeryLow" | "Low" | "Medium" | "High" | "VeryHigh")
222
225
  attr_accessor restart_needed: bool
223
- attr_accessor action_type: ("Rightsize" | "Stop" | "Upgrade" | "PurchaseSavingsPlans" | "PurchaseReservedInstances" | "MigrateToGraviton" | "Delete")
226
+ attr_accessor action_type: ("Rightsize" | "Stop" | "Upgrade" | "PurchaseSavingsPlans" | "PurchaseReservedInstances" | "MigrateToGraviton" | "Delete" | "ScaleIn")
224
227
  attr_accessor rollback_possible: bool
225
228
  attr_accessor current_resource_details: Types::ResourceDetails
226
229
  attr_accessor recommended_resource_details: Types::ResourceDetails
@@ -298,6 +301,11 @@ module Aws::CostOptimizationHub
298
301
  SENSITIVE: []
299
302
  end
300
303
 
304
+ class MixedInstanceConfiguration
305
+ attr_accessor type: ::String
306
+ SENSITIVE: []
307
+ end
308
+
301
309
  class OpenSearchReservedInstances
302
310
  attr_accessor configuration: Types::OpenSearchReservedInstancesConfiguration
303
311
  attr_accessor cost_calculation: Types::ReservedInstancesCostCalculation
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-costoptimizationhub
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.20.0
4
+ version: 1.21.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: 2025-01-15 00:00:00.000000000 Z
11
+ date: 2025-02-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core