aws-sdk-ec2 1.416.0 → 1.418.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: be9cd549908340f8b6d774a7c901825fc651feb1cd3df0dbcdd865e067d58390
4
- data.tar.gz: 69c5daac300e84329abbaba6aa5cc878fc65eca8628e0e6a915cd10c5dbb0e12
3
+ metadata.gz: '09ef990077457f5ffd7d8666fe33d33613e9bfadb193eeb3e1c9a0bf7dba6a98'
4
+ data.tar.gz: b2773e0f8086200d2e055377dc4f18fca51b27fcb638f6423b6d9dfcd906ea58
5
5
  SHA512:
6
- metadata.gz: a39112c01ebb25500d3f8aa72dd3f809c5de94928cfbf969806b27338ec4eae44b9308495c205e910bceb6e12decd7c668b3b9d888834a44cc17b504fe229382
7
- data.tar.gz: 19c8d323bd3e6ee1570f206a36169e356662506d3b687330e0840ed5afa8bb2f241ce78de82eb47ba850e99f72d82f61709fa1c8b077424e2ef89c25f5b2ca95
6
+ metadata.gz: 141cfeb55798b634120530dd6b235b7c6293775a42518927e9582467d6013717d1cec1c3c826831fcfda857b34697eeeb6e64c09791d7b2eef6894dc14476f4d
7
+ data.tar.gz: 38904bbccc3fb94d94c21d96271439437f50669584ba882c67e3960744434183d46df56afd3e5369f486048c49cf6fc59dc6baeeebd2714515bdcef7a7522cdc
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.418.0 (2023-11-09)
5
+ ------------------
6
+
7
+ * Feature - AWS EBS now supports Block Public Access for EBS Snapshots. This release introduces the EnableSnapshotBlockPublicAccess, DisableSnapshotBlockPublicAccess and GetSnapshotBlockPublicAccessState APIs to manage account-level public access settings for EBS Snapshots in an AWS Region.
8
+
9
+ 1.417.0 (2023-10-31)
10
+ ------------------
11
+
12
+ * Feature - Capacity Blocks for ML are a new EC2 purchasing option for reserving GPU instances on a future date to support short duration machine learning (ML) workloads. Capacity Blocks automatically place instances close together inside Amazon EC2 UltraClusters for low-latency, high-throughput networking.
13
+
4
14
  1.416.0 (2023-10-26)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.416.0
1
+ 1.418.0
@@ -4949,7 +4949,7 @@ module Aws::EC2
4949
4949
  # resp.capacity_reservation.available_instance_count #=> Integer
4950
4950
  # resp.capacity_reservation.ebs_optimized #=> Boolean
4951
4951
  # resp.capacity_reservation.ephemeral_storage #=> Boolean
4952
- # resp.capacity_reservation.state #=> String, one of "active", "expired", "cancelled", "pending", "failed"
4952
+ # resp.capacity_reservation.state #=> String, one of "active", "expired", "cancelled", "pending", "failed", "scheduled", "payment-pending", "payment-failed"
4953
4953
  # resp.capacity_reservation.start_date #=> Time
4954
4954
  # resp.capacity_reservation.end_date #=> Time
4955
4955
  # resp.capacity_reservation.end_date_type #=> String, one of "unlimited", "limited"
@@ -4964,6 +4964,7 @@ module Aws::EC2
4964
4964
  # resp.capacity_reservation.capacity_allocations #=> Array
4965
4965
  # resp.capacity_reservation.capacity_allocations[0].allocation_type #=> String, one of "used"
4966
4966
  # resp.capacity_reservation.capacity_allocations[0].count #=> Integer
4967
+ # resp.capacity_reservation.reservation_type #=> String, one of "default", "capacity-block"
4967
4968
  #
4968
4969
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCapacityReservation AWS API Documentation
4969
4970
  #
@@ -6332,7 +6333,7 @@ module Aws::EC2
6332
6333
  # total_target_capacity: 1, # required
6333
6334
  # on_demand_target_capacity: 1,
6334
6335
  # spot_target_capacity: 1,
6335
- # default_target_capacity_type: "spot", # accepts spot, on-demand
6336
+ # default_target_capacity_type: "spot", # accepts spot, on-demand, capacity-block
6336
6337
  # target_capacity_unit_type: "vcpu", # accepts vcpu, memory-mib, units
6337
6338
  # },
6338
6339
  # terminate_instances_with_expiration: false,
@@ -8163,7 +8164,7 @@ module Aws::EC2
8163
8164
  # security_group_ids: ["SecurityGroupId"],
8164
8165
  # security_groups: ["SecurityGroupName"],
8165
8166
  # instance_market_options: {
8166
- # market_type: "spot", # accepts spot
8167
+ # market_type: "spot", # accepts spot, capacity-block
8167
8168
  # spot_options: {
8168
8169
  # max_price: "String",
8169
8170
  # spot_instance_type: "one-time", # accepts one-time, persistent
@@ -8548,7 +8549,7 @@ module Aws::EC2
8548
8549
  # security_group_ids: ["SecurityGroupId"],
8549
8550
  # security_groups: ["SecurityGroupName"],
8550
8551
  # instance_market_options: {
8551
- # market_type: "spot", # accepts spot
8552
+ # market_type: "spot", # accepts spot, capacity-block
8552
8553
  # spot_options: {
8553
8554
  # max_price: "String",
8554
8555
  # spot_instance_type: "one-time", # accepts one-time, persistent
@@ -8739,7 +8740,7 @@ module Aws::EC2
8739
8740
  # resp.launch_template_version.launch_template_data.security_group_ids[0] #=> String
8740
8741
  # resp.launch_template_version.launch_template_data.security_groups #=> Array
8741
8742
  # resp.launch_template_version.launch_template_data.security_groups[0] #=> String
8742
- # resp.launch_template_version.launch_template_data.instance_market_options.market_type #=> String, one of "spot"
8743
+ # resp.launch_template_version.launch_template_data.instance_market_options.market_type #=> String, one of "spot", "capacity-block"
8743
8744
  # resp.launch_template_version.launch_template_data.instance_market_options.spot_options.max_price #=> String
8744
8745
  # resp.launch_template_version.launch_template_data.instance_market_options.spot_options.spot_instance_type #=> String, one of "one-time", "persistent"
8745
8746
  # resp.launch_template_version.launch_template_data.instance_market_options.spot_options.block_duration_minutes #=> Integer
@@ -19845,6 +19846,86 @@ module Aws::EC2
19845
19846
  req.send_request(options)
19846
19847
  end
19847
19848
 
19849
+ # Describes Capacity Block offerings available for purchase. With
19850
+ # Capacity Blocks, you purchase a specific instance type for a period of
19851
+ # time.
19852
+ #
19853
+ # @option params [Boolean] :dry_run
19854
+ # Checks whether you have the required permissions for the action,
19855
+ # without actually making the request, and provides an error response.
19856
+ # If you have the required permissions, the error response is
19857
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
19858
+ #
19859
+ # @option params [required, String] :instance_type
19860
+ # The type of instance for which the Capacity Block offering reserves
19861
+ # capacity.
19862
+ #
19863
+ # @option params [required, Integer] :instance_count
19864
+ # The number of instances for which to reserve capacity.
19865
+ #
19866
+ # @option params [Time,DateTime,Date,Integer,String] :start_date_range
19867
+ # The earliest start date for the Capacity Block offering.
19868
+ #
19869
+ # @option params [Time,DateTime,Date,Integer,String] :end_date_range
19870
+ # The latest end date for the Capacity Block offering.
19871
+ #
19872
+ # @option params [required, Integer] :capacity_duration_hours
19873
+ # The number of hours for which to reserve Capacity Block.
19874
+ #
19875
+ # @option params [String] :next_token
19876
+ # The token to use to retrieve the next page of results.
19877
+ #
19878
+ # @option params [Integer] :max_results
19879
+ # The maximum number of results to return for the request in a single
19880
+ # page. The remaining results can be seen by sending another request
19881
+ # with the returned `nextToken` value. This value can be between 5 and
19882
+ # 500. If `maxResults` is given a larger value than 500, you receive an
19883
+ # error.
19884
+ #
19885
+ # @return [Types::DescribeCapacityBlockOfferingsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
19886
+ #
19887
+ # * {Types::DescribeCapacityBlockOfferingsResult#capacity_block_offerings #capacity_block_offerings} => Array<Types::CapacityBlockOffering>
19888
+ # * {Types::DescribeCapacityBlockOfferingsResult#next_token #next_token} => String
19889
+ #
19890
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
19891
+ #
19892
+ # @example Request syntax with placeholder values
19893
+ #
19894
+ # resp = client.describe_capacity_block_offerings({
19895
+ # dry_run: false,
19896
+ # instance_type: "String", # required
19897
+ # instance_count: 1, # required
19898
+ # start_date_range: Time.now,
19899
+ # end_date_range: Time.now,
19900
+ # capacity_duration_hours: 1, # required
19901
+ # next_token: "String",
19902
+ # max_results: 1,
19903
+ # })
19904
+ #
19905
+ # @example Response structure
19906
+ #
19907
+ # resp.capacity_block_offerings #=> Array
19908
+ # resp.capacity_block_offerings[0].capacity_block_offering_id #=> String
19909
+ # resp.capacity_block_offerings[0].instance_type #=> String
19910
+ # resp.capacity_block_offerings[0].availability_zone #=> String
19911
+ # resp.capacity_block_offerings[0].instance_count #=> Integer
19912
+ # resp.capacity_block_offerings[0].start_date #=> Time
19913
+ # resp.capacity_block_offerings[0].end_date #=> Time
19914
+ # resp.capacity_block_offerings[0].capacity_block_duration_hours #=> Integer
19915
+ # resp.capacity_block_offerings[0].upfront_fee #=> String
19916
+ # resp.capacity_block_offerings[0].currency_code #=> String
19917
+ # resp.capacity_block_offerings[0].tenancy #=> String, one of "default", "dedicated"
19918
+ # resp.next_token #=> String
19919
+ #
19920
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCapacityBlockOfferings AWS API Documentation
19921
+ #
19922
+ # @overload describe_capacity_block_offerings(params = {})
19923
+ # @param [Hash] params ({})
19924
+ def describe_capacity_block_offerings(params = {}, options = {})
19925
+ req = build_request(:describe_capacity_block_offerings, params)
19926
+ req.send_request(options)
19927
+ end
19928
+
19848
19929
  # Describes one or more Capacity Reservation Fleets.
19849
19930
  #
19850
19931
  # @option params [Array<String>] :capacity_reservation_fleet_ids
@@ -20089,7 +20170,7 @@ module Aws::EC2
20089
20170
  # resp.capacity_reservations[0].available_instance_count #=> Integer
20090
20171
  # resp.capacity_reservations[0].ebs_optimized #=> Boolean
20091
20172
  # resp.capacity_reservations[0].ephemeral_storage #=> Boolean
20092
- # resp.capacity_reservations[0].state #=> String, one of "active", "expired", "cancelled", "pending", "failed"
20173
+ # resp.capacity_reservations[0].state #=> String, one of "active", "expired", "cancelled", "pending", "failed", "scheduled", "payment-pending", "payment-failed"
20093
20174
  # resp.capacity_reservations[0].start_date #=> Time
20094
20175
  # resp.capacity_reservations[0].end_date #=> Time
20095
20176
  # resp.capacity_reservations[0].end_date_type #=> String, one of "unlimited", "limited"
@@ -20104,6 +20185,7 @@ module Aws::EC2
20104
20185
  # resp.capacity_reservations[0].capacity_allocations #=> Array
20105
20186
  # resp.capacity_reservations[0].capacity_allocations[0].allocation_type #=> String, one of "used"
20106
20187
  # resp.capacity_reservations[0].capacity_allocations[0].count #=> Integer
20188
+ # resp.capacity_reservations[0].reservation_type #=> String, one of "default", "capacity-block"
20107
20189
  #
20108
20190
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCapacityReservations AWS API Documentation
20109
20191
  #
@@ -21877,7 +21959,7 @@ module Aws::EC2
21877
21959
  # resp.fleets[0].target_capacity_specification.total_target_capacity #=> Integer
21878
21960
  # resp.fleets[0].target_capacity_specification.on_demand_target_capacity #=> Integer
21879
21961
  # resp.fleets[0].target_capacity_specification.spot_target_capacity #=> Integer
21880
- # resp.fleets[0].target_capacity_specification.default_target_capacity_type #=> String, one of "spot", "on-demand"
21962
+ # resp.fleets[0].target_capacity_specification.default_target_capacity_type #=> String, one of "spot", "on-demand", "capacity-block"
21881
21963
  # resp.fleets[0].target_capacity_specification.target_capacity_unit_type #=> String, one of "vcpu", "memory-mib", "units"
21882
21964
  # resp.fleets[0].terminate_instances_with_expiration #=> Boolean
21883
21965
  # resp.fleets[0].type #=> String, one of "request", "maintain", "instant"
@@ -24478,7 +24560,7 @@ module Aws::EC2
24478
24560
  # resp.instance_types[0].current_generation #=> Boolean
24479
24561
  # resp.instance_types[0].free_tier_eligible #=> Boolean
24480
24562
  # resp.instance_types[0].supported_usage_classes #=> Array
24481
- # resp.instance_types[0].supported_usage_classes[0] #=> String, one of "spot", "on-demand"
24563
+ # resp.instance_types[0].supported_usage_classes[0] #=> String, one of "spot", "on-demand", "capacity-block"
24482
24564
  # resp.instance_types[0].supported_root_device_types #=> Array
24483
24565
  # resp.instance_types[0].supported_root_device_types[0] #=> String, one of "ebs", "instance-store"
24484
24566
  # resp.instance_types[0].supported_virtualization_types #=> Array
@@ -25185,7 +25267,7 @@ module Aws::EC2
25185
25267
  # resp.reservations[0].instances[0].hypervisor #=> String, one of "ovm", "xen"
25186
25268
  # resp.reservations[0].instances[0].iam_instance_profile.arn #=> String
25187
25269
  # resp.reservations[0].instances[0].iam_instance_profile.id #=> String
25188
- # resp.reservations[0].instances[0].instance_lifecycle #=> String, one of "spot", "scheduled"
25270
+ # resp.reservations[0].instances[0].instance_lifecycle #=> String, one of "spot", "scheduled", "capacity-block"
25189
25271
  # resp.reservations[0].instances[0].elastic_gpu_associations #=> Array
25190
25272
  # resp.reservations[0].instances[0].elastic_gpu_associations[0].elastic_gpu_id #=> String
25191
25273
  # resp.reservations[0].instances[0].elastic_gpu_associations[0].elastic_gpu_association_id #=> String
@@ -26302,7 +26384,7 @@ module Aws::EC2
26302
26384
  # resp.launch_template_versions[0].launch_template_data.security_group_ids[0] #=> String
26303
26385
  # resp.launch_template_versions[0].launch_template_data.security_groups #=> Array
26304
26386
  # resp.launch_template_versions[0].launch_template_data.security_groups[0] #=> String
26305
- # resp.launch_template_versions[0].launch_template_data.instance_market_options.market_type #=> String, one of "spot"
26387
+ # resp.launch_template_versions[0].launch_template_data.instance_market_options.market_type #=> String, one of "spot", "capacity-block"
26306
26388
  # resp.launch_template_versions[0].launch_template_data.instance_market_options.spot_options.max_price #=> String
26307
26389
  # resp.launch_template_versions[0].launch_template_data.instance_market_options.spot_options.spot_instance_type #=> String, one of "one-time", "persistent"
26308
26390
  # resp.launch_template_versions[0].launch_template_data.instance_market_options.spot_options.block_duration_minutes #=> Integer
@@ -37680,6 +37762,54 @@ module Aws::EC2
37680
37762
  req.send_request(options)
37681
37763
  end
37682
37764
 
37765
+ # Disables the *block public access for snapshots* setting at the
37766
+ # account level for the specified Amazon Web Services Region. After you
37767
+ # disable block public access for snapshots in a Region, users can
37768
+ # publicly share snapshots in that Region.
37769
+ #
37770
+ # If block public access is enabled in `block-all-sharing` mode, and you
37771
+ # disable block public access, all snapshots that were previously
37772
+ # publicly shared are no longer treated as private and they become
37773
+ # publicly accessible again.
37774
+ #
37775
+ # For more information, see [ Block public access for snapshots][1] in
37776
+ # the *Amazon Elastic Compute Cloud User Guide* .
37777
+ #
37778
+ #
37779
+ #
37780
+ #
37781
+ #
37782
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-public-access-snapshots.html
37783
+ #
37784
+ # @option params [Boolean] :dry_run
37785
+ # Checks whether you have the required permissions for the action,
37786
+ # without actually making the request, and provides an error response.
37787
+ # If you have the required permissions, the error response is
37788
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
37789
+ #
37790
+ # @return [Types::DisableSnapshotBlockPublicAccessResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
37791
+ #
37792
+ # * {Types::DisableSnapshotBlockPublicAccessResult#state #state} => String
37793
+ #
37794
+ # @example Request syntax with placeholder values
37795
+ #
37796
+ # resp = client.disable_snapshot_block_public_access({
37797
+ # dry_run: false,
37798
+ # })
37799
+ #
37800
+ # @example Response structure
37801
+ #
37802
+ # resp.state #=> String, one of "block-all-sharing", "block-new-sharing", "unblocked"
37803
+ #
37804
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableSnapshotBlockPublicAccess AWS API Documentation
37805
+ #
37806
+ # @overload disable_snapshot_block_public_access(params = {})
37807
+ # @param [Hash] params ({})
37808
+ def disable_snapshot_block_public_access(params = {}, options = {})
37809
+ req = build_request(:disable_snapshot_block_public_access, params)
37810
+ req.send_request(options)
37811
+ end
37812
+
37683
37813
  # Disables the specified resource attachment from propagating routes to
37684
37814
  # the specified propagation route table.
37685
37815
  #
@@ -39165,6 +39295,80 @@ module Aws::EC2
39165
39295
  req.send_request(options)
39166
39296
  end
39167
39297
 
39298
+ # Enables or modifies the *block public access for snapshots* setting at
39299
+ # the account level for the specified Amazon Web Services Region. After
39300
+ # you enable block public access for snapshots in a Region, users can no
39301
+ # longer request public sharing for snapshots in that Region. Snapshots
39302
+ # that are already publicly shared are either treated as private or they
39303
+ # remain publicly shared, depending on the **State** that you specify.
39304
+ #
39305
+ # If block public access is enabled in `block-all-sharing` mode, and you
39306
+ # change the mode to `block-new-sharing`, all snapshots that were
39307
+ # previously publicly shared are no longer treated as private and they
39308
+ # become publicly accessible again.
39309
+ #
39310
+ # For more information, see [ Block public access for snapshots][1] in
39311
+ # the *Amazon Elastic Compute Cloud User Guide*.
39312
+ #
39313
+ #
39314
+ #
39315
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-public-access-snapshots.html
39316
+ #
39317
+ # @option params [required, String] :state
39318
+ # The mode in which to enable block public access for snapshots for the
39319
+ # Region. Specify one of the following values:
39320
+ #
39321
+ # * `block-all-sharing` - Prevents all public sharing of snapshots in
39322
+ # the Region. Users in the account will no longer be able to request
39323
+ # new public sharing. Additionally, snapshots that are already
39324
+ # publicly shared are treated as private and they are no longer
39325
+ # publicly available.
39326
+ #
39327
+ # <note markdown="1"> If you enable block public access for snapshots in
39328
+ # `block-all-sharing` mode, it does not change the permissions for
39329
+ # snapshots that are already publicly shared. Instead, it prevents
39330
+ # these snapshots from be publicly visible and publicly accessible.
39331
+ # Therefore, the attributes for these snapshots still indicate that
39332
+ # they are publicly shared, even though they are not publicly
39333
+ # available.
39334
+ #
39335
+ # </note>
39336
+ #
39337
+ # * `block-new-sharing` - Prevents only new public sharing of snapshots
39338
+ # in the Region. Users in the account will no longer be able to
39339
+ # request new public sharing. However, snapshots that are already
39340
+ # publicly shared, remain publicly available.
39341
+ #
39342
+ # @option params [Boolean] :dry_run
39343
+ # Checks whether you have the required permissions for the action,
39344
+ # without actually making the request, and provides an error response.
39345
+ # If you have the required permissions, the error response is
39346
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
39347
+ #
39348
+ # @return [Types::EnableSnapshotBlockPublicAccessResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
39349
+ #
39350
+ # * {Types::EnableSnapshotBlockPublicAccessResult#state #state} => String
39351
+ #
39352
+ # @example Request syntax with placeholder values
39353
+ #
39354
+ # resp = client.enable_snapshot_block_public_access({
39355
+ # state: "block-all-sharing", # required, accepts block-all-sharing, block-new-sharing, unblocked
39356
+ # dry_run: false,
39357
+ # })
39358
+ #
39359
+ # @example Response structure
39360
+ #
39361
+ # resp.state #=> String, one of "block-all-sharing", "block-new-sharing", "unblocked"
39362
+ #
39363
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableSnapshotBlockPublicAccess AWS API Documentation
39364
+ #
39365
+ # @overload enable_snapshot_block_public_access(params = {})
39366
+ # @param [Hash] params ({})
39367
+ def enable_snapshot_block_public_access(params = {}, options = {})
39368
+ req = build_request(:enable_snapshot_block_public_access, params)
39369
+ req.send_request(options)
39370
+ end
39371
+
39168
39372
  # Enables the specified attachment to propagate routes to the specified
39169
39373
  # propagation route table.
39170
39374
  #
@@ -39882,7 +40086,7 @@ module Aws::EC2
39882
40086
  # resp.instance_type #=> String
39883
40087
  # resp.total_instance_count #=> Integer
39884
40088
  # resp.available_instance_count #=> Integer
39885
- # resp.state #=> String, one of "active", "expired", "cancelled", "pending", "failed"
40089
+ # resp.state #=> String, one of "active", "expired", "cancelled", "pending", "failed", "scheduled", "payment-pending", "payment-failed"
39886
40090
  # resp.instance_usages #=> Array
39887
40091
  # resp.instance_usages[0].account_id #=> String
39888
40092
  # resp.instance_usages[0].used_instance_count #=> Integer
@@ -41301,7 +41505,7 @@ module Aws::EC2
41301
41505
  # resp.launch_template_data.security_group_ids[0] #=> String
41302
41506
  # resp.launch_template_data.security_groups #=> Array
41303
41507
  # resp.launch_template_data.security_groups[0] #=> String
41304
- # resp.launch_template_data.instance_market_options.market_type #=> String, one of "spot"
41508
+ # resp.launch_template_data.instance_market_options.market_type #=> String, one of "spot", "capacity-block"
41305
41509
  # resp.launch_template_data.instance_market_options.spot_options.max_price #=> String
41306
41510
  # resp.launch_template_data.instance_market_options.spot_options.spot_instance_type #=> String, one of "one-time", "persistent"
41307
41511
  # resp.launch_template_data.instance_market_options.spot_options.block_duration_minutes #=> Integer
@@ -42254,6 +42458,45 @@ module Aws::EC2
42254
42458
  req.send_request(options)
42255
42459
  end
42256
42460
 
42461
+ # Gets the current state of *block public access for snapshots* setting
42462
+ # for the account and Region.
42463
+ #
42464
+ # For more information, see [ Block public access for snapshots][1] in
42465
+ # the *Amazon Elastic Compute Cloud User Guide*.
42466
+ #
42467
+ #
42468
+ #
42469
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-public-access-snapshots.html
42470
+ #
42471
+ # @option params [Boolean] :dry_run
42472
+ # Checks whether you have the required permissions for the action,
42473
+ # without actually making the request, and provides an error response.
42474
+ # If you have the required permissions, the error response is
42475
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
42476
+ #
42477
+ # @return [Types::GetSnapshotBlockPublicAccessStateResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
42478
+ #
42479
+ # * {Types::GetSnapshotBlockPublicAccessStateResult#state #state} => String
42480
+ #
42481
+ # @example Request syntax with placeholder values
42482
+ #
42483
+ # resp = client.get_snapshot_block_public_access_state({
42484
+ # dry_run: false,
42485
+ # })
42486
+ #
42487
+ # @example Response structure
42488
+ #
42489
+ # resp.state #=> String, one of "block-all-sharing", "block-new-sharing", "unblocked"
42490
+ #
42491
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSnapshotBlockPublicAccessState AWS API Documentation
42492
+ #
42493
+ # @overload get_snapshot_block_public_access_state(params = {})
42494
+ # @param [Hash] params ({})
42495
+ def get_snapshot_block_public_access_state(params = {}, options = {})
42496
+ req = build_request(:get_snapshot_block_public_access_state, params)
42497
+ req.send_request(options)
42498
+ end
42499
+
42257
42500
  # Calculates the Spot placement score for a Region or Availability Zone
42258
42501
  # based on the specified target capacity and compute requirements.
42259
42502
  #
@@ -44855,7 +45098,7 @@ module Aws::EC2
44855
45098
  # total_target_capacity: 1, # required
44856
45099
  # on_demand_target_capacity: 1,
44857
45100
  # spot_target_capacity: 1,
44858
- # default_target_capacity_type: "spot", # accepts spot, on-demand
45101
+ # default_target_capacity_type: "spot", # accepts spot, on-demand, capacity-block
44859
45102
  # target_capacity_unit_type: "vcpu", # accepts vcpu, memory-mib, units
44860
45103
  # },
44861
45104
  # context: "String",
@@ -50379,6 +50622,89 @@ module Aws::EC2
50379
50622
  req.send_request(options)
50380
50623
  end
50381
50624
 
50625
+ # Purchase the Capacity Block for use with your account. With Capacity
50626
+ # Blocks you ensure GPU capacity is available for machine learning (ML)
50627
+ # workloads. You must specify the ID of the Capacity Block offering you
50628
+ # are purchasing.
50629
+ #
50630
+ # @option params [Boolean] :dry_run
50631
+ # Checks whether you have the required permissions for the action,
50632
+ # without actually making the request, and provides an error response.
50633
+ # If you have the required permissions, the error response is
50634
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
50635
+ #
50636
+ # @option params [Array<Types::TagSpecification>] :tag_specifications
50637
+ # The tags to apply to the Capacity Block during launch.
50638
+ #
50639
+ # @option params [required, String] :capacity_block_offering_id
50640
+ # The ID of the Capacity Block offering.
50641
+ #
50642
+ # @option params [required, String] :instance_platform
50643
+ # The type of operating system for which to reserve capacity.
50644
+ #
50645
+ # @return [Types::PurchaseCapacityBlockResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
50646
+ #
50647
+ # * {Types::PurchaseCapacityBlockResult#capacity_reservation #capacity_reservation} => Types::CapacityReservation
50648
+ #
50649
+ # @example Request syntax with placeholder values
50650
+ #
50651
+ # resp = client.purchase_capacity_block({
50652
+ # dry_run: false,
50653
+ # tag_specifications: [
50654
+ # {
50655
+ # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, dedicated-host, dhcp-options, egress-only-internet-gateway, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint
50656
+ # tags: [
50657
+ # {
50658
+ # key: "String",
50659
+ # value: "String",
50660
+ # },
50661
+ # ],
50662
+ # },
50663
+ # ],
50664
+ # capacity_block_offering_id: "OfferingId", # required
50665
+ # instance_platform: "Linux/UNIX", # required, accepts Linux/UNIX, Red Hat Enterprise Linux, SUSE Linux, Windows, Windows with SQL Server, Windows with SQL Server Enterprise, Windows with SQL Server Standard, Windows with SQL Server Web, Linux with SQL Server Standard, Linux with SQL Server Web, Linux with SQL Server Enterprise, RHEL with SQL Server Standard, RHEL with SQL Server Enterprise, RHEL with SQL Server Web, RHEL with HA, RHEL with HA and SQL Server Standard, RHEL with HA and SQL Server Enterprise, Ubuntu Pro
50666
+ # })
50667
+ #
50668
+ # @example Response structure
50669
+ #
50670
+ # resp.capacity_reservation.capacity_reservation_id #=> String
50671
+ # resp.capacity_reservation.owner_id #=> String
50672
+ # resp.capacity_reservation.capacity_reservation_arn #=> String
50673
+ # resp.capacity_reservation.availability_zone_id #=> String
50674
+ # resp.capacity_reservation.instance_type #=> String
50675
+ # resp.capacity_reservation.instance_platform #=> String, one of "Linux/UNIX", "Red Hat Enterprise Linux", "SUSE Linux", "Windows", "Windows with SQL Server", "Windows with SQL Server Enterprise", "Windows with SQL Server Standard", "Windows with SQL Server Web", "Linux with SQL Server Standard", "Linux with SQL Server Web", "Linux with SQL Server Enterprise", "RHEL with SQL Server Standard", "RHEL with SQL Server Enterprise", "RHEL with SQL Server Web", "RHEL with HA", "RHEL with HA and SQL Server Standard", "RHEL with HA and SQL Server Enterprise", "Ubuntu Pro"
50676
+ # resp.capacity_reservation.availability_zone #=> String
50677
+ # resp.capacity_reservation.tenancy #=> String, one of "default", "dedicated"
50678
+ # resp.capacity_reservation.total_instance_count #=> Integer
50679
+ # resp.capacity_reservation.available_instance_count #=> Integer
50680
+ # resp.capacity_reservation.ebs_optimized #=> Boolean
50681
+ # resp.capacity_reservation.ephemeral_storage #=> Boolean
50682
+ # resp.capacity_reservation.state #=> String, one of "active", "expired", "cancelled", "pending", "failed", "scheduled", "payment-pending", "payment-failed"
50683
+ # resp.capacity_reservation.start_date #=> Time
50684
+ # resp.capacity_reservation.end_date #=> Time
50685
+ # resp.capacity_reservation.end_date_type #=> String, one of "unlimited", "limited"
50686
+ # resp.capacity_reservation.instance_match_criteria #=> String, one of "open", "targeted"
50687
+ # resp.capacity_reservation.create_date #=> Time
50688
+ # resp.capacity_reservation.tags #=> Array
50689
+ # resp.capacity_reservation.tags[0].key #=> String
50690
+ # resp.capacity_reservation.tags[0].value #=> String
50691
+ # resp.capacity_reservation.outpost_arn #=> String
50692
+ # resp.capacity_reservation.capacity_reservation_fleet_id #=> String
50693
+ # resp.capacity_reservation.placement_group_arn #=> String
50694
+ # resp.capacity_reservation.capacity_allocations #=> Array
50695
+ # resp.capacity_reservation.capacity_allocations[0].allocation_type #=> String, one of "used"
50696
+ # resp.capacity_reservation.capacity_allocations[0].count #=> Integer
50697
+ # resp.capacity_reservation.reservation_type #=> String, one of "default", "capacity-block"
50698
+ #
50699
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PurchaseCapacityBlock AWS API Documentation
50700
+ #
50701
+ # @overload purchase_capacity_block(params = {})
50702
+ # @param [Hash] params ({})
50703
+ def purchase_capacity_block(params = {}, options = {})
50704
+ req = build_request(:purchase_capacity_block, params)
50705
+ req.send_request(options)
50706
+ end
50707
+
50382
50708
  # Purchase a reservation with configurations that match those of your
50383
50709
  # Dedicated Host. You must have active Dedicated Hosts in your account
50384
50710
  # before you purchase a reservation. This action results in the
@@ -54619,7 +54945,7 @@ module Aws::EC2
54619
54945
  # version: "String",
54620
54946
  # },
54621
54947
  # instance_market_options: {
54622
- # market_type: "spot", # accepts spot
54948
+ # market_type: "spot", # accepts spot, capacity-block
54623
54949
  # spot_options: {
54624
54950
  # max_price: "String",
54625
54951
  # spot_instance_type: "one-time", # accepts one-time, persistent
@@ -54723,7 +55049,7 @@ module Aws::EC2
54723
55049
  # resp.instances[0].hypervisor #=> String, one of "ovm", "xen"
54724
55050
  # resp.instances[0].iam_instance_profile.arn #=> String
54725
55051
  # resp.instances[0].iam_instance_profile.id #=> String
54726
- # resp.instances[0].instance_lifecycle #=> String, one of "spot", "scheduled"
55052
+ # resp.instances[0].instance_lifecycle #=> String, one of "spot", "scheduled", "capacity-block"
54727
55053
  # resp.instances[0].elastic_gpu_associations #=> Array
54728
55054
  # resp.instances[0].elastic_gpu_associations[0].elastic_gpu_id #=> String
54729
55055
  # resp.instances[0].elastic_gpu_associations[0].elastic_gpu_association_id #=> String
@@ -57269,7 +57595,7 @@ module Aws::EC2
57269
57595
  params: params,
57270
57596
  config: config)
57271
57597
  context[:gem_name] = 'aws-sdk-ec2'
57272
- context[:gem_version] = '1.416.0'
57598
+ context[:gem_version] = '1.418.0'
57273
57599
  Seahorse::Client::Request.new(handlers, context)
57274
57600
  end
57275
57601