aws-sdk-ec2 1.640.0 → 1.641.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: e471de46987e02eae8cfe362ab410f872238bb6c54f1ee2f9421c10b428a148c
4
- data.tar.gz: d9ec1b18cd80263883f70c53f673c0dfc51871a441eefd5e4f7123cb732bcc6d
3
+ metadata.gz: c301b08f3593cd56f7d5083683765a0a5a33634c72e3db82404e55e4a85263c5
4
+ data.tar.gz: 4ee3bd6889488406cb2a184377e68eef5c62730f4a310114bb40f3103cc50767
5
5
  SHA512:
6
- metadata.gz: 80be683c87996a2db91cbadb28387b3938fbf3f77649cabadc3e4b3f8bf2c965200cce029437aa7709e80af0483bee84f8b4c2599f946d2d7226047a76fac6e1
7
- data.tar.gz: db2acd4d254d7efc3c091ce13fa623d2f41c2a386811b40bf81e472d5e0d3753d6176735518c4c505ec61b45372ef4653a3a0394dda8b9a8e058b1d20f06a3b3
6
+ metadata.gz: bf8c40510fcb2942edc8dd516a3751cebfbea514dfe059c643e5c4c096641037abc5191eff53411cc1e491bac174352367dcc19742ab0b6bf4a794ad051548cd
7
+ data.tar.gz: de30b947694b7ae6af35dd69a146a3db2b5f5bce2fd56ae603ef470a7570cece82d3118f2b0474043badbd0c26e07b95d5f1019eed8fa2994acf3987fd3c02e2
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.641.0 (2026-08-27)
5
+ ------------------
6
+
7
+ * Feature - EC2 allows AMI owners to define compatible instance types on their AMIs, blocking RunInstances calls automatically for launches on non-permitted instance types.
8
+
4
9
  1.640.0 (2026-08-26)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.640.0
1
+ 1.641.0
@@ -31792,6 +31792,9 @@ module Aws::EC2
31792
31792
  # * `block-device-mapping.encrypted` - A Boolean that indicates whether
31793
31793
  # the Amazon EBS volume is encrypted.
31794
31794
  #
31795
+ # * `boot-mode` – The boot mode of the image (`legacy-bios` \| `uefi` \|
31796
+ # `uefi-preferred`).
31797
+ #
31795
31798
  # * `creation-date` - The time when the image was created, in the ISO
31796
31799
  # 8601 format in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ), for
31797
31800
  # example, `2021-09-29T11:04:43.305Z`. You can use a wildcard (`*`),
@@ -31837,6 +31840,18 @@ module Aws::EC2
31837
31840
  #
31838
31841
  # * `image-type` - The image type (`machine` \| `kernel` \| `ramdisk`).
31839
31842
  #
31843
+ # * `instance-type-specification.supported-instance-type` – The instance
31844
+ # types that are compatible with the AMI, as specified by the AMI
31845
+ # owner. Values can be individual instance types (for example,
31846
+ # `t3.micro`) or wildcard patterns that match multiple instance types
31847
+ # (for example, `t3.*`).
31848
+ #
31849
+ # * `instance-type-specification.unsupported-instance-type` – The
31850
+ # instance types that are not compatible with the AMI, as specified by
31851
+ # the AMI owner. Values can be individual instance types (for example,
31852
+ # `t3.micro`) or wildcard patterns that match multiple instance types
31853
+ # (for example, `t3.*`).
31854
+ #
31840
31855
  # * `is-public` - A Boolean that indicates whether the image is public.
31841
31856
  #
31842
31857
  # * `kernel-id` - The kernel ID.
@@ -32036,6 +32051,10 @@ module Aws::EC2
32036
32051
  # resp.images[0].image_watermarks[0].source_image_id #=> String
32037
32052
  # resp.images[0].image_watermarks[0].source_image_creation_time #=> Time
32038
32053
  # resp.images[0].image_watermarks[0].watermark_creation_time #=> Time
32054
+ # resp.images[0].instance_type_specification.supported_instance_types #=> Array
32055
+ # resp.images[0].instance_type_specification.supported_instance_types[0].instance_type #=> String
32056
+ # resp.images[0].instance_type_specification.unsupported_instance_types #=> Array
32057
+ # resp.images[0].instance_type_specification.unsupported_instance_types[0].instance_type #=> String
32039
32058
  # resp.images[0].image_id #=> String
32040
32059
  # resp.images[0].image_location #=> String
32041
32060
  # resp.images[0].state #=> String, one of "pending", "available", "invalid", "deregistered", "transient", "failed", "error", "disabled"
@@ -70905,6 +70924,82 @@ module Aws::EC2
70905
70924
  req.send_request(options)
70906
70925
  end
70907
70926
 
70927
+ # Replaces or removes the instance type specification for an AMI. The
70928
+ # instance type specification defines which instance types are
70929
+ # compatible with the AMI.
70930
+ #
70931
+ # When you launch an instance using [RunInstances][1], Amazon EC2
70932
+ # validates the requested instance type against the AMI's instance type
70933
+ # specification. If the instance type is not compatible, the request
70934
+ # fails with an `InvalidParameterCombination` error.
70935
+ #
70936
+ # You can specify supported instance types, unsupported instance types,
70937
+ # or both. The evaluation logic is as follows:
70938
+ #
70939
+ # * No specification set – all instance types are allowed.
70940
+ #
70941
+ # * Only `UnsupportedInstanceTypes` set – All instance types are allowed
70942
+ # except those that match the unsupported list.
70943
+ #
70944
+ # * `SupportedInstanceTypes` set – The instance type must match the
70945
+ # supported list and must not match the unsupported list.
70946
+ #
70947
+ # Instance type entries support wildcard patterns using `*` (for
70948
+ # example, `t3.*` matches all t3 sizes).
70949
+ #
70950
+ # To remove an existing instance type specification, omit the
70951
+ # `InstanceTypeSpecification` parameter or set it to `null`.
70952
+ #
70953
+ # To set the instance type specification, you must be the AMI owner. You
70954
+ # cannot set an instance type specification on an AMI that is listed in
70955
+ # Amazon Web Services Marketplace, and you cannot list an AMI in Amazon
70956
+ # Web Services Marketplace if it has an instance type specification set.
70957
+ #
70958
+ #
70959
+ #
70960
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html
70961
+ #
70962
+ # @option params [required, String] :image_id
70963
+ # The ID of the AMI.
70964
+ #
70965
+ # @option params [Types::InstanceTypeSpecificationRequest] :instance_type_specification
70966
+ # The instance type specification to set on the AMI. Omit this parameter
70967
+ # to remove the existing instance type specification.
70968
+ #
70969
+ # @option params [Boolean] :dry_run
70970
+ # Checks whether you have the required permissions for the action,
70971
+ # without actually making the request, and provides an error response.
70972
+ # If you have the required permissions, the error response is
70973
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
70974
+ #
70975
+ # @return [Types::ReplaceImageInstanceTypeSpecificationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
70976
+ #
70977
+ # * {Types::ReplaceImageInstanceTypeSpecificationResult#return_value #return_value} => Boolean
70978
+ #
70979
+ # @example Request syntax with placeholder values
70980
+ #
70981
+ # resp = client.replace_image_instance_type_specification({
70982
+ # image_id: "ImageId", # required
70983
+ # instance_type_specification: {
70984
+ # supported_instance_types: ["InstanceTypeItemRequest"],
70985
+ # unsupported_instance_types: ["InstanceTypeItemRequest"],
70986
+ # },
70987
+ # dry_run: false,
70988
+ # })
70989
+ #
70990
+ # @example Response structure
70991
+ #
70992
+ # resp.return_value #=> Boolean
70993
+ #
70994
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceImageInstanceTypeSpecification AWS API Documentation
70995
+ #
70996
+ # @overload replace_image_instance_type_specification(params = {})
70997
+ # @param [Hash] params ({})
70998
+ def replace_image_instance_type_specification(params = {}, options = {})
70999
+ req = build_request(:replace_image_instance_type_specification, params)
71000
+ req.send_request(options)
71001
+ end
71002
+
70908
71003
  # Changes which network ACL a subnet is associated with. By default when
70909
71004
  # you create a subnet, it's automatically associated with the default
70910
71005
  # network ACL. For more information, see [Network ACLs][1] in the
@@ -77197,7 +77292,7 @@ module Aws::EC2
77197
77292
  tracer: tracer
77198
77293
  )
77199
77294
  context[:gem_name] = 'aws-sdk-ec2'
77200
- context[:gem_version] = '1.640.0'
77295
+ context[:gem_version] = '1.641.0'
77201
77296
  Seahorse::Client::Request.new(handlers, context)
77202
77297
  end
77203
77298
 
@@ -2354,9 +2354,13 @@ module Aws::EC2
2354
2354
  InstanceTypeInfoFromInstanceRequirements = Shapes::StructureShape.new(name: 'InstanceTypeInfoFromInstanceRequirements')
2355
2355
  InstanceTypeInfoFromInstanceRequirementsSet = Shapes::ListShape.new(name: 'InstanceTypeInfoFromInstanceRequirementsSet')
2356
2356
  InstanceTypeInfoList = Shapes::ListShape.new(name: 'InstanceTypeInfoList')
2357
+ InstanceTypeItem = Shapes::StructureShape.new(name: 'InstanceTypeItem')
2358
+ InstanceTypeItemRequest = Shapes::StringShape.new(name: 'InstanceTypeItemRequest')
2357
2359
  InstanceTypeList = Shapes::ListShape.new(name: 'InstanceTypeList')
2358
2360
  InstanceTypeOffering = Shapes::StructureShape.new(name: 'InstanceTypeOffering')
2359
2361
  InstanceTypeOfferingsList = Shapes::ListShape.new(name: 'InstanceTypeOfferingsList')
2362
+ InstanceTypeSpecification = Shapes::StructureShape.new(name: 'InstanceTypeSpecification')
2363
+ InstanceTypeSpecificationRequest = Shapes::StructureShape.new(name: 'InstanceTypeSpecificationRequest')
2360
2364
  InstanceTypes = Shapes::ListShape.new(name: 'InstanceTypes')
2361
2365
  InstanceTypesList = Shapes::ListShape.new(name: 'InstanceTypesList')
2362
2366
  InstanceUsage = Shapes::StructureShape.new(name: 'InstanceUsage')
@@ -3331,6 +3335,8 @@ module Aws::EC2
3331
3335
  ReplaceIamInstanceProfileAssociationResult = Shapes::StructureShape.new(name: 'ReplaceIamInstanceProfileAssociationResult')
3332
3336
  ReplaceImageCriteriaInAllowedImagesSettingsRequest = Shapes::StructureShape.new(name: 'ReplaceImageCriteriaInAllowedImagesSettingsRequest')
3333
3337
  ReplaceImageCriteriaInAllowedImagesSettingsResult = Shapes::StructureShape.new(name: 'ReplaceImageCriteriaInAllowedImagesSettingsResult')
3338
+ ReplaceImageInstanceTypeSpecificationRequest = Shapes::StructureShape.new(name: 'ReplaceImageInstanceTypeSpecificationRequest')
3339
+ ReplaceImageInstanceTypeSpecificationResult = Shapes::StructureShape.new(name: 'ReplaceImageInstanceTypeSpecificationResult')
3334
3340
  ReplaceNetworkAclAssociationRequest = Shapes::StructureShape.new(name: 'ReplaceNetworkAclAssociationRequest')
3335
3341
  ReplaceNetworkAclAssociationResult = Shapes::StructureShape.new(name: 'ReplaceNetworkAclAssociationResult')
3336
3342
  ReplaceNetworkAclEntryRequest = Shapes::StructureShape.new(name: 'ReplaceNetworkAclEntryRequest')
@@ -3773,6 +3779,8 @@ module Aws::EC2
3773
3779
  SupportedAdditionalProcessorFeature = Shapes::StringShape.new(name: 'SupportedAdditionalProcessorFeature')
3774
3780
  SupportedAdditionalProcessorFeatureList = Shapes::ListShape.new(name: 'SupportedAdditionalProcessorFeatureList')
3775
3781
  SupportedInRegion = Shapes::BooleanShape.new(name: 'SupportedInRegion')
3782
+ SupportedInstanceTypeRequestSet = Shapes::ListShape.new(name: 'SupportedInstanceTypeRequestSet')
3783
+ SupportedInstanceTypeSet = Shapes::ListShape.new(name: 'SupportedInstanceTypeSet')
3776
3784
  SupportedIpAddressTypes = Shapes::ListShape.new(name: 'SupportedIpAddressTypes')
3777
3785
  SupportedRegionDetail = Shapes::StructureShape.new(name: 'SupportedRegionDetail')
3778
3786
  SupportedRegionSet = Shapes::ListShape.new(name: 'SupportedRegionSet')
@@ -4001,6 +4009,8 @@ module Aws::EC2
4001
4009
  UnsuccessfulItemSet = Shapes::ListShape.new(name: 'UnsuccessfulItemSet')
4002
4010
  UnsuccessfulSuppressionResponseObject = Shapes::StructureShape.new(name: 'UnsuccessfulSuppressionResponseObject')
4003
4011
  UnsuccessfulSuppressionResponseSet = Shapes::ListShape.new(name: 'UnsuccessfulSuppressionResponseSet')
4012
+ UnsupportedInstanceTypeRequestSet = Shapes::ListShape.new(name: 'UnsupportedInstanceTypeRequestSet')
4013
+ UnsupportedInstanceTypeSet = Shapes::ListShape.new(name: 'UnsupportedInstanceTypeSet')
4004
4014
  UpdateCapacityManagerMonitoredTagKeysRequest = Shapes::StructureShape.new(name: 'UpdateCapacityManagerMonitoredTagKeysRequest')
4005
4015
  UpdateCapacityManagerMonitoredTagKeysResult = Shapes::StructureShape.new(name: 'UpdateCapacityManagerMonitoredTagKeysResult')
4006
4016
  UpdateCapacityManagerOrganizationsAccessRequest = Shapes::StructureShape.new(name: 'UpdateCapacityManagerOrganizationsAccessRequest')
@@ -12932,6 +12942,7 @@ module Aws::EC2
12932
12942
  Image.add_member(:free_tier_eligible, Shapes::ShapeRef.new(shape: Boolean, location_name: "freeTierEligible"))
12933
12943
  Image.add_member(:public_ssm_parameter_name, Shapes::ShapeRef.new(shape: String, location_name: "publicSsmParameterName"))
12934
12944
  Image.add_member(:image_watermarks, Shapes::ShapeRef.new(shape: ImageWatermarkList, location_name: "imageWatermarkSet"))
12945
+ Image.add_member(:instance_type_specification, Shapes::ShapeRef.new(shape: InstanceTypeSpecification, location_name: "instanceTypeSpecification"))
12935
12946
  Image.add_member(:image_id, Shapes::ShapeRef.new(shape: String, location_name: "imageId"))
12936
12947
  Image.add_member(:image_location, Shapes::ShapeRef.new(shape: String, location_name: "imageLocation"))
12937
12948
  Image.add_member(:state, Shapes::ShapeRef.new(shape: ImageState, location_name: "imageState"))
@@ -13912,6 +13923,9 @@ module Aws::EC2
13912
13923
 
13913
13924
  InstanceTypeInfoList.member = Shapes::ShapeRef.new(shape: InstanceTypeInfo, location_name: "item")
13914
13925
 
13926
+ InstanceTypeItem.add_member(:instance_type, Shapes::ShapeRef.new(shape: String, location_name: "instanceType"))
13927
+ InstanceTypeItem.struct_class = Types::InstanceTypeItem
13928
+
13915
13929
  InstanceTypeList.member = Shapes::ShapeRef.new(shape: InstanceType)
13916
13930
 
13917
13931
  InstanceTypeOffering.add_member(:instance_type, Shapes::ShapeRef.new(shape: InstanceType, location_name: "instanceType"))
@@ -13921,6 +13935,14 @@ module Aws::EC2
13921
13935
 
13922
13936
  InstanceTypeOfferingsList.member = Shapes::ShapeRef.new(shape: InstanceTypeOffering, location_name: "item")
13923
13937
 
13938
+ InstanceTypeSpecification.add_member(:supported_instance_types, Shapes::ShapeRef.new(shape: SupportedInstanceTypeSet, location_name: "supportedInstanceTypeSet"))
13939
+ InstanceTypeSpecification.add_member(:unsupported_instance_types, Shapes::ShapeRef.new(shape: UnsupportedInstanceTypeSet, location_name: "unsupportedInstanceTypeSet"))
13940
+ InstanceTypeSpecification.struct_class = Types::InstanceTypeSpecification
13941
+
13942
+ InstanceTypeSpecificationRequest.add_member(:supported_instance_types, Shapes::ShapeRef.new(shape: SupportedInstanceTypeRequestSet, location_name: "SupportedInstanceType"))
13943
+ InstanceTypeSpecificationRequest.add_member(:unsupported_instance_types, Shapes::ShapeRef.new(shape: UnsupportedInstanceTypeRequestSet, location_name: "UnsupportedInstanceType"))
13944
+ InstanceTypeSpecificationRequest.struct_class = Types::InstanceTypeSpecificationRequest
13945
+
13924
13946
  InstanceTypes.member = Shapes::ShapeRef.new(shape: String)
13925
13947
 
13926
13948
  InstanceTypesList.member = Shapes::ShapeRef.new(shape: String, location_name: "item")
@@ -17433,6 +17455,14 @@ module Aws::EC2
17433
17455
  ReplaceImageCriteriaInAllowedImagesSettingsResult.add_member(:return_value, Shapes::ShapeRef.new(shape: Boolean, location_name: "return"))
17434
17456
  ReplaceImageCriteriaInAllowedImagesSettingsResult.struct_class = Types::ReplaceImageCriteriaInAllowedImagesSettingsResult
17435
17457
 
17458
+ ReplaceImageInstanceTypeSpecificationRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageId, required: true, location_name: "ImageId"))
17459
+ ReplaceImageInstanceTypeSpecificationRequest.add_member(:instance_type_specification, Shapes::ShapeRef.new(shape: InstanceTypeSpecificationRequest, location_name: "InstanceTypeSpecification"))
17460
+ ReplaceImageInstanceTypeSpecificationRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
17461
+ ReplaceImageInstanceTypeSpecificationRequest.struct_class = Types::ReplaceImageInstanceTypeSpecificationRequest
17462
+
17463
+ ReplaceImageInstanceTypeSpecificationResult.add_member(:return_value, Shapes::ShapeRef.new(shape: Boolean, location_name: "returnValue"))
17464
+ ReplaceImageInstanceTypeSpecificationResult.struct_class = Types::ReplaceImageInstanceTypeSpecificationResult
17465
+
17436
17466
  ReplaceNetworkAclAssociationRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
17437
17467
  ReplaceNetworkAclAssociationRequest.add_member(:association_id, Shapes::ShapeRef.new(shape: NetworkAclAssociationId, required: true, location_name: "associationId"))
17438
17468
  ReplaceNetworkAclAssociationRequest.add_member(:network_acl_id, Shapes::ShapeRef.new(shape: NetworkAclId, required: true, location_name: "networkAclId"))
@@ -19160,6 +19190,10 @@ module Aws::EC2
19160
19190
 
19161
19191
  SupportedAdditionalProcessorFeatureList.member = Shapes::ShapeRef.new(shape: SupportedAdditionalProcessorFeature, location_name: "item")
19162
19192
 
19193
+ SupportedInstanceTypeRequestSet.member = Shapes::ShapeRef.new(shape: InstanceTypeItemRequest, location_name: "Item")
19194
+
19195
+ SupportedInstanceTypeSet.member = Shapes::ShapeRef.new(shape: InstanceTypeItem, location_name: "item")
19196
+
19163
19197
  SupportedIpAddressTypes.member = Shapes::ShapeRef.new(shape: ServiceConnectivityType, location_name: "item")
19164
19198
 
19165
19199
  SupportedRegionDetail.add_member(:region, Shapes::ShapeRef.new(shape: String, location_name: "region"))
@@ -19920,6 +19954,10 @@ module Aws::EC2
19920
19954
 
19921
19955
  UnsuccessfulSuppressionResponseSet.member = Shapes::ShapeRef.new(shape: UnsuccessfulSuppressionResponseObject, location_name: "item")
19922
19956
 
19957
+ UnsupportedInstanceTypeRequestSet.member = Shapes::ShapeRef.new(shape: InstanceTypeItemRequest, location_name: "Item")
19958
+
19959
+ UnsupportedInstanceTypeSet.member = Shapes::ShapeRef.new(shape: InstanceTypeItem, location_name: "item")
19960
+
19923
19961
  UpdateCapacityManagerMonitoredTagKeysRequest.add_member(:activate_tag_keys, Shapes::ShapeRef.new(shape: ValueStringList, location_name: "ActivateTagKey"))
19924
19962
  UpdateCapacityManagerMonitoredTagKeysRequest.add_member(:deactivate_tag_keys, Shapes::ShapeRef.new(shape: ValueStringList, location_name: "DeactivateTagKey"))
19925
19963
  UpdateCapacityManagerMonitoredTagKeysRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
@@ -27780,6 +27818,14 @@ module Aws::EC2
27780
27818
  o.output = Shapes::ShapeRef.new(shape: ReplaceImageCriteriaInAllowedImagesSettingsResult)
27781
27819
  end)
27782
27820
 
27821
+ api.add_operation(:replace_image_instance_type_specification, Seahorse::Model::Operation.new.tap do |o|
27822
+ o.name = "ReplaceImageInstanceTypeSpecification"
27823
+ o.http_method = "POST"
27824
+ o.http_request_uri = "/"
27825
+ o.input = Shapes::ShapeRef.new(shape: ReplaceImageInstanceTypeSpecificationRequest)
27826
+ o.output = Shapes::ShapeRef.new(shape: ReplaceImageInstanceTypeSpecificationResult)
27827
+ end)
27828
+
27783
27829
  api.add_operation(:replace_network_acl_association, Seahorse::Model::Operation.new.tap do |o|
27784
27830
  o.name = "ReplaceNetworkAclAssociation"
27785
27831
  o.http_method = "POST"
@@ -277,6 +277,13 @@ module Aws::EC2
277
277
  data[:image_watermarks]
278
278
  end
279
279
 
280
+ # The instance type specification for the AMI, which defines which
281
+ # instance types are compatible with this image.
282
+ # @return [Types::InstanceTypeSpecification]
283
+ def instance_type_specification
284
+ data[:instance_type_specification]
285
+ end
286
+
280
287
  # The location of the AMI.
281
288
  # @return [String]
282
289
  def image_location
@@ -2476,6 +2476,9 @@ module Aws::EC2
2476
2476
  # * `block-device-mapping.encrypted` - A Boolean that indicates whether
2477
2477
  # the Amazon EBS volume is encrypted.
2478
2478
  #
2479
+ # * `boot-mode` – The boot mode of the image (`legacy-bios` \| `uefi` \|
2480
+ # `uefi-preferred`).
2481
+ #
2479
2482
  # * `creation-date` - The time when the image was created, in the ISO
2480
2483
  # 8601 format in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ), for
2481
2484
  # example, `2021-09-29T11:04:43.305Z`. You can use a wildcard (`*`),
@@ -2521,6 +2524,18 @@ module Aws::EC2
2521
2524
  #
2522
2525
  # * `image-type` - The image type (`machine` \| `kernel` \| `ramdisk`).
2523
2526
  #
2527
+ # * `instance-type-specification.supported-instance-type` – The instance
2528
+ # types that are compatible with the AMI, as specified by the AMI
2529
+ # owner. Values can be individual instance types (for example,
2530
+ # `t3.micro`) or wildcard patterns that match multiple instance types
2531
+ # (for example, `t3.*`).
2532
+ #
2533
+ # * `instance-type-specification.unsupported-instance-type` – The
2534
+ # instance types that are not compatible with the AMI, as specified by
2535
+ # the AMI owner. Values can be individual instance types (for example,
2536
+ # `t3.micro`) or wildcard patterns that match multiple instance types
2537
+ # (for example, `t3.*`).
2538
+ #
2524
2539
  # * `is-public` - A Boolean that indicates whether the image is public.
2525
2540
  #
2526
2541
  # * `kernel-id` - The kernel ID.
@@ -27101,6 +27101,9 @@ module Aws::EC2
27101
27101
  # * `block-device-mapping.encrypted` - A Boolean that indicates
27102
27102
  # whether the Amazon EBS volume is encrypted.
27103
27103
  #
27104
+ # * `boot-mode` – The boot mode of the image (`legacy-bios` \| `uefi`
27105
+ # \| `uefi-preferred`).
27106
+ #
27104
27107
  # * `creation-date` - The time when the image was created, in the ISO
27105
27108
  # 8601 format in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ), for
27106
27109
  # example, `2021-09-29T11:04:43.305Z`. You can use a wildcard (`*`),
@@ -27147,6 +27150,18 @@ module Aws::EC2
27147
27150
  # * `image-type` - The image type (`machine` \| `kernel` \|
27148
27151
  # `ramdisk`).
27149
27152
  #
27153
+ # * `instance-type-specification.supported-instance-type` – The
27154
+ # instance types that are compatible with the AMI, as specified by
27155
+ # the AMI owner. Values can be individual instance types (for
27156
+ # example, `t3.micro`) or wildcard patterns that match multiple
27157
+ # instance types (for example, `t3.*`).
27158
+ #
27159
+ # * `instance-type-specification.unsupported-instance-type` – The
27160
+ # instance types that are not compatible with the AMI, as specified
27161
+ # by the AMI owner. Values can be individual instance types (for
27162
+ # example, `t3.micro`) or wildcard patterns that match multiple
27163
+ # instance types (for example, `t3.*`).
27164
+ #
27150
27165
  # * `is-public` - A Boolean that indicates whether the image is
27151
27166
  # public.
27152
27167
  #
@@ -51150,6 +51165,11 @@ module Aws::EC2
51150
51165
  # The watermarks attached to the AMI.
51151
51166
  # @return [Array<Types::ImageWatermark>]
51152
51167
  #
51168
+ # @!attribute [rw] instance_type_specification
51169
+ # The instance type specification for the AMI, which defines which
51170
+ # instance types are compatible with this image.
51171
+ # @return [Types::InstanceTypeSpecification]
51172
+ #
51153
51173
  # @!attribute [rw] image_id
51154
51174
  # The ID of the AMI.
51155
51175
  # @return [String]
@@ -51234,6 +51254,7 @@ module Aws::EC2
51234
51254
  :free_tier_eligible,
51235
51255
  :public_ssm_parameter_name,
51236
51256
  :image_watermarks,
51257
+ :instance_type_specification,
51237
51258
  :image_id,
51238
51259
  :image_location,
51239
51260
  :state,
@@ -56982,6 +57003,22 @@ module Aws::EC2
56982
57003
  include Aws::Structure
56983
57004
  end
56984
57005
 
57006
+ # An instance type name or wildcard pattern in an instance type
57007
+ # specification.
57008
+ #
57009
+ # @!attribute [rw] instance_type
57010
+ # The instance type or wildcard pattern (for example, `t3.*` or
57011
+ # `m5.large`).
57012
+ # @return [String]
57013
+ #
57014
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceTypeItem AWS API Documentation
57015
+ #
57016
+ class InstanceTypeItem < Struct.new(
57017
+ :instance_type)
57018
+ SENSITIVE = []
57019
+ include Aws::Structure
57020
+ end
57021
+
56985
57022
  # The instance types offered.
56986
57023
  #
56987
57024
  # @!attribute [rw] instance_type
@@ -57013,6 +57050,61 @@ module Aws::EC2
57013
57050
  include Aws::Structure
57014
57051
  end
57015
57052
 
57053
+ # Describes the instance type compatibility rules for an AMI, including
57054
+ # lists of supported and unsupported instance type patterns.
57055
+ #
57056
+ # @!attribute [rw] supported_instance_types
57057
+ # The instance types that the AMI supports.
57058
+ # @return [Array<Types::InstanceTypeItem>]
57059
+ #
57060
+ # @!attribute [rw] unsupported_instance_types
57061
+ # The instance types that the AMI does not support.
57062
+ # @return [Array<Types::InstanceTypeItem>]
57063
+ #
57064
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceTypeSpecification AWS API Documentation
57065
+ #
57066
+ class InstanceTypeSpecification < Struct.new(
57067
+ :supported_instance_types,
57068
+ :unsupported_instance_types)
57069
+ SENSITIVE = []
57070
+ include Aws::Structure
57071
+ end
57072
+
57073
+ # The instance type specification for an AMI, which contains lists of
57074
+ # supported and unsupported instance types that define which instance
57075
+ # types are compatible with the AMI.
57076
+ #
57077
+ # @!attribute [rw] supported_instance_types
57078
+ # The instance types that the AMI supports. You can specify instance
57079
+ # type names or use wildcard patterns (for example, `t3.*`).
57080
+ #
57081
+ # Constraints: Maximum 100 entries. Each entry must be 1-24 characters
57082
+ # and match the pattern `^[A-Za-z0-9_.*-]+$`. Consecutive wildcard
57083
+ # characters (`**`) are not allowed. Entries must be unique within
57084
+ # each list and across both lists; duplicate entries cause the request
57085
+ # to fail.
57086
+ # @return [Array<String>]
57087
+ #
57088
+ # @!attribute [rw] unsupported_instance_types
57089
+ # The instance types that the AMI does not support. You can specify
57090
+ # instance type names or use wildcard patterns (for example, `t3.*`).
57091
+ #
57092
+ # Constraints: Maximum 100 entries. Each entry must be 1-24 characters
57093
+ # and match the pattern `^[A-Za-z0-9_.*-]+$`. Consecutive wildcard
57094
+ # characters (`**`) are not allowed. Entries must be unique within
57095
+ # each list and across both lists; duplicate entries cause the request
57096
+ # to fail.
57097
+ # @return [Array<String>]
57098
+ #
57099
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceTypeSpecificationRequest AWS API Documentation
57100
+ #
57101
+ class InstanceTypeSpecificationRequest < Struct.new(
57102
+ :supported_instance_types,
57103
+ :unsupported_instance_types)
57104
+ SENSITIVE = []
57105
+ include Aws::Structure
57106
+ end
57107
+
57016
57108
  # Information about the Capacity Reservation usage.
57017
57109
  #
57018
57110
  # @!attribute [rw] account_id
@@ -75772,6 +75864,45 @@ module Aws::EC2
75772
75864
  include Aws::Structure
75773
75865
  end
75774
75866
 
75867
+ # @!attribute [rw] image_id
75868
+ # The ID of the AMI.
75869
+ # @return [String]
75870
+ #
75871
+ # @!attribute [rw] instance_type_specification
75872
+ # The instance type specification to set on the AMI. Omit this
75873
+ # parameter to remove the existing instance type specification.
75874
+ # @return [Types::InstanceTypeSpecificationRequest]
75875
+ #
75876
+ # @!attribute [rw] dry_run
75877
+ # Checks whether you have the required permissions for the action,
75878
+ # without actually making the request, and provides an error response.
75879
+ # If you have the required permissions, the error response is
75880
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
75881
+ # @return [Boolean]
75882
+ #
75883
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceImageInstanceTypeSpecificationRequest AWS API Documentation
75884
+ #
75885
+ class ReplaceImageInstanceTypeSpecificationRequest < Struct.new(
75886
+ :image_id,
75887
+ :instance_type_specification,
75888
+ :dry_run)
75889
+ SENSITIVE = []
75890
+ include Aws::Structure
75891
+ end
75892
+
75893
+ # @!attribute [rw] return_value
75894
+ # Returns `true` if the request succeeds; otherwise, it returns an
75895
+ # error.
75896
+ # @return [Boolean]
75897
+ #
75898
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceImageInstanceTypeSpecificationResult AWS API Documentation
75899
+ #
75900
+ class ReplaceImageInstanceTypeSpecificationResult < Struct.new(
75901
+ :return_value)
75902
+ SENSITIVE = []
75903
+ include Aws::Structure
75904
+ end
75905
+
75775
75906
  # @!attribute [rw] dry_run
75776
75907
  # Checks whether you have the required permissions for the action,
75777
75908
  # without actually making the request, and provides an error response.
data/lib/aws-sdk-ec2.rb CHANGED
@@ -78,7 +78,7 @@ module Aws::EC2
78
78
  autoload :VpcPeeringConnection, 'aws-sdk-ec2/vpc_peering_connection'
79
79
  autoload :VpcAddress, 'aws-sdk-ec2/vpc_address'
80
80
 
81
- GEM_VERSION = '1.640.0'
81
+ GEM_VERSION = '1.641.0'
82
82
 
83
83
  end
84
84
 
data/sig/client.rbs CHANGED
@@ -13794,6 +13794,21 @@ module Aws
13794
13794
  ) -> _ReplaceImageCriteriaInAllowedImagesSettingsResponseSuccess
13795
13795
  | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ReplaceImageCriteriaInAllowedImagesSettingsResponseSuccess
13796
13796
 
13797
+ interface _ReplaceImageInstanceTypeSpecificationResponseSuccess
13798
+ include ::Seahorse::Client::_ResponseSuccess[Types::ReplaceImageInstanceTypeSpecificationResult]
13799
+ def return_value: () -> bool
13800
+ end
13801
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Client.html#replace_image_instance_type_specification-instance_method
13802
+ def replace_image_instance_type_specification: (
13803
+ image_id: ::String,
13804
+ ?instance_type_specification: {
13805
+ supported_instance_types: Array[::String]?,
13806
+ unsupported_instance_types: Array[::String]?
13807
+ },
13808
+ ?dry_run: bool
13809
+ ) -> _ReplaceImageInstanceTypeSpecificationResponseSuccess
13810
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ReplaceImageInstanceTypeSpecificationResponseSuccess
13811
+
13797
13812
  interface _ReplaceNetworkAclAssociationResponseSuccess
13798
13813
  include ::Seahorse::Client::_ResponseSuccess[Types::ReplaceNetworkAclAssociationResult]
13799
13814
  def new_association_id: () -> ::String
data/sig/image.rbs CHANGED
@@ -99,6 +99,9 @@ module Aws
99
99
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Image.html#image_watermarks-instance_method
100
100
  def image_watermarks: () -> ::Array[Types::ImageWatermark]
101
101
 
102
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Image.html#instance_type_specification-instance_method
103
+ def instance_type_specification: () -> Types::InstanceTypeSpecification
104
+
102
105
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Image.html#image_location-instance_method
103
106
  def image_location: () -> ::String
104
107
 
data/sig/types.rbs CHANGED
@@ -11321,6 +11321,7 @@ module Aws::EC2
11321
11321
  attr_accessor free_tier_eligible: bool
11322
11322
  attr_accessor public_ssm_parameter_name: ::String
11323
11323
  attr_accessor image_watermarks: ::Array[Types::ImageWatermark]
11324
+ attr_accessor instance_type_specification: Types::InstanceTypeSpecification
11324
11325
  attr_accessor image_id: ::String
11325
11326
  attr_accessor image_location: ::String
11326
11327
  attr_accessor state: ("pending" | "available" | "invalid" | "deregistered" | "transient" | "failed" | "error" | "disabled")
@@ -12360,6 +12361,11 @@ module Aws::EC2
12360
12361
  SENSITIVE: []
12361
12362
  end
12362
12363
 
12364
+ class InstanceTypeItem
12365
+ attr_accessor instance_type: ::String
12366
+ SENSITIVE: []
12367
+ end
12368
+
12363
12369
  class InstanceTypeOffering
12364
12370
  attr_accessor instance_type: ("a1.medium" | "a1.large" | "a1.xlarge" | "a1.2xlarge" | "a1.4xlarge" | "a1.metal" | "c1.medium" | "c1.xlarge" | "c3.large" | "c3.xlarge" | "c3.2xlarge" | "c3.4xlarge" | "c3.8xlarge" | "c4.large" | "c4.xlarge" | "c4.2xlarge" | "c4.4xlarge" | "c4.8xlarge" | "c5.large" | "c5.xlarge" | "c5.2xlarge" | "c5.4xlarge" | "c5.9xlarge" | "c5.12xlarge" | "c5.18xlarge" | "c5.24xlarge" | "c5.metal" | "c5a.large" | "c5a.xlarge" | "c5a.2xlarge" | "c5a.4xlarge" | "c5a.8xlarge" | "c5a.12xlarge" | "c5a.16xlarge" | "c5a.24xlarge" | "c5ad.large" | "c5ad.xlarge" | "c5ad.2xlarge" | "c5ad.4xlarge" | "c5ad.8xlarge" | "c5ad.12xlarge" | "c5ad.16xlarge" | "c5ad.24xlarge" | "c5d.large" | "c5d.xlarge" | "c5d.2xlarge" | "c5d.4xlarge" | "c5d.9xlarge" | "c5d.12xlarge" | "c5d.18xlarge" | "c5d.24xlarge" | "c5d.metal" | "c5n.large" | "c5n.xlarge" | "c5n.2xlarge" | "c5n.4xlarge" | "c5n.9xlarge" | "c5n.18xlarge" | "c5n.metal" | "c6g.medium" | "c6g.large" | "c6g.xlarge" | "c6g.2xlarge" | "c6g.4xlarge" | "c6g.8xlarge" | "c6g.12xlarge" | "c6g.16xlarge" | "c6g.metal" | "c6gd.medium" | "c6gd.large" | "c6gd.xlarge" | "c6gd.2xlarge" | "c6gd.4xlarge" | "c6gd.8xlarge" | "c6gd.12xlarge" | "c6gd.16xlarge" | "c6gd.metal" | "c6gn.medium" | "c6gn.large" | "c6gn.xlarge" | "c6gn.2xlarge" | "c6gn.4xlarge" | "c6gn.8xlarge" | "c6gn.12xlarge" | "c6gn.16xlarge" | "c6i.large" | "c6i.xlarge" | "c6i.2xlarge" | "c6i.4xlarge" | "c6i.8xlarge" | "c6i.12xlarge" | "c6i.16xlarge" | "c6i.24xlarge" | "c6i.32xlarge" | "c6i.metal" | "cc1.4xlarge" | "cc2.8xlarge" | "cg1.4xlarge" | "cr1.8xlarge" | "d2.xlarge" | "d2.2xlarge" | "d2.4xlarge" | "d2.8xlarge" | "d3.xlarge" | "d3.2xlarge" | "d3.4xlarge" | "d3.8xlarge" | "d3en.xlarge" | "d3en.2xlarge" | "d3en.4xlarge" | "d3en.6xlarge" | "d3en.8xlarge" | "d3en.12xlarge" | "dl1.24xlarge" | "f1.2xlarge" | "f1.4xlarge" | "f1.16xlarge" | "g2.2xlarge" | "g2.8xlarge" | "g3.4xlarge" | "g3.8xlarge" | "g3.16xlarge" | "g3s.xlarge" | "g4ad.xlarge" | "g4ad.2xlarge" | "g4ad.4xlarge" | "g4ad.8xlarge" | "g4ad.16xlarge" | "g4dn.xlarge" | "g4dn.2xlarge" | "g4dn.4xlarge" | "g4dn.8xlarge" | "g4dn.12xlarge" | "g4dn.16xlarge" | "g4dn.metal" | "g5.xlarge" | "g5.2xlarge" | "g5.4xlarge" | "g5.8xlarge" | "g5.12xlarge" | "g5.16xlarge" | "g5.24xlarge" | "g5.48xlarge" | "g5g.xlarge" | "g5g.2xlarge" | "g5g.4xlarge" | "g5g.8xlarge" | "g5g.16xlarge" | "g5g.metal" | "hi1.4xlarge" | "hpc6a.48xlarge" | "hs1.8xlarge" | "h1.2xlarge" | "h1.4xlarge" | "h1.8xlarge" | "h1.16xlarge" | "i2.xlarge" | "i2.2xlarge" | "i2.4xlarge" | "i2.8xlarge" | "i3.large" | "i3.xlarge" | "i3.2xlarge" | "i3.4xlarge" | "i3.8xlarge" | "i3.16xlarge" | "i3.metal" | "i3en.large" | "i3en.xlarge" | "i3en.2xlarge" | "i3en.3xlarge" | "i3en.6xlarge" | "i3en.12xlarge" | "i3en.24xlarge" | "i3en.metal" | "im4gn.large" | "im4gn.xlarge" | "im4gn.2xlarge" | "im4gn.4xlarge" | "im4gn.8xlarge" | "im4gn.16xlarge" | "inf1.xlarge" | "inf1.2xlarge" | "inf1.6xlarge" | "inf1.24xlarge" | "is4gen.medium" | "is4gen.large" | "is4gen.xlarge" | "is4gen.2xlarge" | "is4gen.4xlarge" | "is4gen.8xlarge" | "m1.small" | "m1.medium" | "m1.large" | "m1.xlarge" | "m2.xlarge" | "m2.2xlarge" | "m2.4xlarge" | "m3.medium" | "m3.large" | "m3.xlarge" | "m3.2xlarge" | "m4.large" | "m4.xlarge" | "m4.2xlarge" | "m4.4xlarge" | "m4.10xlarge" | "m4.16xlarge" | "m5.large" | "m5.xlarge" | "m5.2xlarge" | "m5.4xlarge" | "m5.8xlarge" | "m5.12xlarge" | "m5.16xlarge" | "m5.24xlarge" | "m5.metal" | "m5a.large" | "m5a.xlarge" | "m5a.2xlarge" | "m5a.4xlarge" | "m5a.8xlarge" | "m5a.12xlarge" | "m5a.16xlarge" | "m5a.24xlarge" | "m5ad.large" | "m5ad.xlarge" | "m5ad.2xlarge" | "m5ad.4xlarge" | "m5ad.8xlarge" | "m5ad.12xlarge" | "m5ad.16xlarge" | "m5ad.24xlarge" | "m5d.large" | "m5d.xlarge" | "m5d.2xlarge" | "m5d.4xlarge" | "m5d.8xlarge" | "m5d.12xlarge" | "m5d.16xlarge" | "m5d.24xlarge" | "m5d.metal" | "m5dn.large" | "m5dn.xlarge" | "m5dn.2xlarge" | "m5dn.4xlarge" | "m5dn.8xlarge" | "m5dn.12xlarge" | "m5dn.16xlarge" | "m5dn.24xlarge" | "m5dn.metal" | "m5n.large" | "m5n.xlarge" | "m5n.2xlarge" | "m5n.4xlarge" | "m5n.8xlarge" | "m5n.12xlarge" | "m5n.16xlarge" | "m5n.24xlarge" | "m5n.metal" | "m5zn.large" | "m5zn.xlarge" | "m5zn.2xlarge" | "m5zn.3xlarge" | "m5zn.6xlarge" | "m5zn.12xlarge" | "m5zn.metal" | "m6a.large" | "m6a.xlarge" | "m6a.2xlarge" | "m6a.4xlarge" | "m6a.8xlarge" | "m6a.12xlarge" | "m6a.16xlarge" | "m6a.24xlarge" | "m6a.32xlarge" | "m6a.48xlarge" | "m6g.metal" | "m6g.medium" | "m6g.large" | "m6g.xlarge" | "m6g.2xlarge" | "m6g.4xlarge" | "m6g.8xlarge" | "m6g.12xlarge" | "m6g.16xlarge" | "m6gd.metal" | "m6gd.medium" | "m6gd.large" | "m6gd.xlarge" | "m6gd.2xlarge" | "m6gd.4xlarge" | "m6gd.8xlarge" | "m6gd.12xlarge" | "m6gd.16xlarge" | "m6i.large" | "m6i.xlarge" | "m6i.2xlarge" | "m6i.4xlarge" | "m6i.8xlarge" | "m6i.12xlarge" | "m6i.16xlarge" | "m6i.24xlarge" | "m6i.32xlarge" | "m6i.metal" | "mac1.metal" | "p2.xlarge" | "p2.8xlarge" | "p2.16xlarge" | "p3.2xlarge" | "p3.8xlarge" | "p3.16xlarge" | "p3dn.24xlarge" | "p4d.24xlarge" | "r3.large" | "r3.xlarge" | "r3.2xlarge" | "r3.4xlarge" | "r3.8xlarge" | "r4.large" | "r4.xlarge" | "r4.2xlarge" | "r4.4xlarge" | "r4.8xlarge" | "r4.16xlarge" | "r5.large" | "r5.xlarge" | "r5.2xlarge" | "r5.4xlarge" | "r5.8xlarge" | "r5.12xlarge" | "r5.16xlarge" | "r5.24xlarge" | "r5.metal" | "r5a.large" | "r5a.xlarge" | "r5a.2xlarge" | "r5a.4xlarge" | "r5a.8xlarge" | "r5a.12xlarge" | "r5a.16xlarge" | "r5a.24xlarge" | "r5ad.large" | "r5ad.xlarge" | "r5ad.2xlarge" | "r5ad.4xlarge" | "r5ad.8xlarge" | "r5ad.12xlarge" | "r5ad.16xlarge" | "r5ad.24xlarge" | "r5b.large" | "r5b.xlarge" | "r5b.2xlarge" | "r5b.4xlarge" | "r5b.8xlarge" | "r5b.12xlarge" | "r5b.16xlarge" | "r5b.24xlarge" | "r5b.metal" | "r5d.large" | "r5d.xlarge" | "r5d.2xlarge" | "r5d.4xlarge" | "r5d.8xlarge" | "r5d.12xlarge" | "r5d.16xlarge" | "r5d.24xlarge" | "r5d.metal" | "r5dn.large" | "r5dn.xlarge" | "r5dn.2xlarge" | "r5dn.4xlarge" | "r5dn.8xlarge" | "r5dn.12xlarge" | "r5dn.16xlarge" | "r5dn.24xlarge" | "r5dn.metal" | "r5n.large" | "r5n.xlarge" | "r5n.2xlarge" | "r5n.4xlarge" | "r5n.8xlarge" | "r5n.12xlarge" | "r5n.16xlarge" | "r5n.24xlarge" | "r5n.metal" | "r6g.medium" | "r6g.large" | "r6g.xlarge" | "r6g.2xlarge" | "r6g.4xlarge" | "r6g.8xlarge" | "r6g.12xlarge" | "r6g.16xlarge" | "r6g.metal" | "r6gd.medium" | "r6gd.large" | "r6gd.xlarge" | "r6gd.2xlarge" | "r6gd.4xlarge" | "r6gd.8xlarge" | "r6gd.12xlarge" | "r6gd.16xlarge" | "r6gd.metal" | "r6i.large" | "r6i.xlarge" | "r6i.2xlarge" | "r6i.4xlarge" | "r6i.8xlarge" | "r6i.12xlarge" | "r6i.16xlarge" | "r6i.24xlarge" | "r6i.32xlarge" | "r6i.metal" | "t1.micro" | "t2.nano" | "t2.micro" | "t2.small" | "t2.medium" | "t2.large" | "t2.xlarge" | "t2.2xlarge" | "t3.nano" | "t3.micro" | "t3.small" | "t3.medium" | "t3.large" | "t3.xlarge" | "t3.2xlarge" | "t3a.nano" | "t3a.micro" | "t3a.small" | "t3a.medium" | "t3a.large" | "t3a.xlarge" | "t3a.2xlarge" | "t4g.nano" | "t4g.micro" | "t4g.small" | "t4g.medium" | "t4g.large" | "t4g.xlarge" | "t4g.2xlarge" | "u-6tb1.56xlarge" | "u-6tb1.112xlarge" | "u-9tb1.112xlarge" | "u-12tb1.112xlarge" | "u-6tb1.metal" | "u-9tb1.metal" | "u-12tb1.metal" | "u-18tb1.metal" | "u-24tb1.metal" | "vt1.3xlarge" | "vt1.6xlarge" | "vt1.24xlarge" | "x1.16xlarge" | "x1.32xlarge" | "x1e.xlarge" | "x1e.2xlarge" | "x1e.4xlarge" | "x1e.8xlarge" | "x1e.16xlarge" | "x1e.32xlarge" | "x2iezn.2xlarge" | "x2iezn.4xlarge" | "x2iezn.6xlarge" | "x2iezn.8xlarge" | "x2iezn.12xlarge" | "x2iezn.metal" | "x2gd.medium" | "x2gd.large" | "x2gd.xlarge" | "x2gd.2xlarge" | "x2gd.4xlarge" | "x2gd.8xlarge" | "x2gd.12xlarge" | "x2gd.16xlarge" | "x2gd.metal" | "z1d.large" | "z1d.xlarge" | "z1d.2xlarge" | "z1d.3xlarge" | "z1d.6xlarge" | "z1d.12xlarge" | "z1d.metal" | "x2idn.16xlarge" | "x2idn.24xlarge" | "x2idn.32xlarge" | "x2iedn.xlarge" | "x2iedn.2xlarge" | "x2iedn.4xlarge" | "x2iedn.8xlarge" | "x2iedn.16xlarge" | "x2iedn.24xlarge" | "x2iedn.32xlarge" | "c6a.large" | "c6a.xlarge" | "c6a.2xlarge" | "c6a.4xlarge" | "c6a.8xlarge" | "c6a.12xlarge" | "c6a.16xlarge" | "c6a.24xlarge" | "c6a.32xlarge" | "c6a.48xlarge" | "c6a.metal" | "m6a.metal" | "i4i.large" | "i4i.xlarge" | "i4i.2xlarge" | "i4i.4xlarge" | "i4i.8xlarge" | "i4i.16xlarge" | "i4i.32xlarge" | "i4i.metal" | "x2idn.metal" | "x2iedn.metal" | "c7g.medium" | "c7g.large" | "c7g.xlarge" | "c7g.2xlarge" | "c7g.4xlarge" | "c7g.8xlarge" | "c7g.12xlarge" | "c7g.16xlarge" | "mac2.metal" | "c6id.large" | "c6id.xlarge" | "c6id.2xlarge" | "c6id.4xlarge" | "c6id.8xlarge" | "c6id.12xlarge" | "c6id.16xlarge" | "c6id.24xlarge" | "c6id.32xlarge" | "c6id.metal" | "m6id.large" | "m6id.xlarge" | "m6id.2xlarge" | "m6id.4xlarge" | "m6id.8xlarge" | "m6id.12xlarge" | "m6id.16xlarge" | "m6id.24xlarge" | "m6id.32xlarge" | "m6id.metal" | "r6id.large" | "r6id.xlarge" | "r6id.2xlarge" | "r6id.4xlarge" | "r6id.8xlarge" | "r6id.12xlarge" | "r6id.16xlarge" | "r6id.24xlarge" | "r6id.32xlarge" | "r6id.metal" | "r6a.large" | "r6a.xlarge" | "r6a.2xlarge" | "r6a.4xlarge" | "r6a.8xlarge" | "r6a.12xlarge" | "r6a.16xlarge" | "r6a.24xlarge" | "r6a.32xlarge" | "r6a.48xlarge" | "r6a.metal" | "p4de.24xlarge" | "u-3tb1.56xlarge" | "u-18tb1.112xlarge" | "u-24tb1.112xlarge" | "trn1.2xlarge" | "trn1.32xlarge" | "hpc6id.32xlarge" | "c6in.large" | "c6in.xlarge" | "c6in.2xlarge" | "c6in.4xlarge" | "c6in.8xlarge" | "c6in.12xlarge" | "c6in.16xlarge" | "c6in.24xlarge" | "c6in.32xlarge" | "m6in.large" | "m6in.xlarge" | "m6in.2xlarge" | "m6in.4xlarge" | "m6in.8xlarge" | "m6in.12xlarge" | "m6in.16xlarge" | "m6in.24xlarge" | "m6in.32xlarge" | "m6idn.large" | "m6idn.xlarge" | "m6idn.2xlarge" | "m6idn.4xlarge" | "m6idn.8xlarge" | "m6idn.12xlarge" | "m6idn.16xlarge" | "m6idn.24xlarge" | "m6idn.32xlarge" | "r6in.large" | "r6in.xlarge" | "r6in.2xlarge" | "r6in.4xlarge" | "r6in.8xlarge" | "r6in.12xlarge" | "r6in.16xlarge" | "r6in.24xlarge" | "r6in.32xlarge" | "r6idn.large" | "r6idn.xlarge" | "r6idn.2xlarge" | "r6idn.4xlarge" | "r6idn.8xlarge" | "r6idn.12xlarge" | "r6idn.16xlarge" | "r6idn.24xlarge" | "r6idn.32xlarge" | "c7g.metal" | "m7g.medium" | "m7g.large" | "m7g.xlarge" | "m7g.2xlarge" | "m7g.4xlarge" | "m7g.8xlarge" | "m7g.12xlarge" | "m7g.16xlarge" | "m7g.metal" | "r7g.medium" | "r7g.large" | "r7g.xlarge" | "r7g.2xlarge" | "r7g.4xlarge" | "r7g.8xlarge" | "r7g.12xlarge" | "r7g.16xlarge" | "r7g.metal" | "c6in.metal" | "m6in.metal" | "m6idn.metal" | "r6in.metal" | "r6idn.metal" | "inf2.xlarge" | "inf2.8xlarge" | "inf2.24xlarge" | "inf2.48xlarge" | "trn1n.32xlarge" | "i4g.large" | "i4g.xlarge" | "i4g.2xlarge" | "i4g.4xlarge" | "i4g.8xlarge" | "i4g.16xlarge" | "hpc7g.4xlarge" | "hpc7g.8xlarge" | "hpc7g.16xlarge" | "c7gn.medium" | "c7gn.large" | "c7gn.xlarge" | "c7gn.2xlarge" | "c7gn.4xlarge" | "c7gn.8xlarge" | "c7gn.12xlarge" | "c7gn.16xlarge" | "p5.48xlarge" | "m7i.large" | "m7i.xlarge" | "m7i.2xlarge" | "m7i.4xlarge" | "m7i.8xlarge" | "m7i.12xlarge" | "m7i.16xlarge" | "m7i.24xlarge" | "m7i.48xlarge" | "m7i-flex.large" | "m7i-flex.xlarge" | "m7i-flex.2xlarge" | "m7i-flex.4xlarge" | "m7i-flex.8xlarge" | "m7a.medium" | "m7a.large" | "m7a.xlarge" | "m7a.2xlarge" | "m7a.4xlarge" | "m7a.8xlarge" | "m7a.12xlarge" | "m7a.16xlarge" | "m7a.24xlarge" | "m7a.32xlarge" | "m7a.48xlarge" | "m7a.metal-48xl" | "hpc7a.12xlarge" | "hpc7a.24xlarge" | "hpc7a.48xlarge" | "hpc7a.96xlarge" | "c7gd.medium" | "c7gd.large" | "c7gd.xlarge" | "c7gd.2xlarge" | "c7gd.4xlarge" | "c7gd.8xlarge" | "c7gd.12xlarge" | "c7gd.16xlarge" | "m7gd.medium" | "m7gd.large" | "m7gd.xlarge" | "m7gd.2xlarge" | "m7gd.4xlarge" | "m7gd.8xlarge" | "m7gd.12xlarge" | "m7gd.16xlarge" | "r7gd.medium" | "r7gd.large" | "r7gd.xlarge" | "r7gd.2xlarge" | "r7gd.4xlarge" | "r7gd.8xlarge" | "r7gd.12xlarge" | "r7gd.16xlarge" | "r7a.medium" | "r7a.large" | "r7a.xlarge" | "r7a.2xlarge" | "r7a.4xlarge" | "r7a.8xlarge" | "r7a.12xlarge" | "r7a.16xlarge" | "r7a.24xlarge" | "r7a.32xlarge" | "r7a.48xlarge" | "c7i.large" | "c7i.xlarge" | "c7i.2xlarge" | "c7i.4xlarge" | "c7i.8xlarge" | "c7i.12xlarge" | "c7i.16xlarge" | "c7i.24xlarge" | "c7i.48xlarge" | "mac2-m2pro.metal" | "r7iz.large" | "r7iz.xlarge" | "r7iz.2xlarge" | "r7iz.4xlarge" | "r7iz.8xlarge" | "r7iz.12xlarge" | "r7iz.16xlarge" | "r7iz.32xlarge" | "c7a.medium" | "c7a.large" | "c7a.xlarge" | "c7a.2xlarge" | "c7a.4xlarge" | "c7a.8xlarge" | "c7a.12xlarge" | "c7a.16xlarge" | "c7a.24xlarge" | "c7a.32xlarge" | "c7a.48xlarge" | "c7a.metal-48xl" | "r7a.metal-48xl" | "r7i.large" | "r7i.xlarge" | "r7i.2xlarge" | "r7i.4xlarge" | "r7i.8xlarge" | "r7i.12xlarge" | "r7i.16xlarge" | "r7i.24xlarge" | "r7i.48xlarge" | "dl2q.24xlarge" | "mac2-m2.metal" | "i4i.12xlarge" | "i4i.24xlarge" | "c7i.metal-24xl" | "c7i.metal-48xl" | "m7i.metal-24xl" | "m7i.metal-48xl" | "r7i.metal-24xl" | "r7i.metal-48xl" | "r7iz.metal-16xl" | "r7iz.metal-32xl" | "c7gd.metal" | "m7gd.metal" | "r7gd.metal" | "g6.xlarge" | "g6.2xlarge" | "g6.4xlarge" | "g6.8xlarge" | "g6.12xlarge" | "g6.16xlarge" | "g6.24xlarge" | "g6.48xlarge" | "gr6.4xlarge" | "gr6.8xlarge" | "c7i-flex.large" | "c7i-flex.xlarge" | "c7i-flex.2xlarge" | "c7i-flex.4xlarge" | "c7i-flex.8xlarge" | "u7i-12tb.224xlarge" | "u7in-16tb.224xlarge" | "u7in-24tb.224xlarge" | "u7in-32tb.224xlarge" | "u7ib-12tb.224xlarge" | "c7gn.metal" | "r8g.medium" | "r8g.large" | "r8g.xlarge" | "r8g.2xlarge" | "r8g.4xlarge" | "r8g.8xlarge" | "r8g.12xlarge" | "r8g.16xlarge" | "r8g.24xlarge" | "r8g.48xlarge" | "r8g.metal-24xl" | "r8g.metal-48xl" | "mac2-m1ultra.metal" | "g6e.xlarge" | "g6e.2xlarge" | "g6e.4xlarge" | "g6e.8xlarge" | "g6e.12xlarge" | "g6e.16xlarge" | "g6e.24xlarge" | "g6e.48xlarge" | "c8g.medium" | "c8g.large" | "c8g.xlarge" | "c8g.2xlarge" | "c8g.4xlarge" | "c8g.8xlarge" | "c8g.12xlarge" | "c8g.16xlarge" | "c8g.24xlarge" | "c8g.48xlarge" | "c8g.metal-24xl" | "c8g.metal-48xl" | "m8g.medium" | "m8g.large" | "m8g.xlarge" | "m8g.2xlarge" | "m8g.4xlarge" | "m8g.8xlarge" | "m8g.12xlarge" | "m8g.16xlarge" | "m8g.24xlarge" | "m8g.48xlarge" | "m8g.metal-24xl" | "m8g.metal-48xl" | "x8g.medium" | "x8g.large" | "x8g.xlarge" | "x8g.2xlarge" | "x8g.4xlarge" | "x8g.8xlarge" | "x8g.12xlarge" | "x8g.16xlarge" | "x8g.24xlarge" | "x8g.48xlarge" | "x8g.metal-24xl" | "x8g.metal-48xl" | "i7ie.large" | "i7ie.xlarge" | "i7ie.2xlarge" | "i7ie.3xlarge" | "i7ie.6xlarge" | "i7ie.12xlarge" | "i7ie.18xlarge" | "i7ie.24xlarge" | "i7ie.48xlarge" | "i8g.large" | "i8g.xlarge" | "i8g.2xlarge" | "i8g.4xlarge" | "i8g.8xlarge" | "i8g.12xlarge" | "i8g.16xlarge" | "i8g.24xlarge" | "i8g.metal-24xl" | "u7i-6tb.112xlarge" | "u7i-8tb.112xlarge" | "u7inh-32tb.480xlarge" | "p5e.48xlarge" | "p5en.48xlarge" | "f2.12xlarge" | "f2.48xlarge" | "trn2.48xlarge" | "c7i-flex.12xlarge" | "c7i-flex.16xlarge" | "m7i-flex.12xlarge" | "m7i-flex.16xlarge" | "i7ie.metal-24xl" | "i7ie.metal-48xl" | "i8g.48xlarge" | "c8gd.medium" | "c8gd.large" | "c8gd.xlarge" | "c8gd.2xlarge" | "c8gd.4xlarge" | "c8gd.8xlarge" | "c8gd.12xlarge" | "c8gd.16xlarge" | "c8gd.24xlarge" | "c8gd.48xlarge" | "c8gd.metal-24xl" | "c8gd.metal-48xl" | "i7i.large" | "i7i.xlarge" | "i7i.2xlarge" | "i7i.4xlarge" | "i7i.8xlarge" | "i7i.12xlarge" | "i7i.16xlarge" | "i7i.24xlarge" | "i7i.48xlarge" | "i7i.metal-24xl" | "i7i.metal-48xl" | "p6-b200.48xlarge" | "m8gd.medium" | "m8gd.large" | "m8gd.xlarge" | "m8gd.2xlarge" | "m8gd.4xlarge" | "m8gd.8xlarge" | "m8gd.12xlarge" | "m8gd.16xlarge" | "m8gd.24xlarge" | "m8gd.48xlarge" | "m8gd.metal-24xl" | "m8gd.metal-48xl" | "r8gd.medium" | "r8gd.large" | "r8gd.xlarge" | "r8gd.2xlarge" | "r8gd.4xlarge" | "r8gd.8xlarge" | "r8gd.12xlarge" | "r8gd.16xlarge" | "r8gd.24xlarge" | "r8gd.48xlarge" | "r8gd.metal-24xl" | "r8gd.metal-48xl" | "c8gn.medium" | "c8gn.large" | "c8gn.xlarge" | "c8gn.2xlarge" | "c8gn.4xlarge" | "c8gn.8xlarge" | "c8gn.12xlarge" | "c8gn.16xlarge" | "c8gn.24xlarge" | "c8gn.48xlarge" | "c8gn.metal-24xl" | "c8gn.metal-48xl" | "f2.6xlarge" | "p6e-gb200.36xlarge" | "g6f.large" | "g6f.xlarge" | "g6f.2xlarge" | "g6f.4xlarge" | "gr6f.4xlarge" | "p5.4xlarge" | "r8i.large" | "r8i.xlarge" | "r8i.2xlarge" | "r8i.4xlarge" | "r8i.8xlarge" | "r8i.12xlarge" | "r8i.16xlarge" | "r8i.24xlarge" | "r8i.32xlarge" | "r8i.48xlarge" | "r8i.96xlarge" | "r8i.metal-48xl" | "r8i.metal-96xl" | "r8i-flex.large" | "r8i-flex.xlarge" | "r8i-flex.2xlarge" | "r8i-flex.4xlarge" | "r8i-flex.8xlarge" | "r8i-flex.12xlarge" | "r8i-flex.16xlarge" | "m8i.large" | "m8i.xlarge" | "m8i.2xlarge" | "m8i.4xlarge" | "m8i.8xlarge" | "m8i.12xlarge" | "m8i.16xlarge" | "m8i.24xlarge" | "m8i.32xlarge" | "m8i.48xlarge" | "m8i.96xlarge" | "m8i.metal-48xl" | "m8i.metal-96xl" | "m8i-flex.large" | "m8i-flex.xlarge" | "m8i-flex.2xlarge" | "m8i-flex.4xlarge" | "m8i-flex.8xlarge" | "m8i-flex.12xlarge" | "m8i-flex.16xlarge" | "i8ge.large" | "i8ge.xlarge" | "i8ge.2xlarge" | "i8ge.3xlarge" | "i8ge.6xlarge" | "i8ge.12xlarge" | "i8ge.18xlarge" | "i8ge.24xlarge" | "i8ge.48xlarge" | "i8ge.metal-24xl" | "i8ge.metal-48xl" | "mac-m4.metal" | "mac-m4pro.metal" | "r8gn.medium" | "r8gn.large" | "r8gn.xlarge" | "r8gn.2xlarge" | "r8gn.4xlarge" | "r8gn.8xlarge" | "r8gn.12xlarge" | "r8gn.16xlarge" | "r8gn.24xlarge" | "r8gn.48xlarge" | "r8gn.metal-24xl" | "r8gn.metal-48xl" | "c8i.large" | "c8i.xlarge" | "c8i.2xlarge" | "c8i.4xlarge" | "c8i.8xlarge" | "c8i.12xlarge" | "c8i.16xlarge" | "c8i.24xlarge" | "c8i.32xlarge" | "c8i.48xlarge" | "c8i.96xlarge" | "c8i.metal-48xl" | "c8i.metal-96xl" | "c8i-flex.large" | "c8i-flex.xlarge" | "c8i-flex.2xlarge" | "c8i-flex.4xlarge" | "c8i-flex.8xlarge" | "c8i-flex.12xlarge" | "c8i-flex.16xlarge" | "r8gb.medium" | "r8gb.large" | "r8gb.xlarge" | "r8gb.2xlarge" | "r8gb.4xlarge" | "r8gb.8xlarge" | "r8gb.12xlarge" | "r8gb.16xlarge" | "r8gb.24xlarge" | "r8gb.metal-24xl" | "m8a.medium" | "m8a.large" | "m8a.xlarge" | "m8a.2xlarge" | "m8a.4xlarge" | "m8a.8xlarge" | "m8a.12xlarge" | "m8a.16xlarge" | "m8a.24xlarge" | "m8a.48xlarge" | "m8a.metal-24xl" | "m8a.metal-48xl" | "trn2.3xlarge" | "r8a.medium" | "r8a.large" | "r8a.xlarge" | "r8a.2xlarge" | "r8a.4xlarge" | "r8a.8xlarge" | "r8a.12xlarge" | "r8a.16xlarge" | "r8a.24xlarge" | "r8a.48xlarge" | "r8a.metal-24xl" | "r8a.metal-48xl" | "p6-b300.48xlarge" | "c8a.medium" | "c8a.large" | "c8a.xlarge" | "c8a.2xlarge" | "c8a.4xlarge" | "c8a.8xlarge" | "c8a.12xlarge" | "c8a.16xlarge" | "c8a.24xlarge" | "c8a.48xlarge" | "c8a.metal-24xl" | "c8a.metal-48xl" | "c8gb.12xlarge" | "c8gb.16xlarge" | "c8gb.24xlarge" | "c8gb.2xlarge" | "c8gb.4xlarge" | "c8gb.8xlarge" | "c8gb.large" | "c8gb.medium" | "c8gb.metal-24xl" | "c8gb.xlarge" | "c8gb.48xlarge" | "c8gb.metal-48xl" | "m8gb.12xlarge" | "m8gb.16xlarge" | "m8gb.24xlarge" | "m8gb.2xlarge" | "m8gb.4xlarge" | "m8gb.8xlarge" | "m8gb.large" | "m8gb.medium" | "m8gb.xlarge" | "m8gb.48xlarge" | "m8gb.metal-24xl" | "m8gb.metal-48xl" | "m8gn.12xlarge" | "m8gn.16xlarge" | "m8gn.24xlarge" | "m8gn.2xlarge" | "m8gn.48xlarge" | "m8gn.4xlarge" | "m8gn.8xlarge" | "m8gn.large" | "m8gn.medium" | "m8gn.xlarge" | "m8gn.metal-24xl" | "m8gn.metal-48xl" | "x8aedz.12xlarge" | "x8aedz.24xlarge" | "x8aedz.3xlarge" | "x8aedz.6xlarge" | "x8aedz.large" | "x8aedz.metal-12xl" | "x8aedz.metal-24xl" | "x8aedz.xlarge" | "m8azn.medium" | "m8azn.large" | "m8azn.xlarge" | "m8azn.3xlarge" | "m8azn.6xlarge" | "m8azn.12xlarge" | "m8azn.24xlarge" | "m8azn.metal-12xl" | "m8azn.metal-24xl" | "x8i.large" | "x8i.xlarge" | "x8i.2xlarge" | "x8i.4xlarge" | "x8i.8xlarge" | "x8i.12xlarge" | "x8i.16xlarge" | "x8i.24xlarge" | "x8i.32xlarge" | "x8i.48xlarge" | "x8i.64xlarge" | "x8i.96xlarge" | "x8i.metal-48xl" | "x8i.metal-96xl" | "mac-m4max.metal" | "g7e.2xlarge" | "g7e.4xlarge" | "g7e.8xlarge" | "g7e.12xlarge" | "g7e.24xlarge" | "g7e.48xlarge" | "r8id.large" | "r8id.xlarge" | "r8id.2xlarge" | "r8id.4xlarge" | "r8id.8xlarge" | "r8id.12xlarge" | "r8id.16xlarge" | "r8id.24xlarge" | "r8id.32xlarge" | "r8id.48xlarge" | "r8id.96xlarge" | "r8id.metal-48xl" | "r8id.metal-96xl" | "c8id.large" | "c8id.xlarge" | "c8id.2xlarge" | "c8id.4xlarge" | "c8id.8xlarge" | "c8id.12xlarge" | "c8id.16xlarge" | "c8id.24xlarge" | "c8id.32xlarge" | "c8id.48xlarge" | "c8id.96xlarge" | "c8id.metal-48xl" | "c8id.metal-96xl" | "m8id.large" | "m8id.xlarge" | "m8id.2xlarge" | "m8id.4xlarge" | "m8id.8xlarge" | "m8id.12xlarge" | "m8id.16xlarge" | "m8id.24xlarge" | "m8id.32xlarge" | "m8id.48xlarge" | "m8id.96xlarge" | "m8id.metal-48xl" | "m8id.metal-96xl" | "hpc8a.96xlarge" | "c8in.large" | "c8in.xlarge" | "c8in.2xlarge" | "c8in.4xlarge" | "c8in.8xlarge" | "c8in.12xlarge" | "c8in.16xlarge" | "c8in.24xlarge" | "c8in.32xlarge" | "c8in.48xlarge" | "c8in.96xlarge" | "c8in.metal-48xl" | "c8in.metal-96xl" | "c8ib.large" | "c8ib.xlarge" | "c8ib.2xlarge" | "c8ib.4xlarge" | "c8ib.8xlarge" | "c8ib.12xlarge" | "c8ib.16xlarge" | "c8ib.24xlarge" | "c8ib.32xlarge" | "c8ib.48xlarge" | "c8ib.96xlarge" | "c8ib.metal-48xl" | "c8ib.metal-96xl" | "r8in.large" | "r8in.xlarge" | "r8in.2xlarge" | "r8in.4xlarge" | "r8in.8xlarge" | "r8in.12xlarge" | "r8in.16xlarge" | "r8in.24xlarge" | "r8in.32xlarge" | "r8in.48xlarge" | "r8in.96xlarge" | "r8ib.large" | "r8ib.xlarge" | "r8ib.2xlarge" | "r8ib.4xlarge" | "r8ib.8xlarge" | "r8ib.12xlarge" | "r8ib.16xlarge" | "r8ib.24xlarge" | "r8ib.32xlarge" | "r8ib.48xlarge" | "r8ib.96xlarge" | "m8in.large" | "m8in.xlarge" | "m8in.2xlarge" | "m8in.4xlarge" | "m8in.8xlarge" | "m8in.12xlarge" | "m8in.16xlarge" | "m8in.24xlarge" | "m8in.32xlarge" | "m8in.48xlarge" | "m8in.96xlarge" | "m8ib.large" | "m8ib.xlarge" | "m8ib.2xlarge" | "m8ib.4xlarge" | "m8ib.8xlarge" | "m8ib.12xlarge" | "m8ib.16xlarge" | "m8ib.24xlarge" | "m8ib.32xlarge" | "m8ib.48xlarge" | "m8ib.96xlarge" | "m8ine.large" | "m8ine.xlarge" | "m8ine.2xlarge" | "m8ine.4xlarge" | "m8ine.8xlarge" | "m8ine.12xlarge" | "c8ine.large" | "c8ine.xlarge" | "c8ine.2xlarge" | "c8ine.4xlarge" | "c8ine.8xlarge" | "c8ine.12xlarge" | "m8idn.large" | "m8idn.xlarge" | "m8idn.2xlarge" | "m8idn.4xlarge" | "m8idn.8xlarge" | "m8idn.12xlarge" | "m8idn.16xlarge" | "m8idn.24xlarge" | "m8idn.32xlarge" | "m8idn.48xlarge" | "m8idn.96xlarge" | "r8idn.large" | "r8idn.xlarge" | "r8idn.2xlarge" | "r8idn.4xlarge" | "r8idn.8xlarge" | "r8idn.12xlarge" | "r8idn.16xlarge" | "r8idn.24xlarge" | "r8idn.32xlarge" | "r8idn.48xlarge" | "r8idn.96xlarge" | "m8idb.large" | "m8idb.xlarge" | "m8idb.2xlarge" | "m8idb.4xlarge" | "m8idb.8xlarge" | "m8idb.12xlarge" | "m8idb.16xlarge" | "m8idb.24xlarge" | "m8idb.32xlarge" | "m8idb.48xlarge" | "m8idb.96xlarge" | "r8idb.large" | "r8idb.xlarge" | "r8idb.2xlarge" | "r8idb.4xlarge" | "r8idb.8xlarge" | "r8idb.12xlarge" | "r8idb.16xlarge" | "r8idb.24xlarge" | "r8idb.32xlarge" | "r8idb.48xlarge" | "r8idb.96xlarge" | "mac-m3ultra.metal" | "m9g.large" | "m9g.xlarge" | "m9g.2xlarge" | "m9g.4xlarge" | "m9g.8xlarge" | "m9g.12xlarge" | "m9g.16xlarge" | "m9g.24xlarge" | "m9g.48xlarge" | "m9g.metal-24xl" | "m9g.metal-48xl" | "m9gd.large" | "m9gd.xlarge" | "m9gd.2xlarge" | "m9gd.4xlarge" | "m9gd.8xlarge" | "m9gd.12xlarge" | "m9gd.16xlarge" | "m9gd.24xlarge" | "m9gd.48xlarge" | "m9gd.metal-24xl" | "m9gd.metal-48xl" | "r8in.metal-48xl" | "r8in.metal-96xl" | "r8ib.metal-48xl" | "r8ib.metal-96xl" | "r8idn.metal-48xl" | "r8idn.metal-96xl" | "r8idb.metal-48xl" | "r8idb.metal-96xl" | "m8in.metal-48xl" | "m8in.metal-96xl" | "m8ib.metal-48xl" | "m8ib.metal-96xl" | "m8idn.metal-48xl" | "m8idn.metal-96xl" | "m8idb.metal-48xl" | "m8idb.metal-96xl" | "g7.2xlarge" | "g7.4xlarge" | "g7.8xlarge" | "g7.12xlarge" | "g7.24xlarge" | "g7.48xlarge" | "c9g.medium" | "c9g.large" | "c9g.xlarge" | "c9g.2xlarge" | "c9g.4xlarge" | "c9g.8xlarge" | "c9g.12xlarge" | "c9g.16xlarge" | "c9g.24xlarge" | "c9g.48xlarge" | "c9g.metal-48xl" | "c9gd.medium" | "c9gd.large" | "c9gd.xlarge" | "c9gd.2xlarge" | "c9gd.4xlarge" | "c9gd.8xlarge" | "c9gd.12xlarge" | "c9gd.16xlarge" | "c9gd.24xlarge" | "c9gd.48xlarge" | "c9gd.metal-48xl")
12365
12371
  attr_accessor location_type: ("region" | "availability-zone" | "availability-zone-id" | "outpost")
@@ -12367,6 +12373,18 @@ module Aws::EC2
12367
12373
  SENSITIVE: []
12368
12374
  end
12369
12375
 
12376
+ class InstanceTypeSpecification
12377
+ attr_accessor supported_instance_types: ::Array[Types::InstanceTypeItem]
12378
+ attr_accessor unsupported_instance_types: ::Array[Types::InstanceTypeItem]
12379
+ SENSITIVE: []
12380
+ end
12381
+
12382
+ class InstanceTypeSpecificationRequest
12383
+ attr_accessor supported_instance_types: ::Array[::String]
12384
+ attr_accessor unsupported_instance_types: ::Array[::String]
12385
+ SENSITIVE: []
12386
+ end
12387
+
12370
12388
  class InstanceUsage
12371
12389
  attr_accessor account_id: ::String
12372
12390
  attr_accessor used_instance_count: ::Integer
@@ -16425,6 +16443,18 @@ module Aws::EC2
16425
16443
  SENSITIVE: []
16426
16444
  end
16427
16445
 
16446
+ class ReplaceImageInstanceTypeSpecificationRequest
16447
+ attr_accessor image_id: ::String
16448
+ attr_accessor instance_type_specification: Types::InstanceTypeSpecificationRequest
16449
+ attr_accessor dry_run: bool
16450
+ SENSITIVE: []
16451
+ end
16452
+
16453
+ class ReplaceImageInstanceTypeSpecificationResult
16454
+ attr_accessor return_value: bool
16455
+ SENSITIVE: []
16456
+ end
16457
+
16428
16458
  class ReplaceNetworkAclAssociationRequest
16429
16459
  attr_accessor dry_run: bool
16430
16460
  attr_accessor association_id: ::String
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ec2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.640.0
4
+ version: 1.641.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services