aws-sdk-ec2 1.230.0 → 1.231.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: 5a9c5e02df8853670004607b714b5e20f70ad6a4d5d9ca53b3c98448783cef0d
4
- data.tar.gz: 2b6f327d98c7e63195133c275538a89dc936855faf9c18f71f8ec76c3fc3a012
3
+ metadata.gz: 634b0eb7092e5c8ef3df3598e91f315f72175db5e96fa5a20b8feb5e94347bc1
4
+ data.tar.gz: 256bace9cbf72c7492b3b771de0a2796ca2a5f6bf31201189326badd5372f87a
5
5
  SHA512:
6
- metadata.gz: d6ffc5a2e80e6d17187c9055fffe2458bbe59a224668ccae7395c997d60e67d2544d3b4b0b63c0203a6be1003d5df1c33f84b9e072d0cb8f1d70717764f165f4
7
- data.tar.gz: 5badb6f4c305b29018eef6f6452bd545265b58c05f6e18ab94fa0dde6dab84feb577176128df75eaba5fd7597ed26f5a47e073e5f18e1b5f3f747dd247031e3f
6
+ metadata.gz: 473c91ee60600258448be2d617a53a76a92d405fee35348e2254486289ca85ad6365012b9dfccc5b980aaa9c6658f73cd20295254ade219835c0966dc586c0fb
7
+ data.tar.gz: 54ac4a0ab91886ce284050ea8ac6d4b8419fbad007b8b9b8ea56e4e40b97f4baed68461ae370bd20786353bec36b13dc0edc9fa2a04b1cbd537fe4f10f8edd25
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.231.0 (2021-03-30)
5
+ ------------------
6
+
7
+ * Feature - ReplaceRootVolume feature enables customers to replace the EBS root volume of a running instance to a previously known state. Add support to grant account-level access to the EC2 serial console
8
+
4
9
  1.230.0 (2021-03-24)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.230.0
1
+ 1.231.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.230.0'
75
+ GEM_VERSION = '1.231.0'
76
76
 
77
77
  end
@@ -1476,19 +1476,20 @@ module Aws::EC2
1476
1476
  # inside an enclave. For more information, see [AWS Certificate Manager
1477
1477
  # for Nitro Enclaves][1] in the *AWS Nitro Enclaves User Guide*.
1478
1478
  #
1479
- # When the IAM role is associated with the ACM certificate, places the
1480
- # certificate, certificate chain, and encrypted private key in an Amazon
1481
- # S3 bucket that only the associated IAM role can access. The private
1482
- # key of the certificate is encrypted with an AWS-managed KMS customer
1483
- # master (CMK) that has an attached attestation-based CMK policy.
1479
+ # When the IAM role is associated with the ACM certificate, the
1480
+ # certificate, certificate chain, and encrypted private key are placed
1481
+ # in an Amazon S3 bucket that only the associated IAM role can access.
1482
+ # The private key of the certificate is encrypted with an AWS-managed
1483
+ # KMS customer master (CMK) that has an attached attestation-based CMK
1484
+ # policy.
1484
1485
  #
1485
1486
  # To enable the IAM role to access the Amazon S3 object, you must grant
1486
1487
  # it permission to call `s3:GetObject` on the Amazon S3 bucket returned
1487
1488
  # by the command. To enable the IAM role to access the AWS KMS CMK, you
1488
- # must grant it permission to call `kms:Decrypt` on AWS KMS CMK returned
1489
- # by the command. For more information, see [ Grant the role permission
1490
- # to access the certificate and encryption key][2] in the *AWS Nitro
1491
- # Enclaves User Guide*.
1489
+ # must grant it permission to call `kms:Decrypt` on the AWS KMS CMK
1490
+ # returned by the command. For more information, see [ Grant the role
1491
+ # permission to access the certificate and encryption key][2] in the
1492
+ # *AWS Nitro Enclaves User Guide*.
1492
1493
  #
1493
1494
  #
1494
1495
  #
@@ -7356,6 +7357,91 @@ module Aws::EC2
7356
7357
  req.send_request(options)
7357
7358
  end
7358
7359
 
7360
+ # Creates a root volume replacement task for an Amazon EC2 instance. The
7361
+ # root volume can either be restored to its initial launch state, or it
7362
+ # can be restored using a specific snapshot.
7363
+ #
7364
+ # For more information, see [Replace a root volume][1] in the *Amazon
7365
+ # Elastic Compute Cloud User Guide*.
7366
+ #
7367
+ #
7368
+ #
7369
+ # [1]: https://docs.aws.amazon.com/
7370
+ #
7371
+ # @option params [required, String] :instance_id
7372
+ # The ID of the instance for which to replace the root volume.
7373
+ #
7374
+ # @option params [String] :snapshot_id
7375
+ # The ID of the snapshot from which to restore the replacement root
7376
+ # volume. If you want to restore the volume to the initial launch state,
7377
+ # omit this parameter.
7378
+ #
7379
+ # @option params [String] :client_token
7380
+ # Unique, case-sensitive identifier you provide to ensure the
7381
+ # idempotency of the request. If you do not specify a client token, a
7382
+ # randomly generated token is used for the request to ensure
7383
+ # idempotency. For more information, see [Ensuring Idempotency][1].
7384
+ #
7385
+ # **A suitable default value is auto-generated.** You should normally
7386
+ # not need to pass this option.**
7387
+ #
7388
+ #
7389
+ #
7390
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
7391
+ #
7392
+ # @option params [Boolean] :dry_run
7393
+ # Checks whether you have the required permissions for the action,
7394
+ # without actually making the request, and provides an error response.
7395
+ # If you have the required permissions, the error response is
7396
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
7397
+ #
7398
+ # @option params [Array<Types::TagSpecification>] :tag_specifications
7399
+ # The tags to apply to the root volume replacement task.
7400
+ #
7401
+ # @return [Types::CreateReplaceRootVolumeTaskResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7402
+ #
7403
+ # * {Types::CreateReplaceRootVolumeTaskResult#replace_root_volume_task #replace_root_volume_task} => Types::ReplaceRootVolumeTask
7404
+ #
7405
+ # @example Request syntax with placeholder values
7406
+ #
7407
+ # resp = client.create_replace_root_volume_task({
7408
+ # instance_id: "InstanceId", # required
7409
+ # snapshot_id: "SnapshotId",
7410
+ # client_token: "String",
7411
+ # dry_run: false,
7412
+ # tag_specifications: [
7413
+ # {
7414
+ # 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
7415
+ # tags: [
7416
+ # {
7417
+ # key: "String",
7418
+ # value: "String",
7419
+ # },
7420
+ # ],
7421
+ # },
7422
+ # ],
7423
+ # })
7424
+ #
7425
+ # @example Response structure
7426
+ #
7427
+ # resp.replace_root_volume_task.replace_root_volume_task_id #=> String
7428
+ # resp.replace_root_volume_task.instance_id #=> String
7429
+ # resp.replace_root_volume_task.task_state #=> String, one of "pending", "in-progress", "failing", "succeeded", "failed", "failed-detached"
7430
+ # resp.replace_root_volume_task.start_time #=> String
7431
+ # resp.replace_root_volume_task.complete_time #=> String
7432
+ # resp.replace_root_volume_task.tags #=> Array
7433
+ # resp.replace_root_volume_task.tags[0].key #=> String
7434
+ # resp.replace_root_volume_task.tags[0].value #=> String
7435
+ #
7436
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateReplaceRootVolumeTask AWS API Documentation
7437
+ #
7438
+ # @overload create_replace_root_volume_task(params = {})
7439
+ # @param [Hash] params ({})
7440
+ def create_replace_root_volume_task(params = {}, options = {})
7441
+ req = build_request(:create_replace_root_volume_task, params)
7442
+ req.send_request(options)
7443
+ end
7444
+
7359
7445
  # Creates a listing for Amazon EC2 Standard Reserved Instances to be
7360
7446
  # sold in the Reserved Instance Marketplace. You can submit one Standard
7361
7447
  # Reserved Instance listing at a time. To get a list of your Standard
@@ -21814,6 +21900,83 @@ module Aws::EC2
21814
21900
  req.send_request(options)
21815
21901
  end
21816
21902
 
21903
+ # Describes a root volume replacement task. For more information, see
21904
+ # [Replace a root volume][1] in the *Amazon Elastic Compute Cloud User
21905
+ # Guide*.
21906
+ #
21907
+ #
21908
+ #
21909
+ # [1]: https://docs.aws.amazon.com/
21910
+ #
21911
+ # @option params [Array<String>] :replace_root_volume_task_ids
21912
+ # The ID of the root volume replacement task to view.
21913
+ #
21914
+ # @option params [Array<Types::Filter>] :filters
21915
+ # Filter to use:
21916
+ #
21917
+ # * `instance-id` - The ID of the instance for which the root volume
21918
+ # replacement task was created.
21919
+ #
21920
+ # ^
21921
+ #
21922
+ # @option params [Integer] :max_results
21923
+ # The maximum number of results to return with a single call. To
21924
+ # retrieve the remaining results, make another call with the returned
21925
+ # `nextToken` value.
21926
+ #
21927
+ # @option params [String] :next_token
21928
+ # The token for the next page of results.
21929
+ #
21930
+ # @option params [Boolean] :dry_run
21931
+ # Checks whether you have the required permissions for the action,
21932
+ # without actually making the request, and provides an error response.
21933
+ # If you have the required permissions, the error response is
21934
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
21935
+ #
21936
+ # @return [Types::DescribeReplaceRootVolumeTasksResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
21937
+ #
21938
+ # * {Types::DescribeReplaceRootVolumeTasksResult#replace_root_volume_tasks #replace_root_volume_tasks} => Array&lt;Types::ReplaceRootVolumeTask&gt;
21939
+ # * {Types::DescribeReplaceRootVolumeTasksResult#next_token #next_token} => String
21940
+ #
21941
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
21942
+ #
21943
+ # @example Request syntax with placeholder values
21944
+ #
21945
+ # resp = client.describe_replace_root_volume_tasks({
21946
+ # replace_root_volume_task_ids: ["ReplaceRootVolumeTaskId"],
21947
+ # filters: [
21948
+ # {
21949
+ # name: "String",
21950
+ # values: ["String"],
21951
+ # },
21952
+ # ],
21953
+ # max_results: 1,
21954
+ # next_token: "NextToken",
21955
+ # dry_run: false,
21956
+ # })
21957
+ #
21958
+ # @example Response structure
21959
+ #
21960
+ # resp.replace_root_volume_tasks #=> Array
21961
+ # resp.replace_root_volume_tasks[0].replace_root_volume_task_id #=> String
21962
+ # resp.replace_root_volume_tasks[0].instance_id #=> String
21963
+ # resp.replace_root_volume_tasks[0].task_state #=> String, one of "pending", "in-progress", "failing", "succeeded", "failed", "failed-detached"
21964
+ # resp.replace_root_volume_tasks[0].start_time #=> String
21965
+ # resp.replace_root_volume_tasks[0].complete_time #=> String
21966
+ # resp.replace_root_volume_tasks[0].tags #=> Array
21967
+ # resp.replace_root_volume_tasks[0].tags[0].key #=> String
21968
+ # resp.replace_root_volume_tasks[0].tags[0].value #=> String
21969
+ # resp.next_token #=> String
21970
+ #
21971
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReplaceRootVolumeTasks AWS API Documentation
21972
+ #
21973
+ # @overload describe_replace_root_volume_tasks(params = {})
21974
+ # @param [Hash] params ({})
21975
+ def describe_replace_root_volume_tasks(params = {}, options = {})
21976
+ req = build_request(:describe_replace_root_volume_tasks, params)
21977
+ req.send_request(options)
21978
+ end
21979
+
21817
21980
  # Describes one or more of the Reserved Instances that you purchased.
21818
21981
  #
21819
21982
  # For more information about Reserved Instances, see [Reserved
@@ -28197,6 +28360,44 @@ module Aws::EC2
28197
28360
  req.send_request(options)
28198
28361
  end
28199
28362
 
28363
+ # Disables access to the EC2 serial console of all instances for your
28364
+ # account. By default, access to the EC2 serial console is disabled for
28365
+ # your account. For more information, see [Manage account access to the
28366
+ # EC2 serial console][1] in the *Amazon EC2 User Guide*.
28367
+ #
28368
+ #
28369
+ #
28370
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configure-access-to-serial-console.html#serial-console-account-access
28371
+ #
28372
+ # @option params [Boolean] :dry_run
28373
+ # Checks whether you have the required permissions for the action,
28374
+ # without actually making the request, and provides an error response.
28375
+ # If you have the required permissions, the error response is
28376
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
28377
+ #
28378
+ # @return [Types::DisableSerialConsoleAccessResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
28379
+ #
28380
+ # * {Types::DisableSerialConsoleAccessResult#serial_console_access_enabled #serial_console_access_enabled} => Boolean
28381
+ #
28382
+ # @example Request syntax with placeholder values
28383
+ #
28384
+ # resp = client.disable_serial_console_access({
28385
+ # dry_run: false,
28386
+ # })
28387
+ #
28388
+ # @example Response structure
28389
+ #
28390
+ # resp.serial_console_access_enabled #=> Boolean
28391
+ #
28392
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableSerialConsoleAccess AWS API Documentation
28393
+ #
28394
+ # @overload disable_serial_console_access(params = {})
28395
+ # @param [Hash] params ({})
28396
+ def disable_serial_console_access(params = {}, options = {})
28397
+ req = build_request(:disable_serial_console_access, params)
28398
+ req.send_request(options)
28399
+ end
28400
+
28200
28401
  # Disables the specified resource attachment from propagating routes to
28201
28402
  # the specified propagation route table.
28202
28403
  #
@@ -28809,10 +29010,10 @@ module Aws::EC2
28809
29010
  # Region.
28810
29011
  #
28811
29012
  # After you enable encryption by default, the EBS volumes that you
28812
- # create are are always encrypted, either using the default CMK or the
28813
- # CMK that you specified when you created each volume. For more
28814
- # information, see [Amazon EBS encryption][1] in the *Amazon Elastic
28815
- # Compute Cloud User Guide*.
29013
+ # create are always encrypted, either using the default CMK or the CMK
29014
+ # that you specified when you created each volume. For more information,
29015
+ # see [Amazon EBS encryption][1] in the *Amazon Elastic Compute Cloud
29016
+ # User Guide*.
28816
29017
  #
28817
29018
  # You can specify the default CMK for encryption by default using
28818
29019
  # ModifyEbsDefaultKmsKeyId or ResetEbsDefaultKmsKeyId.
@@ -28930,6 +29131,44 @@ module Aws::EC2
28930
29131
  req.send_request(options)
28931
29132
  end
28932
29133
 
29134
+ # Enables access to the EC2 serial console of all instances for your
29135
+ # account. By default, access to the EC2 serial console is disabled for
29136
+ # your account. For more information, see [Manage account access to the
29137
+ # EC2 serial console][1] in the *Amazon EC2 User Guide*.
29138
+ #
29139
+ #
29140
+ #
29141
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configure-access-to-serial-console.html#serial-console-account-access
29142
+ #
29143
+ # @option params [Boolean] :dry_run
29144
+ # Checks whether you have the required permissions for the action,
29145
+ # without actually making the request, and provides an error response.
29146
+ # If you have the required permissions, the error response is
29147
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
29148
+ #
29149
+ # @return [Types::EnableSerialConsoleAccessResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
29150
+ #
29151
+ # * {Types::EnableSerialConsoleAccessResult#serial_console_access_enabled #serial_console_access_enabled} => Boolean
29152
+ #
29153
+ # @example Request syntax with placeholder values
29154
+ #
29155
+ # resp = client.enable_serial_console_access({
29156
+ # dry_run: false,
29157
+ # })
29158
+ #
29159
+ # @example Response structure
29160
+ #
29161
+ # resp.serial_console_access_enabled #=> Boolean
29162
+ #
29163
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableSerialConsoleAccess AWS API Documentation
29164
+ #
29165
+ # @overload enable_serial_console_access(params = {})
29166
+ # @param [Hash] params ({})
29167
+ def enable_serial_console_access(params = {}, options = {})
29168
+ req = build_request(:enable_serial_console_access, params)
29169
+ req.send_request(options)
29170
+ end
29171
+
28933
29172
  # Enables the specified attachment to propagate routes to the specified
28934
29173
  # propagation route table.
28935
29174
  #
@@ -30466,6 +30705,44 @@ module Aws::EC2
30466
30705
  req.send_request(options)
30467
30706
  end
30468
30707
 
30708
+ # Retrieves the access status of your account to the EC2 serial console
30709
+ # of all instances. By default, access to the EC2 serial console is
30710
+ # disabled for your account. For more information, see [Manage account
30711
+ # access to the EC2 serial console][1] in the *Amazon EC2 User Guide*.
30712
+ #
30713
+ #
30714
+ #
30715
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configure-access-to-serial-console.html#serial-console-account-access
30716
+ #
30717
+ # @option params [Boolean] :dry_run
30718
+ # Checks whether you have the required permissions for the action,
30719
+ # without actually making the request, and provides an error response.
30720
+ # If you have the required permissions, the error response is
30721
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
30722
+ #
30723
+ # @return [Types::GetSerialConsoleAccessStatusResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
30724
+ #
30725
+ # * {Types::GetSerialConsoleAccessStatusResult#serial_console_access_enabled #serial_console_access_enabled} => Boolean
30726
+ #
30727
+ # @example Request syntax with placeholder values
30728
+ #
30729
+ # resp = client.get_serial_console_access_status({
30730
+ # dry_run: false,
30731
+ # })
30732
+ #
30733
+ # @example Response structure
30734
+ #
30735
+ # resp.serial_console_access_enabled #=> Boolean
30736
+ #
30737
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSerialConsoleAccessStatus AWS API Documentation
30738
+ #
30739
+ # @overload get_serial_console_access_status(params = {})
30740
+ # @param [Hash] params ({})
30741
+ def get_serial_console_access_status(params = {}, options = {})
30742
+ req = build_request(:get_serial_console_access_status, params)
30743
+ req.send_request(options)
30744
+ end
30745
+
30469
30746
  # Lists the route tables to which the specified resource attachment
30470
30747
  # propagates routes.
30471
30748
  #
@@ -34337,7 +34614,8 @@ module Aws::EC2
34337
34614
  # * `io2`\: 100-64,000 IOPS
34338
34615
  #
34339
34616
  # Default: If no IOPS value is specified, the existing value is
34340
- # retained.
34617
+ # retained, unless a volume type is modified that supports different
34618
+ # values.
34341
34619
  #
34342
34620
  # @option params [Integer] :throughput
34343
34621
  # The target throughput of the volume, in MiB/s. This parameter is valid
@@ -41262,7 +41540,7 @@ module Aws::EC2
41262
41540
  params: params,
41263
41541
  config: config)
41264
41542
  context[:gem_name] = 'aws-sdk-ec2'
41265
- context[:gem_version] = '1.230.0'
41543
+ context[:gem_version] = '1.231.0'
41266
41544
  Seahorse::Client::Request.new(handlers, context)
41267
41545
  end
41268
41546
 
@@ -343,6 +343,8 @@ module Aws::EC2
343
343
  CreateNetworkInterfaceResult = Shapes::StructureShape.new(name: 'CreateNetworkInterfaceResult')
344
344
  CreatePlacementGroupRequest = Shapes::StructureShape.new(name: 'CreatePlacementGroupRequest')
345
345
  CreatePlacementGroupResult = Shapes::StructureShape.new(name: 'CreatePlacementGroupResult')
346
+ CreateReplaceRootVolumeTaskRequest = Shapes::StructureShape.new(name: 'CreateReplaceRootVolumeTaskRequest')
347
+ CreateReplaceRootVolumeTaskResult = Shapes::StructureShape.new(name: 'CreateReplaceRootVolumeTaskResult')
346
348
  CreateReservedInstancesListingRequest = Shapes::StructureShape.new(name: 'CreateReservedInstancesListingRequest')
347
349
  CreateReservedInstancesListingResult = Shapes::StructureShape.new(name: 'CreateReservedInstancesListingResult')
348
350
  CreateRouteRequest = Shapes::StructureShape.new(name: 'CreateRouteRequest')
@@ -711,6 +713,9 @@ module Aws::EC2
711
713
  DescribePublicIpv4PoolsResult = Shapes::StructureShape.new(name: 'DescribePublicIpv4PoolsResult')
712
714
  DescribeRegionsRequest = Shapes::StructureShape.new(name: 'DescribeRegionsRequest')
713
715
  DescribeRegionsResult = Shapes::StructureShape.new(name: 'DescribeRegionsResult')
716
+ DescribeReplaceRootVolumeTasksMaxResults = Shapes::IntegerShape.new(name: 'DescribeReplaceRootVolumeTasksMaxResults')
717
+ DescribeReplaceRootVolumeTasksRequest = Shapes::StructureShape.new(name: 'DescribeReplaceRootVolumeTasksRequest')
718
+ DescribeReplaceRootVolumeTasksResult = Shapes::StructureShape.new(name: 'DescribeReplaceRootVolumeTasksResult')
714
719
  DescribeReservedInstancesListingsRequest = Shapes::StructureShape.new(name: 'DescribeReservedInstancesListingsRequest')
715
720
  DescribeReservedInstancesListingsResult = Shapes::StructureShape.new(name: 'DescribeReservedInstancesListingsResult')
716
721
  DescribeReservedInstancesModificationsRequest = Shapes::StructureShape.new(name: 'DescribeReservedInstancesModificationsRequest')
@@ -846,6 +851,8 @@ module Aws::EC2
846
851
  DisableFastSnapshotRestoreSuccessSet = Shapes::ListShape.new(name: 'DisableFastSnapshotRestoreSuccessSet')
847
852
  DisableFastSnapshotRestoresRequest = Shapes::StructureShape.new(name: 'DisableFastSnapshotRestoresRequest')
848
853
  DisableFastSnapshotRestoresResult = Shapes::StructureShape.new(name: 'DisableFastSnapshotRestoresResult')
854
+ DisableSerialConsoleAccessRequest = Shapes::StructureShape.new(name: 'DisableSerialConsoleAccessRequest')
855
+ DisableSerialConsoleAccessResult = Shapes::StructureShape.new(name: 'DisableSerialConsoleAccessResult')
849
856
  DisableTransitGatewayRouteTablePropagationRequest = Shapes::StructureShape.new(name: 'DisableTransitGatewayRouteTablePropagationRequest')
850
857
  DisableTransitGatewayRouteTablePropagationResult = Shapes::StructureShape.new(name: 'DisableTransitGatewayRouteTablePropagationResult')
851
858
  DisableVgwRoutePropagationRequest = Shapes::StructureShape.new(name: 'DisableVgwRoutePropagationRequest')
@@ -933,6 +940,8 @@ module Aws::EC2
933
940
  EnableFastSnapshotRestoreSuccessSet = Shapes::ListShape.new(name: 'EnableFastSnapshotRestoreSuccessSet')
934
941
  EnableFastSnapshotRestoresRequest = Shapes::StructureShape.new(name: 'EnableFastSnapshotRestoresRequest')
935
942
  EnableFastSnapshotRestoresResult = Shapes::StructureShape.new(name: 'EnableFastSnapshotRestoresResult')
943
+ EnableSerialConsoleAccessRequest = Shapes::StructureShape.new(name: 'EnableSerialConsoleAccessRequest')
944
+ EnableSerialConsoleAccessResult = Shapes::StructureShape.new(name: 'EnableSerialConsoleAccessResult')
936
945
  EnableTransitGatewayRouteTablePropagationRequest = Shapes::StructureShape.new(name: 'EnableTransitGatewayRouteTablePropagationRequest')
937
946
  EnableTransitGatewayRouteTablePropagationResult = Shapes::StructureShape.new(name: 'EnableTransitGatewayRouteTablePropagationResult')
938
947
  EnableVgwRoutePropagationRequest = Shapes::StructureShape.new(name: 'EnableVgwRoutePropagationRequest')
@@ -1070,6 +1079,8 @@ module Aws::EC2
1070
1079
  GetPasswordDataResult = Shapes::StructureShape.new(name: 'GetPasswordDataResult')
1071
1080
  GetReservedInstancesExchangeQuoteRequest = Shapes::StructureShape.new(name: 'GetReservedInstancesExchangeQuoteRequest')
1072
1081
  GetReservedInstancesExchangeQuoteResult = Shapes::StructureShape.new(name: 'GetReservedInstancesExchangeQuoteResult')
1082
+ GetSerialConsoleAccessStatusRequest = Shapes::StructureShape.new(name: 'GetSerialConsoleAccessStatusRequest')
1083
+ GetSerialConsoleAccessStatusResult = Shapes::StructureShape.new(name: 'GetSerialConsoleAccessStatusResult')
1073
1084
  GetTransitGatewayAttachmentPropagationsRequest = Shapes::StructureShape.new(name: 'GetTransitGatewayAttachmentPropagationsRequest')
1074
1085
  GetTransitGatewayAttachmentPropagationsResult = Shapes::StructureShape.new(name: 'GetTransitGatewayAttachmentPropagationsResult')
1075
1086
  GetTransitGatewayMulticastDomainAssociationsRequest = Shapes::StructureShape.new(name: 'GetTransitGatewayMulticastDomainAssociationsRequest')
@@ -1728,6 +1739,11 @@ module Aws::EC2
1728
1739
  ReplaceNetworkAclAssociationRequest = Shapes::StructureShape.new(name: 'ReplaceNetworkAclAssociationRequest')
1729
1740
  ReplaceNetworkAclAssociationResult = Shapes::StructureShape.new(name: 'ReplaceNetworkAclAssociationResult')
1730
1741
  ReplaceNetworkAclEntryRequest = Shapes::StructureShape.new(name: 'ReplaceNetworkAclEntryRequest')
1742
+ ReplaceRootVolumeTask = Shapes::StructureShape.new(name: 'ReplaceRootVolumeTask')
1743
+ ReplaceRootVolumeTaskId = Shapes::StringShape.new(name: 'ReplaceRootVolumeTaskId')
1744
+ ReplaceRootVolumeTaskIds = Shapes::ListShape.new(name: 'ReplaceRootVolumeTaskIds')
1745
+ ReplaceRootVolumeTaskState = Shapes::StringShape.new(name: 'ReplaceRootVolumeTaskState')
1746
+ ReplaceRootVolumeTasks = Shapes::ListShape.new(name: 'ReplaceRootVolumeTasks')
1731
1747
  ReplaceRouteRequest = Shapes::StructureShape.new(name: 'ReplaceRouteRequest')
1732
1748
  ReplaceRouteTableAssociationRequest = Shapes::StructureShape.new(name: 'ReplaceRouteTableAssociationRequest')
1733
1749
  ReplaceRouteTableAssociationResult = Shapes::StructureShape.new(name: 'ReplaceRouteTableAssociationResult')
@@ -3499,6 +3515,16 @@ module Aws::EC2
3499
3515
  CreatePlacementGroupResult.add_member(:placement_group, Shapes::ShapeRef.new(shape: PlacementGroup, location_name: "placementGroup"))
3500
3516
  CreatePlacementGroupResult.struct_class = Types::CreatePlacementGroupResult
3501
3517
 
3518
+ CreateReplaceRootVolumeTaskRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location_name: "InstanceId"))
3519
+ CreateReplaceRootVolumeTaskRequest.add_member(:snapshot_id, Shapes::ShapeRef.new(shape: SnapshotId, location_name: "SnapshotId"))
3520
+ CreateReplaceRootVolumeTaskRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: String, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
3521
+ CreateReplaceRootVolumeTaskRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3522
+ CreateReplaceRootVolumeTaskRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
3523
+ CreateReplaceRootVolumeTaskRequest.struct_class = Types::CreateReplaceRootVolumeTaskRequest
3524
+
3525
+ CreateReplaceRootVolumeTaskResult.add_member(:replace_root_volume_task, Shapes::ShapeRef.new(shape: ReplaceRootVolumeTask, location_name: "replaceRootVolumeTask"))
3526
+ CreateReplaceRootVolumeTaskResult.struct_class = Types::CreateReplaceRootVolumeTaskResult
3527
+
3502
3528
  CreateReservedInstancesListingRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: String, required: true, location_name: "clientToken"))
3503
3529
  CreateReservedInstancesListingRequest.add_member(:instance_count, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "instanceCount"))
3504
3530
  CreateReservedInstancesListingRequest.add_member(:price_schedules, Shapes::ShapeRef.new(shape: PriceScheduleSpecificationList, required: true, location_name: "priceSchedules"))
@@ -5076,6 +5102,17 @@ module Aws::EC2
5076
5102
  DescribeRegionsResult.add_member(:regions, Shapes::ShapeRef.new(shape: RegionList, location_name: "regionInfo"))
5077
5103
  DescribeRegionsResult.struct_class = Types::DescribeRegionsResult
5078
5104
 
5105
+ DescribeReplaceRootVolumeTasksRequest.add_member(:replace_root_volume_task_ids, Shapes::ShapeRef.new(shape: ReplaceRootVolumeTaskIds, location_name: "ReplaceRootVolumeTaskId"))
5106
+ DescribeReplaceRootVolumeTasksRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
5107
+ DescribeReplaceRootVolumeTasksRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: DescribeReplaceRootVolumeTasksMaxResults, location_name: "MaxResults"))
5108
+ DescribeReplaceRootVolumeTasksRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
5109
+ DescribeReplaceRootVolumeTasksRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
5110
+ DescribeReplaceRootVolumeTasksRequest.struct_class = Types::DescribeReplaceRootVolumeTasksRequest
5111
+
5112
+ DescribeReplaceRootVolumeTasksResult.add_member(:replace_root_volume_tasks, Shapes::ShapeRef.new(shape: ReplaceRootVolumeTasks, location_name: "replaceRootVolumeTaskSet"))
5113
+ DescribeReplaceRootVolumeTasksResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
5114
+ DescribeReplaceRootVolumeTasksResult.struct_class = Types::DescribeReplaceRootVolumeTasksResult
5115
+
5079
5116
  DescribeReservedInstancesListingsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
5080
5117
  DescribeReservedInstancesListingsRequest.add_member(:reserved_instances_id, Shapes::ShapeRef.new(shape: ReservationId, location_name: "reservedInstancesId"))
5081
5118
  DescribeReservedInstancesListingsRequest.add_member(:reserved_instances_listing_id, Shapes::ShapeRef.new(shape: ReservedInstancesListingId, location_name: "reservedInstancesListingId"))
@@ -5697,6 +5734,12 @@ module Aws::EC2
5697
5734
  DisableFastSnapshotRestoresResult.add_member(:unsuccessful, Shapes::ShapeRef.new(shape: DisableFastSnapshotRestoreErrorSet, location_name: "unsuccessful"))
5698
5735
  DisableFastSnapshotRestoresResult.struct_class = Types::DisableFastSnapshotRestoresResult
5699
5736
 
5737
+ DisableSerialConsoleAccessRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
5738
+ DisableSerialConsoleAccessRequest.struct_class = Types::DisableSerialConsoleAccessRequest
5739
+
5740
+ DisableSerialConsoleAccessResult.add_member(:serial_console_access_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "serialConsoleAccessEnabled"))
5741
+ DisableSerialConsoleAccessResult.struct_class = Types::DisableSerialConsoleAccessResult
5742
+
5700
5743
  DisableTransitGatewayRouteTablePropagationRequest.add_member(:transit_gateway_route_table_id, Shapes::ShapeRef.new(shape: TransitGatewayRouteTableId, required: true, location_name: "TransitGatewayRouteTableId"))
5701
5744
  DisableTransitGatewayRouteTablePropagationRequest.add_member(:transit_gateway_attachment_id, Shapes::ShapeRef.new(shape: TransitGatewayAttachmentId, required: true, location_name: "TransitGatewayAttachmentId"))
5702
5745
  DisableTransitGatewayRouteTablePropagationRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
@@ -5969,6 +6012,12 @@ module Aws::EC2
5969
6012
  EnableFastSnapshotRestoresResult.add_member(:unsuccessful, Shapes::ShapeRef.new(shape: EnableFastSnapshotRestoreErrorSet, location_name: "unsuccessful"))
5970
6013
  EnableFastSnapshotRestoresResult.struct_class = Types::EnableFastSnapshotRestoresResult
5971
6014
 
6015
+ EnableSerialConsoleAccessRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
6016
+ EnableSerialConsoleAccessRequest.struct_class = Types::EnableSerialConsoleAccessRequest
6017
+
6018
+ EnableSerialConsoleAccessResult.add_member(:serial_console_access_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "serialConsoleAccessEnabled"))
6019
+ EnableSerialConsoleAccessResult.struct_class = Types::EnableSerialConsoleAccessResult
6020
+
5972
6021
  EnableTransitGatewayRouteTablePropagationRequest.add_member(:transit_gateway_route_table_id, Shapes::ShapeRef.new(shape: TransitGatewayRouteTableId, required: true, location_name: "TransitGatewayRouteTableId"))
5973
6022
  EnableTransitGatewayRouteTablePropagationRequest.add_member(:transit_gateway_attachment_id, Shapes::ShapeRef.new(shape: TransitGatewayAttachmentId, required: true, location_name: "TransitGatewayAttachmentId"))
5974
6023
  EnableTransitGatewayRouteTablePropagationRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
@@ -6484,6 +6533,12 @@ module Aws::EC2
6484
6533
  GetReservedInstancesExchangeQuoteResult.add_member(:validation_failure_reason, Shapes::ShapeRef.new(shape: String, location_name: "validationFailureReason"))
6485
6534
  GetReservedInstancesExchangeQuoteResult.struct_class = Types::GetReservedInstancesExchangeQuoteResult
6486
6535
 
6536
+ GetSerialConsoleAccessStatusRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
6537
+ GetSerialConsoleAccessStatusRequest.struct_class = Types::GetSerialConsoleAccessStatusRequest
6538
+
6539
+ GetSerialConsoleAccessStatusResult.add_member(:serial_console_access_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "serialConsoleAccessEnabled"))
6540
+ GetSerialConsoleAccessStatusResult.struct_class = Types::GetSerialConsoleAccessStatusResult
6541
+
6487
6542
  GetTransitGatewayAttachmentPropagationsRequest.add_member(:transit_gateway_attachment_id, Shapes::ShapeRef.new(shape: TransitGatewayAttachmentId, required: true, location_name: "TransitGatewayAttachmentId"))
6488
6543
  GetTransitGatewayAttachmentPropagationsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
6489
6544
  GetTransitGatewayAttachmentPropagationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: TransitGatewayMaxResults, location_name: "MaxResults"))
@@ -8960,6 +9015,18 @@ module Aws::EC2
8960
9015
  ReplaceNetworkAclEntryRequest.add_member(:rule_number, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "ruleNumber"))
8961
9016
  ReplaceNetworkAclEntryRequest.struct_class = Types::ReplaceNetworkAclEntryRequest
8962
9017
 
9018
+ ReplaceRootVolumeTask.add_member(:replace_root_volume_task_id, Shapes::ShapeRef.new(shape: ReplaceRootVolumeTaskId, location_name: "replaceRootVolumeTaskId"))
9019
+ ReplaceRootVolumeTask.add_member(:instance_id, Shapes::ShapeRef.new(shape: String, location_name: "instanceId"))
9020
+ ReplaceRootVolumeTask.add_member(:task_state, Shapes::ShapeRef.new(shape: ReplaceRootVolumeTaskState, location_name: "taskState"))
9021
+ ReplaceRootVolumeTask.add_member(:start_time, Shapes::ShapeRef.new(shape: String, location_name: "startTime"))
9022
+ ReplaceRootVolumeTask.add_member(:complete_time, Shapes::ShapeRef.new(shape: String, location_name: "completeTime"))
9023
+ ReplaceRootVolumeTask.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tagSet"))
9024
+ ReplaceRootVolumeTask.struct_class = Types::ReplaceRootVolumeTask
9025
+
9026
+ ReplaceRootVolumeTaskIds.member = Shapes::ShapeRef.new(shape: ReplaceRootVolumeTaskId, location_name: "ReplaceRootVolumeTaskId")
9027
+
9028
+ ReplaceRootVolumeTasks.member = Shapes::ShapeRef.new(shape: ReplaceRootVolumeTask, location_name: "item")
9029
+
8963
9030
  ReplaceRouteRequest.add_member(:destination_cidr_block, Shapes::ShapeRef.new(shape: String, location_name: "destinationCidrBlock"))
8964
9031
  ReplaceRouteRequest.add_member(:destination_ipv_6_cidr_block, Shapes::ShapeRef.new(shape: String, location_name: "destinationIpv6CidrBlock"))
8965
9032
  ReplaceRouteRequest.add_member(:destination_prefix_list_id, Shapes::ShapeRef.new(shape: PrefixListResourceId, location_name: "DestinationPrefixListId"))
@@ -11524,6 +11591,14 @@ module Aws::EC2
11524
11591
  o.output = Shapes::ShapeRef.new(shape: CreatePlacementGroupResult)
11525
11592
  end)
11526
11593
 
11594
+ api.add_operation(:create_replace_root_volume_task, Seahorse::Model::Operation.new.tap do |o|
11595
+ o.name = "CreateReplaceRootVolumeTask"
11596
+ o.http_method = "POST"
11597
+ o.http_request_uri = "/"
11598
+ o.input = Shapes::ShapeRef.new(shape: CreateReplaceRootVolumeTaskRequest)
11599
+ o.output = Shapes::ShapeRef.new(shape: CreateReplaceRootVolumeTaskResult)
11600
+ end)
11601
+
11527
11602
  api.add_operation(:create_reserved_instances_listing, Seahorse::Model::Operation.new.tap do |o|
11528
11603
  o.name = "CreateReservedInstancesListing"
11529
11604
  o.http_method = "POST"
@@ -13120,6 +13195,20 @@ module Aws::EC2
13120
13195
  o.output = Shapes::ShapeRef.new(shape: DescribeRegionsResult)
13121
13196
  end)
13122
13197
 
13198
+ api.add_operation(:describe_replace_root_volume_tasks, Seahorse::Model::Operation.new.tap do |o|
13199
+ o.name = "DescribeReplaceRootVolumeTasks"
13200
+ o.http_method = "POST"
13201
+ o.http_request_uri = "/"
13202
+ o.input = Shapes::ShapeRef.new(shape: DescribeReplaceRootVolumeTasksRequest)
13203
+ o.output = Shapes::ShapeRef.new(shape: DescribeReplaceRootVolumeTasksResult)
13204
+ o[:pager] = Aws::Pager.new(
13205
+ limit_key: "max_results",
13206
+ tokens: {
13207
+ "next_token" => "next_token"
13208
+ }
13209
+ )
13210
+ end)
13211
+
13123
13212
  api.add_operation(:describe_reserved_instances, Seahorse::Model::Operation.new.tap do |o|
13124
13213
  o.name = "DescribeReservedInstances"
13125
13214
  o.http_method = "POST"
@@ -13769,6 +13858,14 @@ module Aws::EC2
13769
13858
  o.output = Shapes::ShapeRef.new(shape: DisableFastSnapshotRestoresResult)
13770
13859
  end)
13771
13860
 
13861
+ api.add_operation(:disable_serial_console_access, Seahorse::Model::Operation.new.tap do |o|
13862
+ o.name = "DisableSerialConsoleAccess"
13863
+ o.http_method = "POST"
13864
+ o.http_request_uri = "/"
13865
+ o.input = Shapes::ShapeRef.new(shape: DisableSerialConsoleAccessRequest)
13866
+ o.output = Shapes::ShapeRef.new(shape: DisableSerialConsoleAccessResult)
13867
+ end)
13868
+
13772
13869
  api.add_operation(:disable_transit_gateway_route_table_propagation, Seahorse::Model::Operation.new.tap do |o|
13773
13870
  o.name = "DisableTransitGatewayRouteTablePropagation"
13774
13871
  o.http_method = "POST"
@@ -13889,6 +13986,14 @@ module Aws::EC2
13889
13986
  o.output = Shapes::ShapeRef.new(shape: EnableFastSnapshotRestoresResult)
13890
13987
  end)
13891
13988
 
13989
+ api.add_operation(:enable_serial_console_access, Seahorse::Model::Operation.new.tap do |o|
13990
+ o.name = "EnableSerialConsoleAccess"
13991
+ o.http_method = "POST"
13992
+ o.http_request_uri = "/"
13993
+ o.input = Shapes::ShapeRef.new(shape: EnableSerialConsoleAccessRequest)
13994
+ o.output = Shapes::ShapeRef.new(shape: EnableSerialConsoleAccessResult)
13995
+ end)
13996
+
13892
13997
  api.add_operation(:enable_transit_gateway_route_table_propagation, Seahorse::Model::Operation.new.tap do |o|
13893
13998
  o.name = "EnableTransitGatewayRouteTablePropagation"
13894
13999
  o.http_method = "POST"
@@ -14113,6 +14218,14 @@ module Aws::EC2
14113
14218
  o.output = Shapes::ShapeRef.new(shape: GetReservedInstancesExchangeQuoteResult)
14114
14219
  end)
14115
14220
 
14221
+ api.add_operation(:get_serial_console_access_status, Seahorse::Model::Operation.new.tap do |o|
14222
+ o.name = "GetSerialConsoleAccessStatus"
14223
+ o.http_method = "POST"
14224
+ o.http_request_uri = "/"
14225
+ o.input = Shapes::ShapeRef.new(shape: GetSerialConsoleAccessStatusRequest)
14226
+ o.output = Shapes::ShapeRef.new(shape: GetSerialConsoleAccessStatusResult)
14227
+ end)
14228
+
14116
14229
  api.add_operation(:get_transit_gateway_attachment_propagations, Seahorse::Model::Operation.new.tap do |o|
14117
14230
  o.name = "GetTransitGatewayAttachmentPropagations"
14118
14231
  o.http_method = "POST"
@@ -8380,6 +8380,86 @@ module Aws::EC2
8380
8380
  include Aws::Structure
8381
8381
  end
8382
8382
 
8383
+ # @note When making an API call, you may pass CreateReplaceRootVolumeTaskRequest
8384
+ # data as a hash:
8385
+ #
8386
+ # {
8387
+ # instance_id: "InstanceId", # required
8388
+ # snapshot_id: "SnapshotId",
8389
+ # client_token: "String",
8390
+ # dry_run: false,
8391
+ # tag_specifications: [
8392
+ # {
8393
+ # 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
8394
+ # tags: [
8395
+ # {
8396
+ # key: "String",
8397
+ # value: "String",
8398
+ # },
8399
+ # ],
8400
+ # },
8401
+ # ],
8402
+ # }
8403
+ #
8404
+ # @!attribute [rw] instance_id
8405
+ # The ID of the instance for which to replace the root volume.
8406
+ # @return [String]
8407
+ #
8408
+ # @!attribute [rw] snapshot_id
8409
+ # The ID of the snapshot from which to restore the replacement root
8410
+ # volume. If you want to restore the volume to the initial launch
8411
+ # state, omit this parameter.
8412
+ # @return [String]
8413
+ #
8414
+ # @!attribute [rw] client_token
8415
+ # Unique, case-sensitive identifier you provide to ensure the
8416
+ # idempotency of the request. If you do not specify a client token, a
8417
+ # randomly generated token is used for the request to ensure
8418
+ # idempotency. For more information, see [Ensuring Idempotency][1].
8419
+ #
8420
+ # **A suitable default value is auto-generated.** You should normally
8421
+ # not need to pass this option.
8422
+ #
8423
+ #
8424
+ #
8425
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
8426
+ # @return [String]
8427
+ #
8428
+ # @!attribute [rw] dry_run
8429
+ # Checks whether you have the required permissions for the action,
8430
+ # without actually making the request, and provides an error response.
8431
+ # If you have the required permissions, the error response is
8432
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
8433
+ # @return [Boolean]
8434
+ #
8435
+ # @!attribute [rw] tag_specifications
8436
+ # The tags to apply to the root volume replacement task.
8437
+ # @return [Array<Types::TagSpecification>]
8438
+ #
8439
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateReplaceRootVolumeTaskRequest AWS API Documentation
8440
+ #
8441
+ class CreateReplaceRootVolumeTaskRequest < Struct.new(
8442
+ :instance_id,
8443
+ :snapshot_id,
8444
+ :client_token,
8445
+ :dry_run,
8446
+ :tag_specifications)
8447
+ SENSITIVE = []
8448
+ include Aws::Structure
8449
+ end
8450
+
8451
+ # @!attribute [rw] replace_root_volume_task
8452
+ # Information about the root volume replacement task.
8453
+ # @return [Types::ReplaceRootVolumeTask]
8454
+ #
8455
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateReplaceRootVolumeTaskResult AWS API Documentation
8456
+ #
8457
+ class CreateReplaceRootVolumeTaskResult < Struct.new(
8458
+ :replace_root_volume_task)
8459
+ SENSITIVE = []
8460
+ include Aws::Structure
8461
+ end
8462
+
8383
8463
  # Contains the parameters for CreateReservedInstancesListing.
8384
8464
  #
8385
8465
  # @note When making an API call, you may pass CreateReservedInstancesListingRequest
@@ -20320,6 +20400,82 @@ module Aws::EC2
20320
20400
  include Aws::Structure
20321
20401
  end
20322
20402
 
20403
+ # @note When making an API call, you may pass DescribeReplaceRootVolumeTasksRequest
20404
+ # data as a hash:
20405
+ #
20406
+ # {
20407
+ # replace_root_volume_task_ids: ["ReplaceRootVolumeTaskId"],
20408
+ # filters: [
20409
+ # {
20410
+ # name: "String",
20411
+ # values: ["String"],
20412
+ # },
20413
+ # ],
20414
+ # max_results: 1,
20415
+ # next_token: "NextToken",
20416
+ # dry_run: false,
20417
+ # }
20418
+ #
20419
+ # @!attribute [rw] replace_root_volume_task_ids
20420
+ # The ID of the root volume replacement task to view.
20421
+ # @return [Array<String>]
20422
+ #
20423
+ # @!attribute [rw] filters
20424
+ # Filter to use:
20425
+ #
20426
+ # * `instance-id` - The ID of the instance for which the root volume
20427
+ # replacement task was created.
20428
+ #
20429
+ # ^
20430
+ # @return [Array<Types::Filter>]
20431
+ #
20432
+ # @!attribute [rw] max_results
20433
+ # The maximum number of results to return with a single call. To
20434
+ # retrieve the remaining results, make another call with the returned
20435
+ # `nextToken` value.
20436
+ # @return [Integer]
20437
+ #
20438
+ # @!attribute [rw] next_token
20439
+ # The token for the next page of results.
20440
+ # @return [String]
20441
+ #
20442
+ # @!attribute [rw] dry_run
20443
+ # Checks whether you have the required permissions for the action,
20444
+ # without actually making the request, and provides an error response.
20445
+ # If you have the required permissions, the error response is
20446
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
20447
+ # @return [Boolean]
20448
+ #
20449
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReplaceRootVolumeTasksRequest AWS API Documentation
20450
+ #
20451
+ class DescribeReplaceRootVolumeTasksRequest < Struct.new(
20452
+ :replace_root_volume_task_ids,
20453
+ :filters,
20454
+ :max_results,
20455
+ :next_token,
20456
+ :dry_run)
20457
+ SENSITIVE = []
20458
+ include Aws::Structure
20459
+ end
20460
+
20461
+ # @!attribute [rw] replace_root_volume_tasks
20462
+ # Information about the root volume replacement task.
20463
+ # @return [Array<Types::ReplaceRootVolumeTask>]
20464
+ #
20465
+ # @!attribute [rw] next_token
20466
+ # The token to use to retrieve the next page of results. This value is
20467
+ # `null` when there are no more results to return.
20468
+ # @return [String]
20469
+ #
20470
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReplaceRootVolumeTasksResult AWS API Documentation
20471
+ #
20472
+ class DescribeReplaceRootVolumeTasksResult < Struct.new(
20473
+ :replace_root_volume_tasks,
20474
+ :next_token)
20475
+ SENSITIVE = []
20476
+ include Aws::Structure
20477
+ end
20478
+
20323
20479
  # Contains the parameters for DescribeReservedInstancesListings.
20324
20480
  #
20325
20481
  # @note When making an API call, you may pass DescribeReservedInstancesListingsRequest
@@ -25459,6 +25615,42 @@ module Aws::EC2
25459
25615
  include Aws::Structure
25460
25616
  end
25461
25617
 
25618
+ # @note When making an API call, you may pass DisableSerialConsoleAccessRequest
25619
+ # data as a hash:
25620
+ #
25621
+ # {
25622
+ # dry_run: false,
25623
+ # }
25624
+ #
25625
+ # @!attribute [rw] dry_run
25626
+ # Checks whether you have the required permissions for the action,
25627
+ # without actually making the request, and provides an error response.
25628
+ # If you have the required permissions, the error response is
25629
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
25630
+ # @return [Boolean]
25631
+ #
25632
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableSerialConsoleAccessRequest AWS API Documentation
25633
+ #
25634
+ class DisableSerialConsoleAccessRequest < Struct.new(
25635
+ :dry_run)
25636
+ SENSITIVE = []
25637
+ include Aws::Structure
25638
+ end
25639
+
25640
+ # @!attribute [rw] serial_console_access_enabled
25641
+ # If `true`, access to the EC2 serial console of all instances is
25642
+ # enabled for your account. If `false`, access to the EC2 serial
25643
+ # console of all instances is disabled for your account.
25644
+ # @return [Boolean]
25645
+ #
25646
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableSerialConsoleAccessResult AWS API Documentation
25647
+ #
25648
+ class DisableSerialConsoleAccessResult < Struct.new(
25649
+ :serial_console_access_enabled)
25650
+ SENSITIVE = []
25651
+ include Aws::Structure
25652
+ end
25653
+
25462
25654
  # @note When making an API call, you may pass DisableTransitGatewayRouteTablePropagationRequest
25463
25655
  # data as a hash:
25464
25656
  #
@@ -26954,6 +27146,42 @@ module Aws::EC2
26954
27146
  include Aws::Structure
26955
27147
  end
26956
27148
 
27149
+ # @note When making an API call, you may pass EnableSerialConsoleAccessRequest
27150
+ # data as a hash:
27151
+ #
27152
+ # {
27153
+ # dry_run: false,
27154
+ # }
27155
+ #
27156
+ # @!attribute [rw] dry_run
27157
+ # Checks whether you have the required permissions for the action,
27158
+ # without actually making the request, and provides an error response.
27159
+ # If you have the required permissions, the error response is
27160
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
27161
+ # @return [Boolean]
27162
+ #
27163
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableSerialConsoleAccessRequest AWS API Documentation
27164
+ #
27165
+ class EnableSerialConsoleAccessRequest < Struct.new(
27166
+ :dry_run)
27167
+ SENSITIVE = []
27168
+ include Aws::Structure
27169
+ end
27170
+
27171
+ # @!attribute [rw] serial_console_access_enabled
27172
+ # If `true`, access to the EC2 serial console of all instances is
27173
+ # enabled for your account. If `false`, access to the EC2 serial
27174
+ # console of all instances is disabled for your account.
27175
+ # @return [Boolean]
27176
+ #
27177
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableSerialConsoleAccessResult AWS API Documentation
27178
+ #
27179
+ class EnableSerialConsoleAccessResult < Struct.new(
27180
+ :serial_console_access_enabled)
27181
+ SENSITIVE = []
27182
+ include Aws::Structure
27183
+ end
27184
+
26957
27185
  # @note When making an API call, you may pass EnableTransitGatewayRouteTablePropagationRequest
26958
27186
  # data as a hash:
26959
27187
  #
@@ -29998,6 +30226,42 @@ module Aws::EC2
29998
30226
  include Aws::Structure
29999
30227
  end
30000
30228
 
30229
+ # @note When making an API call, you may pass GetSerialConsoleAccessStatusRequest
30230
+ # data as a hash:
30231
+ #
30232
+ # {
30233
+ # dry_run: false,
30234
+ # }
30235
+ #
30236
+ # @!attribute [rw] dry_run
30237
+ # Checks whether you have the required permissions for the action,
30238
+ # without actually making the request, and provides an error response.
30239
+ # If you have the required permissions, the error response is
30240
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
30241
+ # @return [Boolean]
30242
+ #
30243
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSerialConsoleAccessStatusRequest AWS API Documentation
30244
+ #
30245
+ class GetSerialConsoleAccessStatusRequest < Struct.new(
30246
+ :dry_run)
30247
+ SENSITIVE = []
30248
+ include Aws::Structure
30249
+ end
30250
+
30251
+ # @!attribute [rw] serial_console_access_enabled
30252
+ # If `true`, access to the EC2 serial console of all instances is
30253
+ # enabled for your account. If `false`, access to the EC2 serial
30254
+ # console of all instances is disabled for your account.
30255
+ # @return [Boolean]
30256
+ #
30257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSerialConsoleAccessStatusResult AWS API Documentation
30258
+ #
30259
+ class GetSerialConsoleAccessStatusResult < Struct.new(
30260
+ :serial_console_access_enabled)
30261
+ SENSITIVE = []
30262
+ include Aws::Structure
30263
+ end
30264
+
30001
30265
  # @note When making an API call, you may pass GetTransitGatewayAttachmentPropagationsRequest
30002
30266
  # data as a hash:
30003
30267
  #
@@ -39402,7 +39666,8 @@ module Aws::EC2
39402
39666
  # * `io2`\: 100-64,000 IOPS
39403
39667
  #
39404
39668
  # Default: If no IOPS value is specified, the existing value is
39405
- # retained.
39669
+ # retained, unless a volume type is modified that supports different
39670
+ # values.
39406
39671
  # @return [Integer]
39407
39672
  #
39408
39673
  # @!attribute [rw] throughput
@@ -44078,6 +44343,66 @@ module Aws::EC2
44078
44343
  include Aws::Structure
44079
44344
  end
44080
44345
 
44346
+ # Information about a root volume replacement task.
44347
+ #
44348
+ # @!attribute [rw] replace_root_volume_task_id
44349
+ # The ID of the root volume replacement task.
44350
+ # @return [String]
44351
+ #
44352
+ # @!attribute [rw] instance_id
44353
+ # The ID of the instance for which the root volume replacement task
44354
+ # was created.
44355
+ # @return [String]
44356
+ #
44357
+ # @!attribute [rw] task_state
44358
+ # The state of the task. The task can be in one of the following
44359
+ # states:
44360
+ #
44361
+ # * `pending` - the replacement volume is being created.
44362
+ #
44363
+ # * `in-progress` - the original volume is being detached and the
44364
+ # replacement volume is being attached.
44365
+ #
44366
+ # * `succeeded` - the replacement volume has been successfully
44367
+ # attached to the instance and the instance is available.
44368
+ #
44369
+ # * `failing` - the replacement task is in the process of failing.
44370
+ #
44371
+ # * `failed` - the replacement task has failed but the original root
44372
+ # volume is still attached.
44373
+ #
44374
+ # * `failing-detached` - the replacement task is in the process of
44375
+ # failing. The instance might have no root volume attached.
44376
+ #
44377
+ # * `failed-detached` - the replacement task has failed and the
44378
+ # instance has no root volume attached.
44379
+ # @return [String]
44380
+ #
44381
+ # @!attribute [rw] start_time
44382
+ # The time the task was started.
44383
+ # @return [String]
44384
+ #
44385
+ # @!attribute [rw] complete_time
44386
+ # The time the task completed.
44387
+ # @return [String]
44388
+ #
44389
+ # @!attribute [rw] tags
44390
+ # The tags assigned to the task.
44391
+ # @return [Array<Types::Tag>]
44392
+ #
44393
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceRootVolumeTask AWS API Documentation
44394
+ #
44395
+ class ReplaceRootVolumeTask < Struct.new(
44396
+ :replace_root_volume_task_id,
44397
+ :instance_id,
44398
+ :task_state,
44399
+ :start_time,
44400
+ :complete_time,
44401
+ :tags)
44402
+ SENSITIVE = []
44403
+ include Aws::Structure
44404
+ end
44405
+
44081
44406
  # @note When making an API call, you may pass ReplaceRouteRequest
44082
44407
  # data as a hash:
44083
44408
  #
@@ -932,7 +932,7 @@ module Aws::EC2
932
932
  "argument" => "length(security_groups[].group_id) > `0`"
933
933
  },
934
934
  {
935
- "expected" => "InvalidGroupNotFound",
935
+ "expected" => "InvalidGroup.NotFound",
936
936
  "matcher" => "error",
937
937
  "state" => "retry"
938
938
  }
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.230.0
4
+ version: 1.231.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-03-24 00:00:00.000000000 Z
11
+ date: 2021-03-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sigv4