aws-sdk-ec2 1.232.0 → 1.233.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: a7a13230b8cf8f435b939934156d642062e16b24508436a09b0404d131ef4f6b
4
- data.tar.gz: 869509762a55a5f38f3303d43c19f1d9fdcad1450b2a8c3a66ebe5bbc55b8b8b
3
+ metadata.gz: f0da339a81ce955d4eff0fcfbcfea49048e85b0fdf227a8637731228746f8ec4
4
+ data.tar.gz: 486397d90c2ebb9adf7fe642eda8b26e32d582d1c1fb8dfac161e03bda27629e
5
5
  SHA512:
6
- metadata.gz: a8b22854ddff5bb007df9f7d3f5fba7be71ce5a4a7c53e6032ef8194b1cf3c46d9e4666c34841aa775bd0b1501d84a3dc23cfcce939e3795c56c49d34a11e240
7
- data.tar.gz: 9062295bfc6e517990410b21acf22e8b80d50c9412e72cc47d4edb642b90442fa1a349eb3decf4c6c326210dd880854b09492790f0776a2ac6877398c416adb2
6
+ metadata.gz: 8dd8049994bdedeb41dc8e93d34df65b2ebd69c9fbad83ca8b41424c72453de2ef851b6062a5cd389d8e36142ac64eb26b464efe9c838e5e0b277f3ccc020ccf
7
+ data.tar.gz: 152d1fbb23b0ebf379c12116ae46dd645697b32c89899e6d2e3b60cb18597ac50d97da7d06f43bb99cb4f2db96dd1922bb6481f8cc33a25ea42a229561892ef3
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.233.0 (2021-04-06)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for storing EBS-backed AMIs in S3 and restoring them from S3 to enable cross-partition copying of AMIs
8
+
4
9
  1.232.0 (2021-04-01)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.232.0
1
+ 1.233.0
data/lib/aws-sdk-ec2.rb CHANGED
@@ -72,6 +72,6 @@ require_relative 'aws-sdk-ec2/customizations'
72
72
  # @!group service
73
73
  module Aws::EC2
74
74
 
75
- GEM_VERSION = '1.232.0'
75
+ GEM_VERSION = '1.233.0'
76
76
 
77
77
  end
@@ -3332,7 +3332,8 @@ module Aws::EC2
3332
3332
  # Initiates the copy of an AMI. You can copy an AMI from one Region to
3333
3333
  # another, or from a Region to an AWS Outpost. You can't copy an AMI
3334
3334
  # from an Outpost to a Region, from one Outpost to another, or within
3335
- # the same Outpost.
3335
+ # the same Outpost. To copy an AMI to another partition, see
3336
+ # [CreateStoreImageTask][1].
3336
3337
  #
3337
3338
  # To copy an AMI from one Region to another, specify the source Region
3338
3339
  # using the **SourceRegion** parameter, and specify the destination
@@ -3348,18 +3349,17 @@ module Aws::EC2
3348
3349
  # encryption key for the Region, or a different key that you specify in
3349
3350
  # the request using **KmsKeyId**. Outposts do not support unencrypted
3350
3351
  # snapshots. For more information, [ Amazon EBS local snapshots on
3351
- # Outposts][1] in the *Amazon Elastic Compute Cloud User Guide*.
3352
- #
3353
- #
3352
+ # Outposts][2] in the *Amazon Elastic Compute Cloud User Guide*.
3354
3353
  #
3355
3354
  # For more information about the prerequisites and limits when copying
3356
- # an AMI, see [Copying an AMI][2] in the *Amazon Elastic Compute Cloud
3355
+ # an AMI, see [Copying an AMI][3] in the *Amazon Elastic Compute Cloud
3357
3356
  # User Guide*.
3358
3357
  #
3359
3358
  #
3360
3359
  #
3361
- # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html#ami
3362
- # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/CopyingAMIs.html
3360
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateStoreImageTask.html
3361
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html#ami
3362
+ # [3]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/CopyingAMIs.html
3363
3363
  #
3364
3364
  # @option params [String] :client_token
3365
3365
  # Unique, case-sensitive identifier you provide to ensure idempotency of
@@ -7547,6 +7547,86 @@ module Aws::EC2
7547
7547
  req.send_request(options)
7548
7548
  end
7549
7549
 
7550
+ # Starts a task that restores an AMI from an S3 object that was
7551
+ # previously created by using [CreateStoreImageTask][1].
7552
+ #
7553
+ # To use this API, you must have the required permissions. For more
7554
+ # information, see [Permissions for storing and restoring AMIs using
7555
+ # S3][2] in the *Amazon Elastic Compute Cloud User Guide*.
7556
+ #
7557
+ # For more information, see [Store and restore an AMI using S3][3] in
7558
+ # the *Amazon Elastic Compute Cloud User Guide*.
7559
+ #
7560
+ #
7561
+ #
7562
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateStoreImageTask.html
7563
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-store-restore.html#ami-s3-permissions
7564
+ # [3]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-store-restore.html
7565
+ #
7566
+ # @option params [required, String] :bucket
7567
+ # The name of the S3 bucket that contains the stored AMI object.
7568
+ #
7569
+ # @option params [required, String] :object_key
7570
+ # The name of the stored AMI object in the bucket.
7571
+ #
7572
+ # @option params [String] :name
7573
+ # The name for the restored AMI. The name must be unique for AMIs in the
7574
+ # Region for this account. If you do not provide a name, the new AMI
7575
+ # gets the same name as the original AMI.
7576
+ #
7577
+ # @option params [Array<Types::TagSpecification>] :tag_specifications
7578
+ # The tags to apply to the AMI and snapshots on restoration. You can tag
7579
+ # the AMI, the snapshots, or both.
7580
+ #
7581
+ # * To tag the AMI, the value for `ResourceType` must be `image`.
7582
+ #
7583
+ # * To tag the snapshots, the value for `ResourceType` must be
7584
+ # `snapshot`. The same tag is applied to all of the snapshots that are
7585
+ # created.
7586
+ #
7587
+ # @option params [Boolean] :dry_run
7588
+ # Checks whether you have the required permissions for the action,
7589
+ # without actually making the request, and provides an error response.
7590
+ # If you have the required permissions, the error response is
7591
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
7592
+ #
7593
+ # @return [Types::CreateRestoreImageTaskResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7594
+ #
7595
+ # * {Types::CreateRestoreImageTaskResult#image_id #image_id} => String
7596
+ #
7597
+ # @example Request syntax with placeholder values
7598
+ #
7599
+ # resp = client.create_restore_image_task({
7600
+ # bucket: "String", # required
7601
+ # object_key: "String", # required
7602
+ # name: "String",
7603
+ # tag_specifications: [
7604
+ # {
7605
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, 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, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
7606
+ # tags: [
7607
+ # {
7608
+ # key: "String",
7609
+ # value: "String",
7610
+ # },
7611
+ # ],
7612
+ # },
7613
+ # ],
7614
+ # dry_run: false,
7615
+ # })
7616
+ #
7617
+ # @example Response structure
7618
+ #
7619
+ # resp.image_id #=> String
7620
+ #
7621
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateRestoreImageTask AWS API Documentation
7622
+ #
7623
+ # @overload create_restore_image_task(params = {})
7624
+ # @param [Hash] params ({})
7625
+ def create_restore_image_task(params = {}, options = {})
7626
+ req = build_request(:create_restore_image_task, params)
7627
+ req.send_request(options)
7628
+ end
7629
+
7550
7630
  # Creates a route in a route table within a VPC.
7551
7631
  #
7552
7632
  # You must specify one of the following targets: internet gateway or
@@ -8285,6 +8365,70 @@ module Aws::EC2
8285
8365
  req.send_request(options)
8286
8366
  end
8287
8367
 
8368
+ # Stores an AMI as a single object in an S3 bucket.
8369
+ #
8370
+ # To use this API, you must have the required permissions. For more
8371
+ # information, see [Permissions for storing and restoring AMIs using
8372
+ # S3][1] in the *Amazon Elastic Compute Cloud User Guide*.
8373
+ #
8374
+ # For more information, see [Store and restore an AMI using S3][2] in
8375
+ # the *Amazon Elastic Compute Cloud User Guide*.
8376
+ #
8377
+ #
8378
+ #
8379
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-store-restore.html#ami-s3-permissions
8380
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-store-restore.html
8381
+ #
8382
+ # @option params [required, String] :image_id
8383
+ # The ID of the AMI.
8384
+ #
8385
+ # @option params [required, String] :bucket
8386
+ # The name of the S3 bucket in which the AMI object will be stored. The
8387
+ # bucket must be in the Region in which the request is being made. The
8388
+ # AMI object appears in the bucket only after the upload task has
8389
+ # completed.
8390
+ #
8391
+ # @option params [Array<Types::S3ObjectTag>] :s3_object_tags
8392
+ # The tags to apply to the AMI object that will be stored in the S3
8393
+ # bucket.
8394
+ #
8395
+ # @option params [Boolean] :dry_run
8396
+ # Checks whether you have the required permissions for the action,
8397
+ # without actually making the request, and provides an error response.
8398
+ # If you have the required permissions, the error response is
8399
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
8400
+ #
8401
+ # @return [Types::CreateStoreImageTaskResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8402
+ #
8403
+ # * {Types::CreateStoreImageTaskResult#object_key #object_key} => String
8404
+ #
8405
+ # @example Request syntax with placeholder values
8406
+ #
8407
+ # resp = client.create_store_image_task({
8408
+ # image_id: "ImageId", # required
8409
+ # bucket: "String", # required
8410
+ # s3_object_tags: [
8411
+ # {
8412
+ # key: "String",
8413
+ # value: "String",
8414
+ # },
8415
+ # ],
8416
+ # dry_run: false,
8417
+ # })
8418
+ #
8419
+ # @example Response structure
8420
+ #
8421
+ # resp.object_key #=> String
8422
+ #
8423
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateStoreImageTask AWS API Documentation
8424
+ #
8425
+ # @overload create_store_image_task(params = {})
8426
+ # @param [Hash] params ({})
8427
+ def create_store_image_task(params = {}, options = {})
8428
+ req = build_request(:create_store_image_task, params)
8429
+ req.send_request(options)
8430
+ end
8431
+
8288
8432
  # Creates a subnet in a specified VPC.
8289
8433
  #
8290
8434
  # You must specify an IPv4 CIDR block for the subnet. After you create a
@@ -24726,6 +24870,98 @@ module Aws::EC2
24726
24870
  req.send_request(options)
24727
24871
  end
24728
24872
 
24873
+ # Describes the progress of the AMI store tasks. You can describe the
24874
+ # store tasks for specified AMIs. If you don't specify the AMIs, you
24875
+ # get a paginated list of store tasks from the last 31 days.
24876
+ #
24877
+ # For each AMI task, the response indicates if the task is `InProgress`,
24878
+ # `Completed`, or `Failed`. For tasks `InProgress`, the response shows
24879
+ # the estimated progress as a percentage.
24880
+ #
24881
+ # Tasks are listed in reverse chronological order. Currently, only tasks
24882
+ # from the past 31 days can be viewed.
24883
+ #
24884
+ # To use this API, you must have the required permissions. For more
24885
+ # information, see [Permissions for storing and restoring AMIs using
24886
+ # S3][1] in the *Amazon Elastic Compute Cloud User Guide*.
24887
+ #
24888
+ # For more information, see [Store and restore an AMI using S3][2] in
24889
+ # the *Amazon Elastic Compute Cloud User Guide*.
24890
+ #
24891
+ #
24892
+ #
24893
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-store-restore.html#ami-s3-permissions
24894
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-store-restore.html
24895
+ #
24896
+ # @option params [Array<String>] :image_ids
24897
+ # The AMI IDs for which to show progress. Up to 20 AMI IDs can be
24898
+ # included in a request.
24899
+ #
24900
+ # @option params [Boolean] :dry_run
24901
+ # Checks whether you have the required permissions for the action,
24902
+ # without actually making the request, and provides an error response.
24903
+ # If you have the required permissions, the error response is
24904
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
24905
+ #
24906
+ # @option params [Array<Types::Filter>] :filters
24907
+ # The filters.
24908
+ #
24909
+ # * `task-state` - Returns tasks in a certain state (`InProgress` \|
24910
+ # `Completed` \| `Failed`)
24911
+ #
24912
+ # * `bucket` - Returns task information for tasks that targeted a
24913
+ # specific bucket. For the filter value, specify the bucket name.
24914
+ #
24915
+ # @option params [String] :next_token
24916
+ # The token for the next page of results.
24917
+ #
24918
+ # @option params [Integer] :max_results
24919
+ # The maximum number of results to return in a single call. To retrieve
24920
+ # the remaining results, make another call with the returned `NextToken`
24921
+ # value. This value can be between 1 and 200. You cannot specify this
24922
+ # parameter and the `ImageIDs` parameter in the same call.
24923
+ #
24924
+ # @return [Types::DescribeStoreImageTasksResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
24925
+ #
24926
+ # * {Types::DescribeStoreImageTasksResult#store_image_task_results #store_image_task_results} => Array&lt;Types::StoreImageTaskResult&gt;
24927
+ # * {Types::DescribeStoreImageTasksResult#next_token #next_token} => String
24928
+ #
24929
+ # @example Request syntax with placeholder values
24930
+ #
24931
+ # resp = client.describe_store_image_tasks({
24932
+ # image_ids: ["ImageId"],
24933
+ # dry_run: false,
24934
+ # filters: [
24935
+ # {
24936
+ # name: "String",
24937
+ # values: ["String"],
24938
+ # },
24939
+ # ],
24940
+ # next_token: "String",
24941
+ # max_results: 1,
24942
+ # })
24943
+ #
24944
+ # @example Response structure
24945
+ #
24946
+ # resp.store_image_task_results #=> Array
24947
+ # resp.store_image_task_results[0].ami_id #=> String
24948
+ # resp.store_image_task_results[0].task_start_time #=> Time
24949
+ # resp.store_image_task_results[0].bucket #=> String
24950
+ # resp.store_image_task_results[0].s3object_key #=> String
24951
+ # resp.store_image_task_results[0].progress_percentage #=> Integer
24952
+ # resp.store_image_task_results[0].store_task_state #=> String
24953
+ # resp.store_image_task_results[0].store_task_failure_reason #=> String
24954
+ # resp.next_token #=> String
24955
+ #
24956
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeStoreImageTasks AWS API Documentation
24957
+ #
24958
+ # @overload describe_store_image_tasks(params = {})
24959
+ # @param [Hash] params ({})
24960
+ def describe_store_image_tasks(params = {}, options = {})
24961
+ req = build_request(:describe_store_image_tasks, params)
24962
+ req.send_request(options)
24963
+ end
24964
+
24729
24965
  # Describes one or more of your subnets.
24730
24966
  #
24731
24967
  # For more information, see [Your VPC and Subnets][1] in the *Amazon
@@ -41206,12 +41442,12 @@ module Aws::EC2
41206
41442
 
41207
41443
  # Unassigns one or more IPv6 addresses from a network interface.
41208
41444
  #
41209
- # @option params [required, Array<String>] :ipv_6_addresses
41210
- # The IPv6 addresses to unassign from the network interface.
41211
- #
41212
41445
  # @option params [required, String] :network_interface_id
41213
41446
  # The ID of the network interface.
41214
41447
  #
41448
+ # @option params [required, Array<String>] :ipv_6_addresses
41449
+ # The IPv6 addresses to unassign from the network interface.
41450
+ #
41215
41451
  # @return [Types::UnassignIpv6AddressesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
41216
41452
  #
41217
41453
  # * {Types::UnassignIpv6AddressesResult#network_interface_id #network_interface_id} => String
@@ -41220,8 +41456,8 @@ module Aws::EC2
41220
41456
  # @example Request syntax with placeholder values
41221
41457
  #
41222
41458
  # resp = client.unassign_ipv_6_addresses({
41223
- # ipv_6_addresses: ["String"], # required
41224
41459
  # network_interface_id: "NetworkInterfaceId", # required
41460
+ # ipv_6_addresses: ["String"], # required
41225
41461
  # })
41226
41462
  #
41227
41463
  # @example Response structure
@@ -41609,7 +41845,7 @@ module Aws::EC2
41609
41845
  params: params,
41610
41846
  config: config)
41611
41847
  context[:gem_name] = 'aws-sdk-ec2'
41612
- context[:gem_version] = '1.232.0'
41848
+ context[:gem_version] = '1.233.0'
41613
41849
  Seahorse::Client::Request.new(handlers, context)
41614
41850
  end
41615
41851
 
@@ -349,6 +349,8 @@ module Aws::EC2
349
349
  CreateReplaceRootVolumeTaskResult = Shapes::StructureShape.new(name: 'CreateReplaceRootVolumeTaskResult')
350
350
  CreateReservedInstancesListingRequest = Shapes::StructureShape.new(name: 'CreateReservedInstancesListingRequest')
351
351
  CreateReservedInstancesListingResult = Shapes::StructureShape.new(name: 'CreateReservedInstancesListingResult')
352
+ CreateRestoreImageTaskRequest = Shapes::StructureShape.new(name: 'CreateRestoreImageTaskRequest')
353
+ CreateRestoreImageTaskResult = Shapes::StructureShape.new(name: 'CreateRestoreImageTaskResult')
352
354
  CreateRouteRequest = Shapes::StructureShape.new(name: 'CreateRouteRequest')
353
355
  CreateRouteResult = Shapes::StructureShape.new(name: 'CreateRouteResult')
354
356
  CreateRouteTableRequest = Shapes::StructureShape.new(name: 'CreateRouteTableRequest')
@@ -360,6 +362,8 @@ module Aws::EC2
360
362
  CreateSnapshotsResult = Shapes::StructureShape.new(name: 'CreateSnapshotsResult')
361
363
  CreateSpotDatafeedSubscriptionRequest = Shapes::StructureShape.new(name: 'CreateSpotDatafeedSubscriptionRequest')
362
364
  CreateSpotDatafeedSubscriptionResult = Shapes::StructureShape.new(name: 'CreateSpotDatafeedSubscriptionResult')
365
+ CreateStoreImageTaskRequest = Shapes::StructureShape.new(name: 'CreateStoreImageTaskRequest')
366
+ CreateStoreImageTaskResult = Shapes::StructureShape.new(name: 'CreateStoreImageTaskResult')
363
367
  CreateSubnetRequest = Shapes::StructureShape.new(name: 'CreateSubnetRequest')
364
368
  CreateSubnetResult = Shapes::StructureShape.new(name: 'CreateSubnetResult')
365
369
  CreateTagsRequest = Shapes::StructureShape.new(name: 'CreateTagsRequest')
@@ -761,6 +765,9 @@ module Aws::EC2
761
765
  DescribeStaleSecurityGroupsNextToken = Shapes::StringShape.new(name: 'DescribeStaleSecurityGroupsNextToken')
762
766
  DescribeStaleSecurityGroupsRequest = Shapes::StructureShape.new(name: 'DescribeStaleSecurityGroupsRequest')
763
767
  DescribeStaleSecurityGroupsResult = Shapes::StructureShape.new(name: 'DescribeStaleSecurityGroupsResult')
768
+ DescribeStoreImageTasksRequest = Shapes::StructureShape.new(name: 'DescribeStoreImageTasksRequest')
769
+ DescribeStoreImageTasksRequestMaxResults = Shapes::IntegerShape.new(name: 'DescribeStoreImageTasksRequestMaxResults')
770
+ DescribeStoreImageTasksResult = Shapes::StructureShape.new(name: 'DescribeStoreImageTasksResult')
764
771
  DescribeSubnetsMaxResults = Shapes::IntegerShape.new(name: 'DescribeSubnetsMaxResults')
765
772
  DescribeSubnetsRequest = Shapes::StructureShape.new(name: 'DescribeSubnetsRequest')
766
773
  DescribeSubnetsResult = Shapes::StructureShape.new(name: 'DescribeSubnetsResult')
@@ -1151,6 +1158,7 @@ module Aws::EC2
1151
1158
  ImageDiskContainer = Shapes::StructureShape.new(name: 'ImageDiskContainer')
1152
1159
  ImageDiskContainerList = Shapes::ListShape.new(name: 'ImageDiskContainerList')
1153
1160
  ImageId = Shapes::StringShape.new(name: 'ImageId')
1161
+ ImageIdList = Shapes::ListShape.new(name: 'ImageIdList')
1154
1162
  ImageIdStringList = Shapes::ListShape.new(name: 'ImageIdStringList')
1155
1163
  ImageList = Shapes::ListShape.new(name: 'ImageList')
1156
1164
  ImageState = Shapes::StringShape.new(name: 'ImageState')
@@ -1852,6 +1860,8 @@ module Aws::EC2
1852
1860
  RunInstancesRequest = Shapes::StructureShape.new(name: 'RunInstancesRequest')
1853
1861
  RunScheduledInstancesRequest = Shapes::StructureShape.new(name: 'RunScheduledInstancesRequest')
1854
1862
  RunScheduledInstancesResult = Shapes::StructureShape.new(name: 'RunScheduledInstancesResult')
1863
+ S3ObjectTag = Shapes::StructureShape.new(name: 'S3ObjectTag')
1864
+ S3ObjectTagList = Shapes::ListShape.new(name: 'S3ObjectTagList')
1855
1865
  S3Storage = Shapes::StructureShape.new(name: 'S3Storage')
1856
1866
  ScheduledInstance = Shapes::StructureShape.new(name: 'ScheduledInstance')
1857
1867
  ScheduledInstanceAvailability = Shapes::StructureShape.new(name: 'ScheduledInstanceAvailability')
@@ -1963,6 +1973,8 @@ module Aws::EC2
1963
1973
  StopInstancesResult = Shapes::StructureShape.new(name: 'StopInstancesResult')
1964
1974
  Storage = Shapes::StructureShape.new(name: 'Storage')
1965
1975
  StorageLocation = Shapes::StructureShape.new(name: 'StorageLocation')
1976
+ StoreImageTaskResult = Shapes::StructureShape.new(name: 'StoreImageTaskResult')
1977
+ StoreImageTaskResultSet = Shapes::ListShape.new(name: 'StoreImageTaskResultSet')
1966
1978
  String = Shapes::StringShape.new(name: 'String')
1967
1979
  StringList = Shapes::ListShape.new(name: 'StringList')
1968
1980
  Subnet = Shapes::StructureShape.new(name: 'Subnet')
@@ -3548,6 +3560,16 @@ module Aws::EC2
3548
3560
  CreateReservedInstancesListingResult.add_member(:reserved_instances_listings, Shapes::ShapeRef.new(shape: ReservedInstancesListingList, location_name: "reservedInstancesListingsSet"))
3549
3561
  CreateReservedInstancesListingResult.struct_class = Types::CreateReservedInstancesListingResult
3550
3562
 
3563
+ CreateRestoreImageTaskRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Bucket"))
3564
+ CreateRestoreImageTaskRequest.add_member(:object_key, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ObjectKey"))
3565
+ CreateRestoreImageTaskRequest.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "Name"))
3566
+ CreateRestoreImageTaskRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
3567
+ CreateRestoreImageTaskRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3568
+ CreateRestoreImageTaskRequest.struct_class = Types::CreateRestoreImageTaskRequest
3569
+
3570
+ CreateRestoreImageTaskResult.add_member(:image_id, Shapes::ShapeRef.new(shape: String, location_name: "imageId"))
3571
+ CreateRestoreImageTaskResult.struct_class = Types::CreateRestoreImageTaskResult
3572
+
3551
3573
  CreateRouteRequest.add_member(:destination_cidr_block, Shapes::ShapeRef.new(shape: String, location_name: "destinationCidrBlock"))
3552
3574
  CreateRouteRequest.add_member(:destination_ipv_6_cidr_block, Shapes::ShapeRef.new(shape: String, location_name: "destinationIpv6CidrBlock"))
3553
3575
  CreateRouteRequest.add_member(:destination_prefix_list_id, Shapes::ShapeRef.new(shape: PrefixListResourceId, location_name: "DestinationPrefixListId"))
@@ -3613,6 +3635,15 @@ module Aws::EC2
3613
3635
  CreateSpotDatafeedSubscriptionResult.add_member(:spot_datafeed_subscription, Shapes::ShapeRef.new(shape: SpotDatafeedSubscription, location_name: "spotDatafeedSubscription"))
3614
3636
  CreateSpotDatafeedSubscriptionResult.struct_class = Types::CreateSpotDatafeedSubscriptionResult
3615
3637
 
3638
+ CreateStoreImageTaskRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageId, required: true, location_name: "ImageId"))
3639
+ CreateStoreImageTaskRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Bucket"))
3640
+ CreateStoreImageTaskRequest.add_member(:s3_object_tags, Shapes::ShapeRef.new(shape: S3ObjectTagList, location_name: "S3ObjectTag"))
3641
+ CreateStoreImageTaskRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3642
+ CreateStoreImageTaskRequest.struct_class = Types::CreateStoreImageTaskRequest
3643
+
3644
+ CreateStoreImageTaskResult.add_member(:object_key, Shapes::ShapeRef.new(shape: String, location_name: "objectKey"))
3645
+ CreateStoreImageTaskResult.struct_class = Types::CreateStoreImageTaskResult
3646
+
3616
3647
  CreateSubnetRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
3617
3648
  CreateSubnetRequest.add_member(:availability_zone, Shapes::ShapeRef.new(shape: String, location_name: "AvailabilityZone"))
3618
3649
  CreateSubnetRequest.add_member(:availability_zone_id, Shapes::ShapeRef.new(shape: String, location_name: "AvailabilityZoneId"))
@@ -5332,6 +5363,17 @@ module Aws::EC2
5332
5363
  DescribeStaleSecurityGroupsResult.add_member(:stale_security_group_set, Shapes::ShapeRef.new(shape: StaleSecurityGroupSet, location_name: "staleSecurityGroupSet"))
5333
5364
  DescribeStaleSecurityGroupsResult.struct_class = Types::DescribeStaleSecurityGroupsResult
5334
5365
 
5366
+ DescribeStoreImageTasksRequest.add_member(:image_ids, Shapes::ShapeRef.new(shape: ImageIdList, location_name: "ImageId"))
5367
+ DescribeStoreImageTasksRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
5368
+ DescribeStoreImageTasksRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
5369
+ DescribeStoreImageTasksRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
5370
+ DescribeStoreImageTasksRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: DescribeStoreImageTasksRequestMaxResults, location_name: "MaxResults"))
5371
+ DescribeStoreImageTasksRequest.struct_class = Types::DescribeStoreImageTasksRequest
5372
+
5373
+ DescribeStoreImageTasksResult.add_member(:store_image_task_results, Shapes::ShapeRef.new(shape: StoreImageTaskResultSet, location_name: "storeImageTaskResultSet"))
5374
+ DescribeStoreImageTasksResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
5375
+ DescribeStoreImageTasksResult.struct_class = Types::DescribeStoreImageTasksResult
5376
+
5335
5377
  DescribeSubnetsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
5336
5378
  DescribeSubnetsRequest.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: SubnetIdStringList, location_name: "SubnetId"))
5337
5379
  DescribeSubnetsRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
@@ -6820,6 +6862,8 @@ module Aws::EC2
6820
6862
 
6821
6863
  ImageDiskContainerList.member = Shapes::ShapeRef.new(shape: ImageDiskContainer, location_name: "item")
6822
6864
 
6865
+ ImageIdList.member = Shapes::ShapeRef.new(shape: ImageId, location_name: "item")
6866
+
6823
6867
  ImageIdStringList.member = Shapes::ShapeRef.new(shape: ImageId, location_name: "ImageId")
6824
6868
 
6825
6869
  ImageList.member = Shapes::ShapeRef.new(shape: Image, location_name: "item")
@@ -9544,6 +9588,12 @@ module Aws::EC2
9544
9588
  RunScheduledInstancesResult.add_member(:instance_id_set, Shapes::ShapeRef.new(shape: InstanceIdSet, location_name: "instanceIdSet"))
9545
9589
  RunScheduledInstancesResult.struct_class = Types::RunScheduledInstancesResult
9546
9590
 
9591
+ S3ObjectTag.add_member(:key, Shapes::ShapeRef.new(shape: String, location_name: "Key"))
9592
+ S3ObjectTag.add_member(:value, Shapes::ShapeRef.new(shape: String, location_name: "Value"))
9593
+ S3ObjectTag.struct_class = Types::S3ObjectTag
9594
+
9595
+ S3ObjectTagList.member = Shapes::ShapeRef.new(shape: S3ObjectTag, location_name: "item")
9596
+
9547
9597
  S3Storage.add_member(:aws_access_key_id, Shapes::ShapeRef.new(shape: String, location_name: "AWSAccessKeyId"))
9548
9598
  S3Storage.add_member(:bucket, Shapes::ShapeRef.new(shape: String, location_name: "bucket"))
9549
9599
  S3Storage.add_member(:prefix, Shapes::ShapeRef.new(shape: String, location_name: "prefix"))
@@ -10072,6 +10122,17 @@ module Aws::EC2
10072
10122
  StorageLocation.add_member(:key, Shapes::ShapeRef.new(shape: String, location_name: "Key"))
10073
10123
  StorageLocation.struct_class = Types::StorageLocation
10074
10124
 
10125
+ StoreImageTaskResult.add_member(:ami_id, Shapes::ShapeRef.new(shape: String, location_name: "amiId"))
10126
+ StoreImageTaskResult.add_member(:task_start_time, Shapes::ShapeRef.new(shape: MillisecondDateTime, location_name: "taskStartTime"))
10127
+ StoreImageTaskResult.add_member(:bucket, Shapes::ShapeRef.new(shape: String, location_name: "bucket"))
10128
+ StoreImageTaskResult.add_member(:s3object_key, Shapes::ShapeRef.new(shape: String, location_name: "s3objectKey"))
10129
+ StoreImageTaskResult.add_member(:progress_percentage, Shapes::ShapeRef.new(shape: Integer, location_name: "progressPercentage"))
10130
+ StoreImageTaskResult.add_member(:store_task_state, Shapes::ShapeRef.new(shape: String, location_name: "storeTaskState"))
10131
+ StoreImageTaskResult.add_member(:store_task_failure_reason, Shapes::ShapeRef.new(shape: String, location_name: "storeTaskFailureReason"))
10132
+ StoreImageTaskResult.struct_class = Types::StoreImageTaskResult
10133
+
10134
+ StoreImageTaskResultSet.member = Shapes::ShapeRef.new(shape: StoreImageTaskResult, location_name: "item")
10135
+
10075
10136
  StringList.member = Shapes::ShapeRef.new(shape: String, location_name: "item")
10076
10137
 
10077
10138
  Subnet.add_member(:availability_zone, Shapes::ShapeRef.new(shape: String, location_name: "availabilityZone"))
@@ -10597,8 +10658,8 @@ module Aws::EC2
10597
10658
 
10598
10659
  TunnelOptionsList.member = Shapes::ShapeRef.new(shape: TunnelOption, location_name: "item")
10599
10660
 
10600
- UnassignIpv6AddressesRequest.add_member(:ipv_6_addresses, Shapes::ShapeRef.new(shape: Ipv6AddressList, required: true, location_name: "ipv6Addresses"))
10601
10661
  UnassignIpv6AddressesRequest.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: NetworkInterfaceId, required: true, location_name: "networkInterfaceId"))
10662
+ UnassignIpv6AddressesRequest.add_member(:ipv_6_addresses, Shapes::ShapeRef.new(shape: Ipv6AddressList, required: true, location_name: "ipv6Addresses"))
10602
10663
  UnassignIpv6AddressesRequest.struct_class = Types::UnassignIpv6AddressesRequest
10603
10664
 
10604
10665
  UnassignIpv6AddressesResult.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: String, location_name: "networkInterfaceId"))
@@ -11633,6 +11694,14 @@ module Aws::EC2
11633
11694
  o.output = Shapes::ShapeRef.new(shape: CreateReservedInstancesListingResult)
11634
11695
  end)
11635
11696
 
11697
+ api.add_operation(:create_restore_image_task, Seahorse::Model::Operation.new.tap do |o|
11698
+ o.name = "CreateRestoreImageTask"
11699
+ o.http_method = "POST"
11700
+ o.http_request_uri = "/"
11701
+ o.input = Shapes::ShapeRef.new(shape: CreateRestoreImageTaskRequest)
11702
+ o.output = Shapes::ShapeRef.new(shape: CreateRestoreImageTaskResult)
11703
+ end)
11704
+
11636
11705
  api.add_operation(:create_route, Seahorse::Model::Operation.new.tap do |o|
11637
11706
  o.name = "CreateRoute"
11638
11707
  o.http_method = "POST"
@@ -11681,6 +11750,14 @@ module Aws::EC2
11681
11750
  o.output = Shapes::ShapeRef.new(shape: CreateSpotDatafeedSubscriptionResult)
11682
11751
  end)
11683
11752
 
11753
+ api.add_operation(:create_store_image_task, Seahorse::Model::Operation.new.tap do |o|
11754
+ o.name = "CreateStoreImageTask"
11755
+ o.http_method = "POST"
11756
+ o.http_request_uri = "/"
11757
+ o.input = Shapes::ShapeRef.new(shape: CreateStoreImageTaskRequest)
11758
+ o.output = Shapes::ShapeRef.new(shape: CreateStoreImageTaskResult)
11759
+ end)
11760
+
11684
11761
  api.add_operation(:create_subnet, Seahorse::Model::Operation.new.tap do |o|
11685
11762
  o.name = "CreateSubnet"
11686
11763
  o.http_method = "POST"
@@ -13444,6 +13521,14 @@ module Aws::EC2
13444
13521
  )
13445
13522
  end)
13446
13523
 
13524
+ api.add_operation(:describe_store_image_tasks, Seahorse::Model::Operation.new.tap do |o|
13525
+ o.name = "DescribeStoreImageTasks"
13526
+ o.http_method = "POST"
13527
+ o.http_request_uri = "/"
13528
+ o.input = Shapes::ShapeRef.new(shape: DescribeStoreImageTasksRequest)
13529
+ o.output = Shapes::ShapeRef.new(shape: DescribeStoreImageTasksResult)
13530
+ end)
13531
+
13447
13532
  api.add_operation(:describe_subnets, Seahorse::Model::Operation.new.tap do |o|
13448
13533
  o.name = "DescribeSubnets"
13449
13534
  o.http_method = "POST"
@@ -8569,6 +8569,83 @@ module Aws::EC2
8569
8569
  include Aws::Structure
8570
8570
  end
8571
8571
 
8572
+ # @note When making an API call, you may pass CreateRestoreImageTaskRequest
8573
+ # data as a hash:
8574
+ #
8575
+ # {
8576
+ # bucket: "String", # required
8577
+ # object_key: "String", # required
8578
+ # name: "String",
8579
+ # tag_specifications: [
8580
+ # {
8581
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, 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, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
8582
+ # tags: [
8583
+ # {
8584
+ # key: "String",
8585
+ # value: "String",
8586
+ # },
8587
+ # ],
8588
+ # },
8589
+ # ],
8590
+ # dry_run: false,
8591
+ # }
8592
+ #
8593
+ # @!attribute [rw] bucket
8594
+ # The name of the S3 bucket that contains the stored AMI object.
8595
+ # @return [String]
8596
+ #
8597
+ # @!attribute [rw] object_key
8598
+ # The name of the stored AMI object in the bucket.
8599
+ # @return [String]
8600
+ #
8601
+ # @!attribute [rw] name
8602
+ # The name for the restored AMI. The name must be unique for AMIs in
8603
+ # the Region for this account. If you do not provide a name, the new
8604
+ # AMI gets the same name as the original AMI.
8605
+ # @return [String]
8606
+ #
8607
+ # @!attribute [rw] tag_specifications
8608
+ # The tags to apply to the AMI and snapshots on restoration. You can
8609
+ # tag the AMI, the snapshots, or both.
8610
+ #
8611
+ # * To tag the AMI, the value for `ResourceType` must be `image`.
8612
+ #
8613
+ # * To tag the snapshots, the value for `ResourceType` must be
8614
+ # `snapshot`. The same tag is applied to all of the snapshots that
8615
+ # are created.
8616
+ # @return [Array<Types::TagSpecification>]
8617
+ #
8618
+ # @!attribute [rw] dry_run
8619
+ # Checks whether you have the required permissions for the action,
8620
+ # without actually making the request, and provides an error response.
8621
+ # If you have the required permissions, the error response is
8622
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
8623
+ # @return [Boolean]
8624
+ #
8625
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateRestoreImageTaskRequest AWS API Documentation
8626
+ #
8627
+ class CreateRestoreImageTaskRequest < Struct.new(
8628
+ :bucket,
8629
+ :object_key,
8630
+ :name,
8631
+ :tag_specifications,
8632
+ :dry_run)
8633
+ SENSITIVE = []
8634
+ include Aws::Structure
8635
+ end
8636
+
8637
+ # @!attribute [rw] image_id
8638
+ # The AMI ID.
8639
+ # @return [String]
8640
+ #
8641
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateRestoreImageTaskResult AWS API Documentation
8642
+ #
8643
+ class CreateRestoreImageTaskResult < Struct.new(
8644
+ :image_id)
8645
+ SENSITIVE = []
8646
+ include Aws::Structure
8647
+ end
8648
+
8572
8649
  # @note When making an API call, you may pass CreateRouteRequest
8573
8650
  # data as a hash:
8574
8651
  #
@@ -9076,6 +9153,67 @@ module Aws::EC2
9076
9153
  include Aws::Structure
9077
9154
  end
9078
9155
 
9156
+ # @note When making an API call, you may pass CreateStoreImageTaskRequest
9157
+ # data as a hash:
9158
+ #
9159
+ # {
9160
+ # image_id: "ImageId", # required
9161
+ # bucket: "String", # required
9162
+ # s3_object_tags: [
9163
+ # {
9164
+ # key: "String",
9165
+ # value: "String",
9166
+ # },
9167
+ # ],
9168
+ # dry_run: false,
9169
+ # }
9170
+ #
9171
+ # @!attribute [rw] image_id
9172
+ # The ID of the AMI.
9173
+ # @return [String]
9174
+ #
9175
+ # @!attribute [rw] bucket
9176
+ # The name of the S3 bucket in which the AMI object will be stored.
9177
+ # The bucket must be in the Region in which the request is being made.
9178
+ # The AMI object appears in the bucket only after the upload task has
9179
+ # completed.
9180
+ # @return [String]
9181
+ #
9182
+ # @!attribute [rw] s3_object_tags
9183
+ # The tags to apply to the AMI object that will be stored in the S3
9184
+ # bucket.
9185
+ # @return [Array<Types::S3ObjectTag>]
9186
+ #
9187
+ # @!attribute [rw] dry_run
9188
+ # Checks whether you have the required permissions for the action,
9189
+ # without actually making the request, and provides an error response.
9190
+ # If you have the required permissions, the error response is
9191
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
9192
+ # @return [Boolean]
9193
+ #
9194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateStoreImageTaskRequest AWS API Documentation
9195
+ #
9196
+ class CreateStoreImageTaskRequest < Struct.new(
9197
+ :image_id,
9198
+ :bucket,
9199
+ :s3_object_tags,
9200
+ :dry_run)
9201
+ SENSITIVE = []
9202
+ include Aws::Structure
9203
+ end
9204
+
9205
+ # @!attribute [rw] object_key
9206
+ # The name of the stored AMI object in the S3 bucket.
9207
+ # @return [String]
9208
+ #
9209
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateStoreImageTaskResult AWS API Documentation
9210
+ #
9211
+ class CreateStoreImageTaskResult < Struct.new(
9212
+ :object_key)
9213
+ SENSITIVE = []
9214
+ include Aws::Structure
9215
+ end
9216
+
9079
9217
  # @note When making an API call, you may pass CreateSubnetRequest
9080
9218
  # data as a hash:
9081
9219
  #
@@ -22417,6 +22555,86 @@ module Aws::EC2
22417
22555
  include Aws::Structure
22418
22556
  end
22419
22557
 
22558
+ # @note When making an API call, you may pass DescribeStoreImageTasksRequest
22559
+ # data as a hash:
22560
+ #
22561
+ # {
22562
+ # image_ids: ["ImageId"],
22563
+ # dry_run: false,
22564
+ # filters: [
22565
+ # {
22566
+ # name: "String",
22567
+ # values: ["String"],
22568
+ # },
22569
+ # ],
22570
+ # next_token: "String",
22571
+ # max_results: 1,
22572
+ # }
22573
+ #
22574
+ # @!attribute [rw] image_ids
22575
+ # The AMI IDs for which to show progress. Up to 20 AMI IDs can be
22576
+ # included in a request.
22577
+ # @return [Array<String>]
22578
+ #
22579
+ # @!attribute [rw] dry_run
22580
+ # Checks whether you have the required permissions for the action,
22581
+ # without actually making the request, and provides an error response.
22582
+ # If you have the required permissions, the error response is
22583
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
22584
+ # @return [Boolean]
22585
+ #
22586
+ # @!attribute [rw] filters
22587
+ # The filters.
22588
+ #
22589
+ # * `task-state` - Returns tasks in a certain state (`InProgress` \|
22590
+ # `Completed` \| `Failed`)
22591
+ #
22592
+ # * `bucket` - Returns task information for tasks that targeted a
22593
+ # specific bucket. For the filter value, specify the bucket name.
22594
+ # @return [Array<Types::Filter>]
22595
+ #
22596
+ # @!attribute [rw] next_token
22597
+ # The token for the next page of results.
22598
+ # @return [String]
22599
+ #
22600
+ # @!attribute [rw] max_results
22601
+ # The maximum number of results to return in a single call. To
22602
+ # retrieve the remaining results, make another call with the returned
22603
+ # `NextToken` value. This value can be between 1 and 200. You cannot
22604
+ # specify this parameter and the `ImageIDs` parameter in the same
22605
+ # call.
22606
+ # @return [Integer]
22607
+ #
22608
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeStoreImageTasksRequest AWS API Documentation
22609
+ #
22610
+ class DescribeStoreImageTasksRequest < Struct.new(
22611
+ :image_ids,
22612
+ :dry_run,
22613
+ :filters,
22614
+ :next_token,
22615
+ :max_results)
22616
+ SENSITIVE = []
22617
+ include Aws::Structure
22618
+ end
22619
+
22620
+ # @!attribute [rw] store_image_task_results
22621
+ # The information about the AMI store tasks.
22622
+ # @return [Array<Types::StoreImageTaskResult>]
22623
+ #
22624
+ # @!attribute [rw] next_token
22625
+ # The token to use to retrieve the next page of results. This value is
22626
+ # `null` when there are no more results to return.
22627
+ # @return [String]
22628
+ #
22629
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeStoreImageTasksResult AWS API Documentation
22630
+ #
22631
+ class DescribeStoreImageTasksResult < Struct.new(
22632
+ :store_image_task_results,
22633
+ :next_token)
22634
+ SENSITIVE = []
22635
+ include Aws::Structure
22636
+ end
22637
+
22420
22638
  # @note When making an API call, you may pass DescribeSubnetsRequest
22421
22639
  # data as a hash:
22422
22640
  #
@@ -48256,6 +48474,45 @@ module Aws::EC2
48256
48474
  include Aws::Structure
48257
48475
  end
48258
48476
 
48477
+ # The tags to apply to the AMI object that will be stored in the S3
48478
+ # bucket. For more information, see [Categorizing your storage using
48479
+ # tags][1] in the *Amazon Simple Storage Service User Guide*.
48480
+ #
48481
+ #
48482
+ #
48483
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html
48484
+ #
48485
+ # @note When making an API call, you may pass S3ObjectTag
48486
+ # data as a hash:
48487
+ #
48488
+ # {
48489
+ # key: "String",
48490
+ # value: "String",
48491
+ # }
48492
+ #
48493
+ # @!attribute [rw] key
48494
+ # The key of the tag.
48495
+ #
48496
+ # Constraints: Tag keys are case-sensitive and can be up to 128
48497
+ # Unicode characters in length. May not begin with `aws`\:.
48498
+ # @return [String]
48499
+ #
48500
+ # @!attribute [rw] value
48501
+ # The value of the tag.
48502
+ #
48503
+ # Constraints: Tag values are case-sensitive and can be up to 256
48504
+ # Unicode characters in length.
48505
+ # @return [String]
48506
+ #
48507
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/S3ObjectTag AWS API Documentation
48508
+ #
48509
+ class S3ObjectTag < Struct.new(
48510
+ :key,
48511
+ :value)
48512
+ SENSITIVE = []
48513
+ include Aws::Structure
48514
+ end
48515
+
48259
48516
  # Describes the storage parameters for S3 and S3 buckets for an instance
48260
48517
  # store-backed AMI.
48261
48518
  #
@@ -51861,6 +52118,53 @@ module Aws::EC2
51861
52118
  include Aws::Structure
51862
52119
  end
51863
52120
 
52121
+ # The information about the AMI store task, including the progress of
52122
+ # the task.
52123
+ #
52124
+ # @!attribute [rw] ami_id
52125
+ # The ID of the AMI that is being stored.
52126
+ # @return [String]
52127
+ #
52128
+ # @!attribute [rw] task_start_time
52129
+ # The time the task started.
52130
+ # @return [Time]
52131
+ #
52132
+ # @!attribute [rw] bucket
52133
+ # The name of the S3 bucket that contains the stored AMI object.
52134
+ # @return [String]
52135
+ #
52136
+ # @!attribute [rw] s3object_key
52137
+ # The name of the stored AMI object in the bucket.
52138
+ # @return [String]
52139
+ #
52140
+ # @!attribute [rw] progress_percentage
52141
+ # The progress of the task as a percentage.
52142
+ # @return [Integer]
52143
+ #
52144
+ # @!attribute [rw] store_task_state
52145
+ # The state of the store task (`InProgress`, `Completed`, or
52146
+ # `Failed`).
52147
+ # @return [String]
52148
+ #
52149
+ # @!attribute [rw] store_task_failure_reason
52150
+ # If the tasks fails, the reason for the failure is returned. If the
52151
+ # task succeeds, `null` is returned.
52152
+ # @return [String]
52153
+ #
52154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StoreImageTaskResult AWS API Documentation
52155
+ #
52156
+ class StoreImageTaskResult < Struct.new(
52157
+ :ami_id,
52158
+ :task_start_time,
52159
+ :bucket,
52160
+ :s3object_key,
52161
+ :progress_percentage,
52162
+ :store_task_state,
52163
+ :store_task_failure_reason)
52164
+ SENSITIVE = []
52165
+ include Aws::Structure
52166
+ end
52167
+
51864
52168
  # Describes a subnet.
51865
52169
  #
51866
52170
  # @!attribute [rw] availability_zone
@@ -54184,23 +54488,23 @@ module Aws::EC2
54184
54488
  # data as a hash:
54185
54489
  #
54186
54490
  # {
54187
- # ipv_6_addresses: ["String"], # required
54188
54491
  # network_interface_id: "NetworkInterfaceId", # required
54492
+ # ipv_6_addresses: ["String"], # required
54189
54493
  # }
54190
54494
  #
54191
- # @!attribute [rw] ipv_6_addresses
54192
- # The IPv6 addresses to unassign from the network interface.
54193
- # @return [Array<String>]
54194
- #
54195
54495
  # @!attribute [rw] network_interface_id
54196
54496
  # The ID of the network interface.
54197
54497
  # @return [String]
54198
54498
  #
54499
+ # @!attribute [rw] ipv_6_addresses
54500
+ # The IPv6 addresses to unassign from the network interface.
54501
+ # @return [Array<String>]
54502
+ #
54199
54503
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnassignIpv6AddressesRequest AWS API Documentation
54200
54504
  #
54201
54505
  class UnassignIpv6AddressesRequest < Struct.new(
54202
- :ipv_6_addresses,
54203
- :network_interface_id)
54506
+ :network_interface_id,
54507
+ :ipv_6_addresses)
54204
54508
  SENSITIVE = []
54205
54509
  include Aws::Structure
54206
54510
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ec2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.232.0
4
+ version: 1.233.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-01 00:00:00.000000000 Z
11
+ date: 2021-04-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sigv4