aws-sdk-ec2 1.230.0 → 1.231.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 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