aws-sdk-ec2 1.435.0 → 1.437.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: 779cb599a401a68a04d0efc084653d51f4bf831dd1a79f5006db87d471282c95
4
- data.tar.gz: 212feb1096c416c7d69c20f8ee5e3159b96f02a4e5eca70f37cdc4878c854ba4
3
+ metadata.gz: 40c47fff68d336fede9c2fb9aa4afa13ab340a0dd79af9c7c12a994a3fce3ff6
4
+ data.tar.gz: d95585f9d870ed53ae63a092ee79b34f798d5a2d6968bda9445be2ec6d237ccc
5
5
  SHA512:
6
- metadata.gz: cc3acf3987875ca91fbf3f566f4379b6299928f39e8ff182005b3825448c47a57098f10b72ac4bcefe2c43d4c33b8a13837b27e5919a1caead2256691cc19cef
7
- data.tar.gz: f202f5ec12614a589c8ad76f0651e333af51bc2cc2847dab6f5128df97ecc628a8bbe90f36a0265fcf597344baac1d61a9769b85824479c0f4228a3f634aecab
6
+ metadata.gz: 1fa159a1d5348ac11601d5407aeea9cac74fae1103faa356c8371ca74c2d067f6188bd30690c455e98f207c64c4c4c50ebba605a74c36ecea9cce37d72df8c33
7
+ data.tar.gz: fd3792b5dcdefdb0a70e0d53e80dad99a4de07dfd9bd4813d41c70101357f13c45ff735bc055e46904b54076f8e70aba7e984b0e1ebd980131b58c178167e208
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.437.0 (2024-01-29)
5
+ ------------------
6
+
7
+ * Feature - EC2 Fleet customers who use attribute based instance-type selection can now intuitively define their Spot instances price protection limit as a percentage of the lowest priced On-Demand instance type.
8
+
9
+ 1.436.0 (2024-01-26)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.435.0 (2024-01-24)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.435.0
1
+ 1.437.0
@@ -6433,6 +6433,7 @@ module Aws::EC2
6433
6433
  # max: 1.0,
6434
6434
  # },
6435
6435
  # allowed_instance_types: ["AllowedInstanceType"],
6436
+ # max_spot_price_as_percentage_of_optimal_on_demand_price: 1,
6436
6437
  # },
6437
6438
  # image_id: "ImageId",
6438
6439
  # },
@@ -6519,6 +6520,7 @@ module Aws::EC2
6519
6520
  # resp.errors[0].launch_template_and_overrides.overrides.instance_requirements.network_bandwidth_gbps.max #=> Float
6520
6521
  # resp.errors[0].launch_template_and_overrides.overrides.instance_requirements.allowed_instance_types #=> Array
6521
6522
  # resp.errors[0].launch_template_and_overrides.overrides.instance_requirements.allowed_instance_types[0] #=> String
6523
+ # resp.errors[0].launch_template_and_overrides.overrides.instance_requirements.max_spot_price_as_percentage_of_optimal_on_demand_price #=> Integer
6522
6524
  # resp.errors[0].launch_template_and_overrides.overrides.image_id #=> String
6523
6525
  # resp.errors[0].lifecycle #=> String, one of "spot", "on-demand"
6524
6526
  # resp.errors[0].error_code #=> String
@@ -6574,6 +6576,7 @@ module Aws::EC2
6574
6576
  # resp.instances[0].launch_template_and_overrides.overrides.instance_requirements.network_bandwidth_gbps.max #=> Float
6575
6577
  # resp.instances[0].launch_template_and_overrides.overrides.instance_requirements.allowed_instance_types #=> Array
6576
6578
  # resp.instances[0].launch_template_and_overrides.overrides.instance_requirements.allowed_instance_types[0] #=> String
6579
+ # resp.instances[0].launch_template_and_overrides.overrides.instance_requirements.max_spot_price_as_percentage_of_optimal_on_demand_price #=> Integer
6577
6580
  # resp.instances[0].launch_template_and_overrides.overrides.image_id #=> String
6578
6581
  # resp.instances[0].lifecycle #=> String, one of "spot", "on-demand"
6579
6582
  # resp.instances[0].instance_ids #=> Array
@@ -8416,6 +8419,7 @@ module Aws::EC2
8416
8419
  # max: 1.0,
8417
8420
  # },
8418
8421
  # allowed_instance_types: ["AllowedInstanceType"],
8422
+ # max_spot_price_as_percentage_of_optimal_on_demand_price: 1,
8419
8423
  # },
8420
8424
  # private_dns_name_options: {
8421
8425
  # hostname_type: "ip-name", # accepts ip-name, resource-name
@@ -8812,6 +8816,7 @@ module Aws::EC2
8812
8816
  # max: 1.0,
8813
8817
  # },
8814
8818
  # allowed_instance_types: ["AllowedInstanceType"],
8819
+ # max_spot_price_as_percentage_of_optimal_on_demand_price: 1,
8815
8820
  # },
8816
8821
  # private_dns_name_options: {
8817
8822
  # hostname_type: "ip-name", # accepts ip-name, resource-name
@@ -8978,6 +8983,7 @@ module Aws::EC2
8978
8983
  # resp.launch_template_version.launch_template_data.instance_requirements.network_bandwidth_gbps.max #=> Float
8979
8984
  # resp.launch_template_version.launch_template_data.instance_requirements.allowed_instance_types #=> Array
8980
8985
  # resp.launch_template_version.launch_template_data.instance_requirements.allowed_instance_types[0] #=> String
8986
+ # resp.launch_template_version.launch_template_data.instance_requirements.max_spot_price_as_percentage_of_optimal_on_demand_price #=> Integer
8981
8987
  # resp.launch_template_version.launch_template_data.private_dns_name_options.hostname_type #=> String, one of "ip-name", "resource-name"
8982
8988
  # resp.launch_template_version.launch_template_data.private_dns_name_options.enable_resource_name_dns_a_record #=> Boolean
8983
8989
  # resp.launch_template_version.launch_template_data.private_dns_name_options.enable_resource_name_dns_aaaa_record #=> Boolean
@@ -22284,6 +22290,7 @@ module Aws::EC2
22284
22290
  # resp.fleets[0].launch_template_configs[0].overrides[0].instance_requirements.network_bandwidth_gbps.max #=> Float
22285
22291
  # resp.fleets[0].launch_template_configs[0].overrides[0].instance_requirements.allowed_instance_types #=> Array
22286
22292
  # resp.fleets[0].launch_template_configs[0].overrides[0].instance_requirements.allowed_instance_types[0] #=> String
22293
+ # resp.fleets[0].launch_template_configs[0].overrides[0].instance_requirements.max_spot_price_as_percentage_of_optimal_on_demand_price #=> Integer
22287
22294
  # resp.fleets[0].launch_template_configs[0].overrides[0].image_id #=> String
22288
22295
  # resp.fleets[0].target_capacity_specification.total_target_capacity #=> Integer
22289
22296
  # resp.fleets[0].target_capacity_specification.on_demand_target_capacity #=> Integer
@@ -22364,6 +22371,7 @@ module Aws::EC2
22364
22371
  # resp.fleets[0].errors[0].launch_template_and_overrides.overrides.instance_requirements.network_bandwidth_gbps.max #=> Float
22365
22372
  # resp.fleets[0].errors[0].launch_template_and_overrides.overrides.instance_requirements.allowed_instance_types #=> Array
22366
22373
  # resp.fleets[0].errors[0].launch_template_and_overrides.overrides.instance_requirements.allowed_instance_types[0] #=> String
22374
+ # resp.fleets[0].errors[0].launch_template_and_overrides.overrides.instance_requirements.max_spot_price_as_percentage_of_optimal_on_demand_price #=> Integer
22367
22375
  # resp.fleets[0].errors[0].launch_template_and_overrides.overrides.image_id #=> String
22368
22376
  # resp.fleets[0].errors[0].lifecycle #=> String, one of "spot", "on-demand"
22369
22377
  # resp.fleets[0].errors[0].error_code #=> String
@@ -22419,6 +22427,7 @@ module Aws::EC2
22419
22427
  # resp.fleets[0].instances[0].launch_template_and_overrides.overrides.instance_requirements.network_bandwidth_gbps.max #=> Float
22420
22428
  # resp.fleets[0].instances[0].launch_template_and_overrides.overrides.instance_requirements.allowed_instance_types #=> Array
22421
22429
  # resp.fleets[0].instances[0].launch_template_and_overrides.overrides.instance_requirements.allowed_instance_types[0] #=> String
22430
+ # resp.fleets[0].instances[0].launch_template_and_overrides.overrides.instance_requirements.max_spot_price_as_percentage_of_optimal_on_demand_price #=> Integer
22422
22431
  # resp.fleets[0].instances[0].launch_template_and_overrides.overrides.image_id #=> String
22423
22432
  # resp.fleets[0].instances[0].lifecycle #=> String, one of "spot", "on-demand"
22424
22433
  # resp.fleets[0].instances[0].instance_ids #=> Array
@@ -26980,6 +26989,7 @@ module Aws::EC2
26980
26989
  # resp.launch_template_versions[0].launch_template_data.instance_requirements.network_bandwidth_gbps.max #=> Float
26981
26990
  # resp.launch_template_versions[0].launch_template_data.instance_requirements.allowed_instance_types #=> Array
26982
26991
  # resp.launch_template_versions[0].launch_template_data.instance_requirements.allowed_instance_types[0] #=> String
26992
+ # resp.launch_template_versions[0].launch_template_data.instance_requirements.max_spot_price_as_percentage_of_optimal_on_demand_price #=> Integer
26983
26993
  # resp.launch_template_versions[0].launch_template_data.private_dns_name_options.hostname_type #=> String, one of "ip-name", "resource-name"
26984
26994
  # resp.launch_template_versions[0].launch_template_data.private_dns_name_options.enable_resource_name_dns_a_record #=> Boolean
26985
26995
  # resp.launch_template_versions[0].launch_template_data.private_dns_name_options.enable_resource_name_dns_aaaa_record #=> Boolean
@@ -32736,6 +32746,7 @@ module Aws::EC2
32736
32746
  # resp.spot_fleet_request_configs[0].spot_fleet_request_config.launch_specifications[0].instance_requirements.network_bandwidth_gbps.max #=> Float
32737
32747
  # resp.spot_fleet_request_configs[0].spot_fleet_request_config.launch_specifications[0].instance_requirements.allowed_instance_types #=> Array
32738
32748
  # resp.spot_fleet_request_configs[0].spot_fleet_request_config.launch_specifications[0].instance_requirements.allowed_instance_types[0] #=> String
32749
+ # resp.spot_fleet_request_configs[0].spot_fleet_request_config.launch_specifications[0].instance_requirements.max_spot_price_as_percentage_of_optimal_on_demand_price #=> Integer
32739
32750
  # resp.spot_fleet_request_configs[0].spot_fleet_request_config.launch_template_configs #=> Array
32740
32751
  # resp.spot_fleet_request_configs[0].spot_fleet_request_config.launch_template_configs[0].launch_template_specification.launch_template_id #=> String
32741
32752
  # resp.spot_fleet_request_configs[0].spot_fleet_request_config.launch_template_configs[0].launch_template_specification.launch_template_name #=> String
@@ -32787,6 +32798,7 @@ module Aws::EC2
32787
32798
  # resp.spot_fleet_request_configs[0].spot_fleet_request_config.launch_template_configs[0].overrides[0].instance_requirements.network_bandwidth_gbps.max #=> Float
32788
32799
  # resp.spot_fleet_request_configs[0].spot_fleet_request_config.launch_template_configs[0].overrides[0].instance_requirements.allowed_instance_types #=> Array
32789
32800
  # resp.spot_fleet_request_configs[0].spot_fleet_request_config.launch_template_configs[0].overrides[0].instance_requirements.allowed_instance_types[0] #=> String
32801
+ # resp.spot_fleet_request_configs[0].spot_fleet_request_config.launch_template_configs[0].overrides[0].instance_requirements.max_spot_price_as_percentage_of_optimal_on_demand_price #=> Integer
32790
32802
  # resp.spot_fleet_request_configs[0].spot_fleet_request_config.spot_price #=> String
32791
32803
  # resp.spot_fleet_request_configs[0].spot_fleet_request_config.target_capacity #=> Integer
32792
32804
  # resp.spot_fleet_request_configs[0].spot_fleet_request_config.on_demand_target_capacity #=> Integer
@@ -41464,6 +41476,7 @@ module Aws::EC2
41464
41476
  # max: 1.0,
41465
41477
  # },
41466
41478
  # allowed_instance_types: ["AllowedInstanceType"],
41479
+ # max_spot_price_as_percentage_of_optimal_on_demand_price: 1,
41467
41480
  # },
41468
41481
  # max_results: 1,
41469
41482
  # next_token: "String",
@@ -42356,6 +42369,7 @@ module Aws::EC2
42356
42369
  # resp.launch_template_data.instance_requirements.network_bandwidth_gbps.max #=> Float
42357
42370
  # resp.launch_template_data.instance_requirements.allowed_instance_types #=> Array
42358
42371
  # resp.launch_template_data.instance_requirements.allowed_instance_types[0] #=> String
42372
+ # resp.launch_template_data.instance_requirements.max_spot_price_as_percentage_of_optimal_on_demand_price #=> Integer
42359
42373
  # resp.launch_template_data.private_dns_name_options.hostname_type #=> String, one of "ip-name", "resource-name"
42360
42374
  # resp.launch_template_data.private_dns_name_options.enable_resource_name_dns_a_record #=> Boolean
42361
42375
  # resp.launch_template_data.private_dns_name_options.enable_resource_name_dns_aaaa_record #=> Boolean
@@ -43424,6 +43438,7 @@ module Aws::EC2
43424
43438
  # max: 1.0,
43425
43439
  # },
43426
43440
  # allowed_instance_types: ["AllowedInstanceType"],
43441
+ # max_spot_price_as_percentage_of_optimal_on_demand_price: 1,
43427
43442
  # },
43428
43443
  # },
43429
43444
  # dry_run: false,
@@ -46010,6 +46025,7 @@ module Aws::EC2
46010
46025
  # max: 1.0,
46011
46026
  # },
46012
46027
  # allowed_instance_types: ["AllowedInstanceType"],
46028
+ # max_spot_price_as_percentage_of_optimal_on_demand_price: 1,
46013
46029
  # },
46014
46030
  # image_id: "ImageId",
46015
46031
  # },
@@ -48631,6 +48647,7 @@ module Aws::EC2
48631
48647
  # max: 1.0,
48632
48648
  # },
48633
48649
  # allowed_instance_types: ["AllowedInstanceType"],
48650
+ # max_spot_price_as_percentage_of_optimal_on_demand_price: 1,
48634
48651
  # },
48635
48652
  # },
48636
48653
  # ],
@@ -53910,6 +53927,7 @@ module Aws::EC2
53910
53927
  # max: 1.0,
53911
53928
  # },
53912
53929
  # allowed_instance_types: ["AllowedInstanceType"],
53930
+ # max_spot_price_as_percentage_of_optimal_on_demand_price: 1,
53913
53931
  # },
53914
53932
  # },
53915
53933
  # ],
@@ -53979,6 +53997,7 @@ module Aws::EC2
53979
53997
  # max: 1.0,
53980
53998
  # },
53981
53999
  # allowed_instance_types: ["AllowedInstanceType"],
54000
+ # max_spot_price_as_percentage_of_optimal_on_demand_price: 1,
53982
54001
  # },
53983
54002
  # },
53984
54003
  # ],
@@ -58757,7 +58776,7 @@ module Aws::EC2
58757
58776
  params: params,
58758
58777
  config: config)
58759
58778
  context[:gem_name] = 'aws-sdk-ec2'
58760
- context[:gem_version] = '1.435.0'
58779
+ context[:gem_version] = '1.437.0'
58761
58780
  Seahorse::Client::Request.new(handlers, context)
58762
58781
  end
58763
58782
 
@@ -10136,6 +10136,7 @@ module Aws::EC2
10136
10136
  InstanceRequirements.add_member(:accelerator_total_memory_mi_b, Shapes::ShapeRef.new(shape: AcceleratorTotalMemoryMiB, location_name: "acceleratorTotalMemoryMiB"))
10137
10137
  InstanceRequirements.add_member(:network_bandwidth_gbps, Shapes::ShapeRef.new(shape: NetworkBandwidthGbps, location_name: "networkBandwidthGbps"))
10138
10138
  InstanceRequirements.add_member(:allowed_instance_types, Shapes::ShapeRef.new(shape: AllowedInstanceTypeSet, location_name: "allowedInstanceTypeSet"))
10139
+ InstanceRequirements.add_member(:max_spot_price_as_percentage_of_optimal_on_demand_price, Shapes::ShapeRef.new(shape: Integer, location_name: "maxSpotPriceAsPercentageOfOptimalOnDemandPrice"))
10139
10140
  InstanceRequirements.struct_class = Types::InstanceRequirements
10140
10141
 
10141
10142
  InstanceRequirementsRequest.add_member(:v_cpu_count, Shapes::ShapeRef.new(shape: VCpuCountRangeRequest, required: true, location_name: "VCpuCount"))
@@ -10161,6 +10162,7 @@ module Aws::EC2
10161
10162
  InstanceRequirementsRequest.add_member(:accelerator_total_memory_mi_b, Shapes::ShapeRef.new(shape: AcceleratorTotalMemoryMiBRequest, location_name: "AcceleratorTotalMemoryMiB"))
10162
10163
  InstanceRequirementsRequest.add_member(:network_bandwidth_gbps, Shapes::ShapeRef.new(shape: NetworkBandwidthGbpsRequest, location_name: "NetworkBandwidthGbps"))
10163
10164
  InstanceRequirementsRequest.add_member(:allowed_instance_types, Shapes::ShapeRef.new(shape: AllowedInstanceTypeSet, location_name: "AllowedInstanceType"))
10165
+ InstanceRequirementsRequest.add_member(:max_spot_price_as_percentage_of_optimal_on_demand_price, Shapes::ShapeRef.new(shape: Integer, location_name: "MaxSpotPriceAsPercentageOfOptimalOnDemandPrice"))
10164
10166
  InstanceRequirementsRequest.struct_class = Types::InstanceRequirementsRequest
10165
10167
 
10166
10168
  InstanceRequirementsWithMetadataRequest.add_member(:architecture_types, Shapes::ShapeRef.new(shape: ArchitectureTypeSet, location_name: "ArchitectureType"))
@@ -14,6 +14,7 @@ module Aws::EC2
14
14
  option(
15
15
  :endpoint_provider,
16
16
  doc_type: 'Aws::EC2::EndpointProvider',
17
+ rbs_type: 'untyped',
17
18
  docstring: 'The endpoint provider used to resolve endpoints. Any '\
18
19
  'object that responds to `#resolve_endpoint(parameters)` '\
19
20
  'where `parameters` is a Struct similar to '\
@@ -40197,25 +40197,36 @@ module Aws::EC2
40197
40197
  # @return [Array<String>]
40198
40198
  #
40199
40199
  # @!attribute [rw] spot_max_price_percentage_over_lowest_price
40200
- # The price protection threshold for Spot Instances. This is the
40201
- # maximum you’ll pay for a Spot Instance, expressed as a percentage
40202
- # above the least expensive current generation M, C, or R instance
40203
- # type with your specified attributes. When Amazon EC2 selects
40204
- # instance types with your attributes, it excludes instance types
40205
- # priced above your threshold.
40200
+ # \[Price protection\] The price protection threshold for Spot
40201
+ # Instances, as a percentage higher than an identified Spot price. The
40202
+ # identified Spot price is the Spot price of the lowest priced current
40203
+ # generation C, M, or R instance type with your specified attributes.
40204
+ # If no current generation C, M, or R instance type matches your
40205
+ # attributes, then the identified Spot price is from the lowest priced
40206
+ # current generation instance types, and failing that, from the lowest
40207
+ # priced previous generation instance types that match your
40208
+ # attributes. When Amazon EC2 selects instance types with your
40209
+ # attributes, it will exclude instance types whose Spot price exceeds
40210
+ # your specified threshold.
40206
40211
  #
40207
40212
  # The parameter accepts an integer, which Amazon EC2 interprets as a
40208
40213
  # percentage.
40209
40214
  #
40210
- # To turn off price protection, specify a high value, such as
40211
- # `999999`.
40215
+ # To indicate no price protection threshold, specify a high value,
40216
+ # such as `999999`.
40217
+ #
40218
+ # If you set `TargetCapacityUnitType` to `vcpu` or `memory-mib`, the
40219
+ # price protection threshold is applied based on the per-vCPU or
40220
+ # per-memory price instead of the per-instance price.
40212
40221
  #
40213
40222
  # This parameter is not supported for [GetSpotPlacementScores][1] and
40214
40223
  # [GetInstanceTypesFromInstanceRequirements][2].
40215
40224
  #
40216
- # <note markdown="1"> If you set `TargetCapacityUnitType` to `vcpu` or `memory-mib`, the
40217
- # price protection threshold is applied based on the per-vCPU or
40218
- # per-memory price instead of the per-instance price.
40225
+ # <note markdown="1"> Only one of `SpotMaxPricePercentageOverLowestPrice` or
40226
+ # `MaxSpotPriceAsPercentageOfOptimalOnDemandPrice` can be specified.
40227
+ # If you don't specify either, then
40228
+ # `SpotMaxPricePercentageOverLowestPrice` is used and the value for
40229
+ # that parameter defaults to `100`.
40219
40230
  #
40220
40231
  # </note>
40221
40232
  #
@@ -40228,12 +40239,13 @@ module Aws::EC2
40228
40239
  # @return [Integer]
40229
40240
  #
40230
40241
  # @!attribute [rw] on_demand_max_price_percentage_over_lowest_price
40231
- # The price protection threshold for On-Demand Instances. This is the
40232
- # maximum you’ll pay for an On-Demand Instance, expressed as a
40233
- # percentage above the least expensive current generation M, C, or R
40234
- # instance type with your specified attributes. When Amazon EC2
40235
- # selects instance types with your attributes, it excludes instance
40236
- # types priced above your threshold.
40242
+ # \[Price protection\] The price protection threshold for On-Demand
40243
+ # Instances, as a percentage higher than an identified On-Demand
40244
+ # price. The identified On-Demand price is the price of the lowest
40245
+ # priced current generation C, M, or R instance type with your
40246
+ # specified attributes. When Amazon EC2 selects instance types with
40247
+ # your attributes, it will exclude instance types whose price exceeds
40248
+ # your specified threshold.
40237
40249
  #
40238
40250
  # The parameter accepts an integer, which Amazon EC2 interprets as a
40239
40251
  # percentage.
@@ -40469,6 +40481,38 @@ module Aws::EC2
40469
40481
  # Default: All instance types
40470
40482
  # @return [Array<String>]
40471
40483
  #
40484
+ # @!attribute [rw] max_spot_price_as_percentage_of_optimal_on_demand_price
40485
+ # \[Price protection\] The price protection threshold for Spot
40486
+ # Instances, as a percentage of an identified On-Demand price. The
40487
+ # identified On-Demand price is the price of the lowest priced current
40488
+ # generation C, M, or R instance type with your specified attributes.
40489
+ # If no current generation C, M, or R instance type matches your
40490
+ # attributes, then the identified price is from the lowest priced
40491
+ # current generation instance types, and failing that, from the lowest
40492
+ # priced previous generation instance types that match your
40493
+ # attributes. When Amazon EC2 selects instance types with your
40494
+ # attributes, it will exclude instance types whose price exceeds your
40495
+ # specified threshold.
40496
+ #
40497
+ # The parameter accepts an integer, which Amazon EC2 interprets as a
40498
+ # percentage.
40499
+ #
40500
+ # To indicate no price protection threshold, specify a high value,
40501
+ # such as `999999`.
40502
+ #
40503
+ # If you set `DesiredCapacityType` to `vcpu` or `memory-mib`, the
40504
+ # price protection threshold is based on the per vCPU or per memory
40505
+ # price instead of the per instance price.
40506
+ #
40507
+ # <note markdown="1"> Only one of `SpotMaxPricePercentageOverLowestPrice` or
40508
+ # `MaxSpotPriceAsPercentageOfOptimalOnDemandPrice` can be specified.
40509
+ # If you don't specify either, then
40510
+ # `SpotMaxPricePercentageOverLowestPrice` is used and the value for
40511
+ # that parameter defaults to `100`.
40512
+ #
40513
+ # </note>
40514
+ # @return [Integer]
40515
+ #
40472
40516
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceRequirements AWS API Documentation
40473
40517
  #
40474
40518
  class InstanceRequirements < Struct.new(
@@ -40494,7 +40538,8 @@ module Aws::EC2
40494
40538
  :accelerator_names,
40495
40539
  :accelerator_total_memory_mi_b,
40496
40540
  :network_bandwidth_gbps,
40497
- :allowed_instance_types)
40541
+ :allowed_instance_types,
40542
+ :max_spot_price_as_percentage_of_optimal_on_demand_price)
40498
40543
  SENSITIVE = []
40499
40544
  include Aws::Structure
40500
40545
  end
@@ -40622,25 +40667,36 @@ module Aws::EC2
40622
40667
  # @return [Array<String>]
40623
40668
  #
40624
40669
  # @!attribute [rw] spot_max_price_percentage_over_lowest_price
40625
- # The price protection threshold for Spot Instance. This is the
40626
- # maximum you’ll pay for an Spot Instance, expressed as a percentage
40627
- # above the least expensive current generation M, C, or R instance
40628
- # type with your specified attributes. When Amazon EC2 selects
40629
- # instance types with your attributes, it excludes instance types
40630
- # priced above your threshold.
40670
+ # \[Price protection\] The price protection threshold for Spot
40671
+ # Instances, as a percentage higher than an identified Spot price. The
40672
+ # identified Spot price is the Spot price of the lowest priced current
40673
+ # generation C, M, or R instance type with your specified attributes.
40674
+ # If no current generation C, M, or R instance type matches your
40675
+ # attributes, then the identified Spot price is from the lowest priced
40676
+ # current generation instance types, and failing that, from the lowest
40677
+ # priced previous generation instance types that match your
40678
+ # attributes. When Amazon EC2 selects instance types with your
40679
+ # attributes, it will exclude instance types whose Spot price exceeds
40680
+ # your specified threshold.
40631
40681
  #
40632
40682
  # The parameter accepts an integer, which Amazon EC2 interprets as a
40633
40683
  # percentage.
40634
40684
  #
40635
- # To turn off price protection, specify a high value, such as
40636
- # `999999`.
40685
+ # To indicate no price protection threshold, specify a high value,
40686
+ # such as `999999`.
40687
+ #
40688
+ # If you set `TargetCapacityUnitType` to `vcpu` or `memory-mib`, the
40689
+ # price protection threshold is applied based on the per-vCPU or
40690
+ # per-memory price instead of the per-instance price.
40637
40691
  #
40638
40692
  # This parameter is not supported for [GetSpotPlacementScores][1] and
40639
40693
  # [GetInstanceTypesFromInstanceRequirements][2].
40640
40694
  #
40641
- # <note markdown="1"> If you set `TargetCapacityUnitType` to `vcpu` or `memory-mib`, the
40642
- # price protection threshold is applied based on the per-vCPU or
40643
- # per-memory price instead of the per-instance price.
40695
+ # <note markdown="1"> Only one of `SpotMaxPricePercentageOverLowestPrice` or
40696
+ # `MaxSpotPriceAsPercentageOfOptimalOnDemandPrice` can be specified.
40697
+ # If you don't specify either, then
40698
+ # `SpotMaxPricePercentageOverLowestPrice` is used and the value for
40699
+ # that parameter defaults to `100`.
40644
40700
  #
40645
40701
  # </note>
40646
40702
  #
@@ -40653,18 +40709,19 @@ module Aws::EC2
40653
40709
  # @return [Integer]
40654
40710
  #
40655
40711
  # @!attribute [rw] on_demand_max_price_percentage_over_lowest_price
40656
- # The price protection threshold for On-Demand Instances. This is the
40657
- # maximum you’ll pay for an On-Demand Instance, expressed as a
40658
- # percentage above the least expensive current generation M, C, or R
40659
- # instance type with your specified attributes. When Amazon EC2
40660
- # selects instance types with your attributes, it excludes instance
40661
- # types priced above your threshold.
40712
+ # \[Price protection\] The price protection threshold for On-Demand
40713
+ # Instances, as a percentage higher than an identified On-Demand
40714
+ # price. The identified On-Demand price is the price of the lowest
40715
+ # priced current generation C, M, or R instance type with your
40716
+ # specified attributes. When Amazon EC2 selects instance types with
40717
+ # your attributes, it will exclude instance types whose price exceeds
40718
+ # your specified threshold.
40662
40719
  #
40663
40720
  # The parameter accepts an integer, which Amazon EC2 interprets as a
40664
40721
  # percentage.
40665
40722
  #
40666
- # To turn off price protection, specify a high value, such as
40667
- # `999999`.
40723
+ # To indicate no price protection threshold, specify a high value,
40724
+ # such as `999999`.
40668
40725
  #
40669
40726
  # This parameter is not supported for [GetSpotPlacementScores][1] and
40670
40727
  # [GetInstanceTypesFromInstanceRequirements][2].
@@ -40899,6 +40956,38 @@ module Aws::EC2
40899
40956
  # Default: All instance types
40900
40957
  # @return [Array<String>]
40901
40958
  #
40959
+ # @!attribute [rw] max_spot_price_as_percentage_of_optimal_on_demand_price
40960
+ # \[Price protection\] The price protection threshold for Spot
40961
+ # Instances, as a percentage of an identified On-Demand price. The
40962
+ # identified On-Demand price is the price of the lowest priced current
40963
+ # generation C, M, or R instance type with your specified attributes.
40964
+ # If no current generation C, M, or R instance type matches your
40965
+ # attributes, then the identified price is from the lowest priced
40966
+ # current generation instance types, and failing that, from the lowest
40967
+ # priced previous generation instance types that match your
40968
+ # attributes. When Amazon EC2 selects instance types with your
40969
+ # attributes, it will exclude instance types whose price exceeds your
40970
+ # specified threshold.
40971
+ #
40972
+ # The parameter accepts an integer, which Amazon EC2 interprets as a
40973
+ # percentage.
40974
+ #
40975
+ # To indicate no price protection threshold, specify a high value,
40976
+ # such as `999999`.
40977
+ #
40978
+ # If you set `DesiredCapacityType` to `vcpu` or `memory-mib`, the
40979
+ # price protection threshold is based on the per vCPU or per memory
40980
+ # price instead of the per instance price.
40981
+ #
40982
+ # <note markdown="1"> Only one of `SpotMaxPricePercentageOverLowestPrice` or
40983
+ # `MaxSpotPriceAsPercentageOfOptimalOnDemandPrice` can be specified.
40984
+ # If you don't specify either, then
40985
+ # `SpotMaxPricePercentageOverLowestPrice` is used and the value for
40986
+ # that parameter defaults to `100`.
40987
+ #
40988
+ # </note>
40989
+ # @return [Integer]
40990
+ #
40902
40991
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceRequirementsRequest AWS API Documentation
40903
40992
  #
40904
40993
  class InstanceRequirementsRequest < Struct.new(
@@ -40924,7 +41013,8 @@ module Aws::EC2
40924
41013
  :accelerator_names,
40925
41014
  :accelerator_total_memory_mi_b,
40926
41015
  :network_bandwidth_gbps,
40927
- :allowed_instance_types)
41016
+ :allowed_instance_types,
41017
+ :max_spot_price_as_percentage_of_optimal_on_demand_price)
40928
41018
  SENSITIVE = []
40929
41019
  include Aws::Structure
40930
41020
  end
data/lib/aws-sdk-ec2.rb CHANGED
@@ -76,6 +76,6 @@ require_relative 'aws-sdk-ec2/customizations'
76
76
  # @!group service
77
77
  module Aws::EC2
78
78
 
79
- GEM_VERSION = '1.435.0'
79
+ GEM_VERSION = '1.437.0'
80
80
 
81
81
  end
@@ -0,0 +1,102 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module EC2
10
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html
11
+ class ClassicAddress
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#initialize-instance_method
13
+ def initialize: (String public_ip, Hash[Symbol, untyped] options) -> void
14
+ | (public_ip: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#public_ip-instance_method
18
+ def public_ip: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#instance_id-instance_method
21
+ def instance_id: () -> ::String
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#allocation_id-instance_method
24
+ def allocation_id: () -> ::String
25
+
26
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#association_id-instance_method
27
+ def association_id: () -> ::String
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#domain-instance_method
30
+ def domain: () -> ("vpc" | "standard")
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#network_interface_id-instance_method
33
+ def network_interface_id: () -> ::String
34
+
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#network_interface_owner_id-instance_method
36
+ def network_interface_owner_id: () -> ::String
37
+
38
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#private_ip_address-instance_method
39
+ def private_ip_address: () -> ::String
40
+
41
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#tags-instance_method
42
+ def tags: () -> ::Array[Types::Tag]
43
+
44
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#public_ipv_4_pool-instance_method
45
+ def public_ipv_4_pool: () -> ::String
46
+
47
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#network_border_group-instance_method
48
+ def network_border_group: () -> ::String
49
+
50
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#customer_owned_ip-instance_method
51
+ def customer_owned_ip: () -> ::String
52
+
53
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#customer_owned_ipv_4_pool-instance_method
54
+ def customer_owned_ipv_4_pool: () -> ::String
55
+
56
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#carrier_ip-instance_method
57
+ def carrier_ip: () -> ::String
58
+
59
+ def client: () -> Client
60
+
61
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#load-instance_method
62
+ def load: () -> self
63
+ alias reload load
64
+
65
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#data-instance_method
66
+ def data: () -> Types::Address
67
+
68
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#data_loaded?-instance_method
69
+ def data_loaded?: () -> bool
70
+
71
+
72
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#associate-instance_method
73
+ def associate: (
74
+ ?allocation_id: ::String,
75
+ ?instance_id: ::String,
76
+ ?allow_reassociation: bool,
77
+ ?dry_run: bool,
78
+ ?network_interface_id: ::String,
79
+ ?private_ip_address: ::String
80
+ ) -> Types::AssociateAddressResult
81
+ | (?Hash[Symbol, untyped]) -> Types::AssociateAddressResult
82
+
83
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#disassociate-instance_method
84
+ def disassociate: (
85
+ ?association_id: ::String,
86
+ ?dry_run: bool
87
+ ) -> ::Aws::EmptyStructure
88
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
89
+
90
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#release-instance_method
91
+ def release: (
92
+ ?allocation_id: ::String,
93
+ ?network_border_group: ::String,
94
+ ?dry_run: bool
95
+ ) -> ::Aws::EmptyStructure
96
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
97
+
98
+ class Collection < ::Aws::Resources::Collection[ClassicAddress]
99
+ end
100
+ end
101
+ end
102
+ end