aws-sdk-ec2 1.228.0 → 1.233.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -211,6 +211,17 @@ module Aws::EC2
211
211
  data[:virtualization_type]
212
212
  end
213
213
 
214
+ # The boot mode of the image. For more information, see [Boot modes][1]
215
+ # in the *Amazon Elastic Compute Cloud User Guide*.
216
+ #
217
+ #
218
+ #
219
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html
220
+ # @return [String]
221
+ def boot_mode
222
+ data[:boot_mode]
223
+ end
224
+
214
225
  # @!endgroup
215
226
 
216
227
  # @return [Client]
@@ -478,7 +489,7 @@ module Aws::EC2
478
489
  # @example Request syntax with placeholder values
479
490
  #
480
491
  # image.describe_attribute({
481
- # attribute: "description", # required, accepts description, kernel, ramdisk, launchPermission, productCodes, blockDeviceMapping, sriovNetSupport
492
+ # attribute: "description", # required, accepts description, kernel, ramdisk, launchPermission, productCodes, blockDeviceMapping, sriovNetSupport, bootMode
482
493
  # dry_run: false,
483
494
  # })
484
495
  # @param [Hash] options ({})
@@ -258,16 +258,7 @@ module Aws::EC2
258
258
  data[:security_groups]
259
259
  end
260
260
 
261
- # Specifies whether to enable an instance launched in a VPC to perform
262
- # NAT. This controls whether source/destination checking is enabled on
263
- # the instance. A value of `true` means that checking is enabled, and
264
- # `false` means that checking is disabled. The value must be `false` for
265
- # the instance to perform NAT. For more information, see [NAT
266
- # instances][1] in the *Amazon VPC User Guide*.
267
- #
268
- #
269
- #
270
- # [1]: https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html
261
+ # Indicates whether source/destination checking is enabled.
271
262
  # @return [Boolean]
272
263
  def source_dest_check
273
264
  data[:source_dest_check]
@@ -346,6 +337,17 @@ module Aws::EC2
346
337
  data[:enclave_options]
347
338
  end
348
339
 
340
+ # The boot mode of the instance. For more information, see [Boot
341
+ # modes][1] in the *Amazon EC2 User Guide*.
342
+ #
343
+ #
344
+ #
345
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html
346
+ # @return [String]
347
+ def boot_mode
348
+ data[:boot_mode]
349
+ end
350
+
349
351
  # @!endgroup
350
352
 
351
353
  # @return [Client]
@@ -928,10 +930,12 @@ module Aws::EC2
928
930
  # })
929
931
  # @param [Hash] options ({})
930
932
  # @option options [Types::AttributeBooleanValue] :source_dest_check
931
- # Specifies whether source/destination checking is enabled. A value of
932
- # `true` means that checking is enabled, and `false` means that checking
933
- # is disabled. This value must be `false` for a NAT instance to perform
934
- # NAT.
933
+ # Enable or disable source/destination checks, which ensure that the
934
+ # instance is either the source or the destination of any traffic that
935
+ # it receives. If the value is `true`, source/destination checks are
936
+ # enabled; otherwise, they are disabled. The default value is `true`.
937
+ # You must disable source/destination checks if the instance runs
938
+ # services such as network address translation, routing, or firewalls.
935
939
  # @option options [String] :attribute
936
940
  # The name of the attribute.
937
941
  # @option options [Array<Types::InstanceBlockDeviceMappingSpecification>] :block_device_mappings
@@ -430,6 +430,8 @@ module Aws::EC2
430
430
  # * `network-interface.vpc-id` - The ID of the VPC for the network
431
431
  # interface.
432
432
  #
433
+ # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost.
434
+ #
433
435
  # * `owner-id` - The AWS account ID of the instance owner.
434
436
  #
435
437
  # * `placement-group-name` - The name of the placement group for the
@@ -1023,11 +1023,11 @@ module Aws::EC2
1023
1023
  # ],
1024
1024
  # availability_zone: "String",
1025
1025
  # availability_zone_id: "String",
1026
+ # cidr_block: "String", # required
1026
1027
  # ipv_6_cidr_block: "String",
1027
1028
  # outpost_arn: "String",
1028
1029
  # vpc_id: "VpcId", # required
1029
1030
  # dry_run: false,
1030
- # cidr_block: "String", # required
1031
1031
  # })
1032
1032
  # @param [Hash] options ({})
1033
1033
  # @option options [Array<Types::TagSpecification>] :tag_specifications
@@ -1052,6 +1052,11 @@ module Aws::EC2
1052
1052
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions
1053
1053
  # @option options [String] :availability_zone_id
1054
1054
  # The AZ ID or the Local Zone ID of the subnet.
1055
+ # @option options [required, String] :cidr_block
1056
+ # The IPv4 network range for the subnet, in CIDR notation. For example,
1057
+ # `10.0.0.0/24`. We modify the specified CIDR block to its canonical
1058
+ # form; for example, if you specify `100.68.0.18/18`, we modify it to
1059
+ # `100.68.0.0/18`.
1055
1060
  # @option options [String] :ipv_6_cidr_block
1056
1061
  # The IPv6 network range for the subnet, in CIDR notation. The subnet
1057
1062
  # size must use a /64 prefix length.
@@ -1066,11 +1071,6 @@ module Aws::EC2
1066
1071
  # without actually making the request, and provides an error response.
1067
1072
  # If you have the required permissions, the error response is
1068
1073
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1069
- # @option options [required, String] :cidr_block
1070
- # The IPv4 network range for the subnet, in CIDR notation. For example,
1071
- # `10.0.0.0/24`. We modify the specified CIDR block to its canonical
1072
- # form; for example, if you specify `100.68.0.18/18`, we modify it to
1073
- # `100.68.0.0/18`.
1074
1074
  # @return [Subnet]
1075
1075
  def create_subnet(options = {})
1076
1076
  resp = @client.create_subnet(options)
@@ -1544,6 +1544,7 @@ module Aws::EC2
1544
1544
  # root_device_name: "String",
1545
1545
  # sriov_net_support: "String",
1546
1546
  # virtualization_type: "String",
1547
+ # boot_mode: "legacy-bios", # accepts legacy-bios, uefi
1547
1548
  # })
1548
1549
  # @param [Hash] options ({})
1549
1550
  # @option options [String] :image_location
@@ -1618,6 +1619,13 @@ module Aws::EC2
1618
1619
  # The type of virtualization (`hvm` \| `paravirtual`).
1619
1620
  #
1620
1621
  # Default: `paravirtual`
1622
+ # @option options [String] :boot_mode
1623
+ # The boot mode of the AMI. For more information, see [Boot modes][1] in
1624
+ # the *Amazon Elastic Compute Cloud User Guide*.
1625
+ #
1626
+ #
1627
+ #
1628
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html
1621
1629
  # @return [Image]
1622
1630
  def register_image(options = {})
1623
1631
  resp = @client.register_image(options)
@@ -2151,6 +2159,8 @@ module Aws::EC2
2151
2159
  # * `network-interface.vpc-id` - The ID of the VPC for the network
2152
2160
  # interface.
2153
2161
  #
2162
+ # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost.
2163
+ #
2154
2164
  # * `owner-id` - The AWS account ID of the instance owner.
2155
2165
  #
2156
2166
  # * `placement-group-name` - The name of the placement group for the
@@ -3219,6 +3229,8 @@ module Aws::EC2
3219
3229
  # * `ipv6-cidr-block-association.state` - The state of an IPv6 CIDR
3220
3230
  # block associated with the subnet.
3221
3231
  #
3232
+ # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost.
3233
+ #
3222
3234
  # * `owner-id` - The ID of the AWS account that owns the subnet.
3223
3235
  #
3224
3236
  # * `state` - The state of the subnet (`pending` \| `available`).
@@ -1141,6 +1141,8 @@ module Aws::EC2
1141
1141
  # * `network-interface.vpc-id` - The ID of the VPC for the network
1142
1142
  # interface.
1143
1143
  #
1144
+ # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost.
1145
+ #
1144
1146
  # * `owner-id` - The AWS account ID of the instance owner.
1145
1147
  #
1146
1148
  # * `placement-group-name` - The name of the placement group for the
@@ -1647,24 +1647,24 @@ module Aws::EC2
1647
1647
  # data as a hash:
1648
1648
  #
1649
1649
  # {
1650
- # subnet_id: "SubnetId", # required
1651
1650
  # ipv_6_cidr_block: "String", # required
1651
+ # subnet_id: "SubnetId", # required
1652
1652
  # }
1653
1653
  #
1654
- # @!attribute [rw] subnet_id
1655
- # The ID of your subnet.
1656
- # @return [String]
1657
- #
1658
1654
  # @!attribute [rw] ipv_6_cidr_block
1659
1655
  # The IPv6 CIDR block for your subnet. The subnet must have a /64
1660
1656
  # prefix length.
1661
1657
  # @return [String]
1662
1658
  #
1659
+ # @!attribute [rw] subnet_id
1660
+ # The ID of your subnet.
1661
+ # @return [String]
1662
+ #
1663
1663
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateSubnetCidrBlockRequest AWS API Documentation
1664
1664
  #
1665
1665
  class AssociateSubnetCidrBlockRequest < Struct.new(
1666
- :subnet_id,
1667
- :ipv_6_cidr_block)
1666
+ :ipv_6_cidr_block,
1667
+ :subnet_id)
1668
1668
  SENSITIVE = []
1669
1669
  include Aws::Structure
1670
1670
  end
@@ -1944,6 +1944,46 @@ module Aws::EC2
1944
1944
  include Aws::Structure
1945
1945
  end
1946
1946
 
1947
+ # Describes integration options for Amazon Athena.
1948
+ #
1949
+ # @note When making an API call, you may pass AthenaIntegration
1950
+ # data as a hash:
1951
+ #
1952
+ # {
1953
+ # integration_result_s3_destination_arn: "String", # required
1954
+ # partition_load_frequency: "none", # required, accepts none, daily, weekly, monthly
1955
+ # partition_start_date: Time.now,
1956
+ # partition_end_date: Time.now,
1957
+ # }
1958
+ #
1959
+ # @!attribute [rw] integration_result_s3_destination_arn
1960
+ # The location in Amazon S3 to store the generated CloudFormation
1961
+ # template.
1962
+ # @return [String]
1963
+ #
1964
+ # @!attribute [rw] partition_load_frequency
1965
+ # The schedule for adding new partitions to the table.
1966
+ # @return [String]
1967
+ #
1968
+ # @!attribute [rw] partition_start_date
1969
+ # The start date for the partition.
1970
+ # @return [Time]
1971
+ #
1972
+ # @!attribute [rw] partition_end_date
1973
+ # The end date for the partition.
1974
+ # @return [Time]
1975
+ #
1976
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AthenaIntegration AWS API Documentation
1977
+ #
1978
+ class AthenaIntegration < Struct.new(
1979
+ :integration_result_s3_destination_arn,
1980
+ :partition_load_frequency,
1981
+ :partition_start_date,
1982
+ :partition_end_date)
1983
+ SENSITIVE = []
1984
+ include Aws::Structure
1985
+ end
1986
+
1947
1987
  # @note When making an API call, you may pass AttachClassicLinkVpcRequest
1948
1988
  # data as a hash:
1949
1989
  #
@@ -7541,8 +7581,8 @@ module Aws::EC2
7541
7581
  # {
7542
7582
  # destination_cidr_block: "String", # required
7543
7583
  # local_gateway_route_table_id: "LocalGatewayRoutetableId", # required
7544
- # local_gateway_virtual_interface_group_id: "LocalGatewayVirtualInterfaceGroupId", # required
7545
7584
  # dry_run: false,
7585
+ # local_gateway_virtual_interface_group_id: "LocalGatewayVirtualInterfaceGroupId", # required
7546
7586
  # }
7547
7587
  #
7548
7588
  # @!attribute [rw] destination_cidr_block
@@ -7554,10 +7594,6 @@ module Aws::EC2
7554
7594
  # The ID of the local gateway route table.
7555
7595
  # @return [String]
7556
7596
  #
7557
- # @!attribute [rw] local_gateway_virtual_interface_group_id
7558
- # The ID of the virtual interface group.
7559
- # @return [String]
7560
- #
7561
7597
  # @!attribute [rw] dry_run
7562
7598
  # Checks whether you have the required permissions for the action,
7563
7599
  # without actually making the request, and provides an error response.
@@ -7565,13 +7601,17 @@ module Aws::EC2
7565
7601
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
7566
7602
  # @return [Boolean]
7567
7603
  #
7604
+ # @!attribute [rw] local_gateway_virtual_interface_group_id
7605
+ # The ID of the virtual interface group.
7606
+ # @return [String]
7607
+ #
7568
7608
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateLocalGatewayRouteRequest AWS API Documentation
7569
7609
  #
7570
7610
  class CreateLocalGatewayRouteRequest < Struct.new(
7571
7611
  :destination_cidr_block,
7572
7612
  :local_gateway_route_table_id,
7573
- :local_gateway_virtual_interface_group_id,
7574
- :dry_run)
7613
+ :dry_run,
7614
+ :local_gateway_virtual_interface_group_id)
7575
7615
  SENSITIVE = []
7576
7616
  include Aws::Structure
7577
7617
  end
@@ -8380,6 +8420,86 @@ module Aws::EC2
8380
8420
  include Aws::Structure
8381
8421
  end
8382
8422
 
8423
+ # @note When making an API call, you may pass CreateReplaceRootVolumeTaskRequest
8424
+ # data as a hash:
8425
+ #
8426
+ # {
8427
+ # instance_id: "InstanceId", # required
8428
+ # snapshot_id: "SnapshotId",
8429
+ # client_token: "String",
8430
+ # dry_run: false,
8431
+ # tag_specifications: [
8432
+ # {
8433
+ # 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
8434
+ # tags: [
8435
+ # {
8436
+ # key: "String",
8437
+ # value: "String",
8438
+ # },
8439
+ # ],
8440
+ # },
8441
+ # ],
8442
+ # }
8443
+ #
8444
+ # @!attribute [rw] instance_id
8445
+ # The ID of the instance for which to replace the root volume.
8446
+ # @return [String]
8447
+ #
8448
+ # @!attribute [rw] snapshot_id
8449
+ # The ID of the snapshot from which to restore the replacement root
8450
+ # volume. If you want to restore the volume to the initial launch
8451
+ # state, omit this parameter.
8452
+ # @return [String]
8453
+ #
8454
+ # @!attribute [rw] client_token
8455
+ # Unique, case-sensitive identifier you provide to ensure the
8456
+ # idempotency of the request. If you do not specify a client token, a
8457
+ # randomly generated token is used for the request to ensure
8458
+ # idempotency. For more information, see [Ensuring Idempotency][1].
8459
+ #
8460
+ # **A suitable default value is auto-generated.** You should normally
8461
+ # not need to pass this option.
8462
+ #
8463
+ #
8464
+ #
8465
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
8466
+ # @return [String]
8467
+ #
8468
+ # @!attribute [rw] dry_run
8469
+ # Checks whether you have the required permissions for the action,
8470
+ # without actually making the request, and provides an error response.
8471
+ # If you have the required permissions, the error response is
8472
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
8473
+ # @return [Boolean]
8474
+ #
8475
+ # @!attribute [rw] tag_specifications
8476
+ # The tags to apply to the root volume replacement task.
8477
+ # @return [Array<Types::TagSpecification>]
8478
+ #
8479
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateReplaceRootVolumeTaskRequest AWS API Documentation
8480
+ #
8481
+ class CreateReplaceRootVolumeTaskRequest < Struct.new(
8482
+ :instance_id,
8483
+ :snapshot_id,
8484
+ :client_token,
8485
+ :dry_run,
8486
+ :tag_specifications)
8487
+ SENSITIVE = []
8488
+ include Aws::Structure
8489
+ end
8490
+
8491
+ # @!attribute [rw] replace_root_volume_task
8492
+ # Information about the root volume replacement task.
8493
+ # @return [Types::ReplaceRootVolumeTask]
8494
+ #
8495
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateReplaceRootVolumeTaskResult AWS API Documentation
8496
+ #
8497
+ class CreateReplaceRootVolumeTaskResult < Struct.new(
8498
+ :replace_root_volume_task)
8499
+ SENSITIVE = []
8500
+ include Aws::Structure
8501
+ end
8502
+
8383
8503
  # Contains the parameters for CreateReservedInstancesListing.
8384
8504
  #
8385
8505
  # @note When making an API call, you may pass CreateReservedInstancesListingRequest
@@ -8449,6 +8569,83 @@ module Aws::EC2
8449
8569
  include Aws::Structure
8450
8570
  end
8451
8571
 
8572
+ # @note When making an API call, you may pass CreateRestoreImageTaskRequest
8573
+ # data as a hash:
8574
+ #
8575
+ # {
8576
+ # bucket: "String", # required
8577
+ # object_key: "String", # required
8578
+ # name: "String",
8579
+ # tag_specifications: [
8580
+ # {
8581
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, egress-only-internet-gateway, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
8582
+ # tags: [
8583
+ # {
8584
+ # key: "String",
8585
+ # value: "String",
8586
+ # },
8587
+ # ],
8588
+ # },
8589
+ # ],
8590
+ # dry_run: false,
8591
+ # }
8592
+ #
8593
+ # @!attribute [rw] bucket
8594
+ # The name of the S3 bucket that contains the stored AMI object.
8595
+ # @return [String]
8596
+ #
8597
+ # @!attribute [rw] object_key
8598
+ # The name of the stored AMI object in the bucket.
8599
+ # @return [String]
8600
+ #
8601
+ # @!attribute [rw] name
8602
+ # The name for the restored AMI. The name must be unique for AMIs in
8603
+ # the Region for this account. If you do not provide a name, the new
8604
+ # AMI gets the same name as the original AMI.
8605
+ # @return [String]
8606
+ #
8607
+ # @!attribute [rw] tag_specifications
8608
+ # The tags to apply to the AMI and snapshots on restoration. You can
8609
+ # tag the AMI, the snapshots, or both.
8610
+ #
8611
+ # * To tag the AMI, the value for `ResourceType` must be `image`.
8612
+ #
8613
+ # * To tag the snapshots, the value for `ResourceType` must be
8614
+ # `snapshot`. The same tag is applied to all of the snapshots that
8615
+ # are created.
8616
+ # @return [Array<Types::TagSpecification>]
8617
+ #
8618
+ # @!attribute [rw] dry_run
8619
+ # Checks whether you have the required permissions for the action,
8620
+ # without actually making the request, and provides an error response.
8621
+ # If you have the required permissions, the error response is
8622
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
8623
+ # @return [Boolean]
8624
+ #
8625
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateRestoreImageTaskRequest AWS API Documentation
8626
+ #
8627
+ class CreateRestoreImageTaskRequest < Struct.new(
8628
+ :bucket,
8629
+ :object_key,
8630
+ :name,
8631
+ :tag_specifications,
8632
+ :dry_run)
8633
+ SENSITIVE = []
8634
+ include Aws::Structure
8635
+ end
8636
+
8637
+ # @!attribute [rw] image_id
8638
+ # The AMI ID.
8639
+ # @return [String]
8640
+ #
8641
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateRestoreImageTaskResult AWS API Documentation
8642
+ #
8643
+ class CreateRestoreImageTaskResult < Struct.new(
8644
+ :image_id)
8645
+ SENSITIVE = []
8646
+ include Aws::Structure
8647
+ end
8648
+
8452
8649
  # @note When making an API call, you may pass CreateRouteRequest
8453
8650
  # data as a hash:
8454
8651
  #
@@ -8956,6 +9153,67 @@ module Aws::EC2
8956
9153
  include Aws::Structure
8957
9154
  end
8958
9155
 
9156
+ # @note When making an API call, you may pass CreateStoreImageTaskRequest
9157
+ # data as a hash:
9158
+ #
9159
+ # {
9160
+ # image_id: "ImageId", # required
9161
+ # bucket: "String", # required
9162
+ # s3_object_tags: [
9163
+ # {
9164
+ # key: "String",
9165
+ # value: "String",
9166
+ # },
9167
+ # ],
9168
+ # dry_run: false,
9169
+ # }
9170
+ #
9171
+ # @!attribute [rw] image_id
9172
+ # The ID of the AMI.
9173
+ # @return [String]
9174
+ #
9175
+ # @!attribute [rw] bucket
9176
+ # The name of the S3 bucket in which the AMI object will be stored.
9177
+ # The bucket must be in the Region in which the request is being made.
9178
+ # The AMI object appears in the bucket only after the upload task has
9179
+ # completed.
9180
+ # @return [String]
9181
+ #
9182
+ # @!attribute [rw] s3_object_tags
9183
+ # The tags to apply to the AMI object that will be stored in the S3
9184
+ # bucket.
9185
+ # @return [Array<Types::S3ObjectTag>]
9186
+ #
9187
+ # @!attribute [rw] dry_run
9188
+ # Checks whether you have the required permissions for the action,
9189
+ # without actually making the request, and provides an error response.
9190
+ # If you have the required permissions, the error response is
9191
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
9192
+ # @return [Boolean]
9193
+ #
9194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateStoreImageTaskRequest AWS API Documentation
9195
+ #
9196
+ class CreateStoreImageTaskRequest < Struct.new(
9197
+ :image_id,
9198
+ :bucket,
9199
+ :s3_object_tags,
9200
+ :dry_run)
9201
+ SENSITIVE = []
9202
+ include Aws::Structure
9203
+ end
9204
+
9205
+ # @!attribute [rw] object_key
9206
+ # The name of the stored AMI object in the S3 bucket.
9207
+ # @return [String]
9208
+ #
9209
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateStoreImageTaskResult AWS API Documentation
9210
+ #
9211
+ class CreateStoreImageTaskResult < Struct.new(
9212
+ :object_key)
9213
+ SENSITIVE = []
9214
+ include Aws::Structure
9215
+ end
9216
+
8959
9217
  # @note When making an API call, you may pass CreateSubnetRequest
8960
9218
  # data as a hash:
8961
9219
  #
@@ -8973,11 +9231,11 @@ module Aws::EC2
8973
9231
  # ],
8974
9232
  # availability_zone: "String",
8975
9233
  # availability_zone_id: "String",
9234
+ # cidr_block: "String", # required
8976
9235
  # ipv_6_cidr_block: "String",
8977
9236
  # outpost_arn: "String",
8978
9237
  # vpc_id: "VpcId", # required
8979
9238
  # dry_run: false,
8980
- # cidr_block: "String", # required
8981
9239
  # }
8982
9240
  #
8983
9241
  # @!attribute [rw] tag_specifications
@@ -9008,6 +9266,13 @@ module Aws::EC2
9008
9266
  # The AZ ID or the Local Zone ID of the subnet.
9009
9267
  # @return [String]
9010
9268
  #
9269
+ # @!attribute [rw] cidr_block
9270
+ # The IPv4 network range for the subnet, in CIDR notation. For
9271
+ # example, `10.0.0.0/24`. We modify the specified CIDR block to its
9272
+ # canonical form; for example, if you specify `100.68.0.18/18`, we
9273
+ # modify it to `100.68.0.0/18`.
9274
+ # @return [String]
9275
+ #
9011
9276
  # @!attribute [rw] ipv_6_cidr_block
9012
9277
  # The IPv6 network range for the subnet, in CIDR notation. The subnet
9013
9278
  # size must use a /64 prefix length.
@@ -9030,24 +9295,17 @@ module Aws::EC2
9030
9295
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
9031
9296
  # @return [Boolean]
9032
9297
  #
9033
- # @!attribute [rw] cidr_block
9034
- # The IPv4 network range for the subnet, in CIDR notation. For
9035
- # example, `10.0.0.0/24`. We modify the specified CIDR block to its
9036
- # canonical form; for example, if you specify `100.68.0.18/18`, we
9037
- # modify it to `100.68.0.0/18`.
9038
- # @return [String]
9039
- #
9040
9298
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSubnetRequest AWS API Documentation
9041
9299
  #
9042
9300
  class CreateSubnetRequest < Struct.new(
9043
9301
  :tag_specifications,
9044
9302
  :availability_zone,
9045
9303
  :availability_zone_id,
9304
+ :cidr_block,
9046
9305
  :ipv_6_cidr_block,
9047
9306
  :outpost_arn,
9048
9307
  :vpc_id,
9049
- :dry_run,
9050
- :cidr_block)
9308
+ :dry_run)
9051
9309
  SENSITIVE = []
9052
9310
  include Aws::Structure
9053
9311
  end
@@ -16843,7 +17101,7 @@ module Aws::EC2
16843
17101
  # data as a hash:
16844
17102
  #
16845
17103
  # {
16846
- # attribute: "description", # required, accepts description, kernel, ramdisk, launchPermission, productCodes, blockDeviceMapping, sriovNetSupport
17104
+ # attribute: "description", # required, accepts description, kernel, ramdisk, launchPermission, productCodes, blockDeviceMapping, sriovNetSupport, bootMode
16847
17105
  # image_id: "ImageId", # required
16848
17106
  # dry_run: false,
16849
17107
  # }
@@ -17658,6 +17916,10 @@ module Aws::EC2
17658
17916
  #
17659
17917
  # * `memory-info.size-in-mib` - The memory size.
17660
17918
  #
17919
+ # * `network-info.efa-info.maximum-efa-interfaces` - The maximum
17920
+ # number of Elastic Fabric Adapters (EFAs) per instance. (`true` \|
17921
+ # `false`).
17922
+ #
17661
17923
  # * `network-info.efa-supported` - Indicates whether the instance type
17662
17924
  # supports Elastic Fabric Adapter (EFA) (`true` \| `false`).
17663
17925
  #
@@ -17686,6 +17948,8 @@ module Aws::EC2
17686
17948
  # * `processor-info.sustained-clock-speed-in-ghz` - The CPU clock
17687
17949
  # speed, in GHz.
17688
17950
  #
17951
+ # * `supported-boot-mode` - The boot mode (`legacy-bios` \| `uefi`).
17952
+ #
17689
17953
  # * `supported-root-device-type` - The root device type (`ebs` \|
17690
17954
  # `instance-store`).
17691
17955
  #
@@ -17975,6 +18239,8 @@ module Aws::EC2
17975
18239
  # * `network-interface.vpc-id` - The ID of the VPC for the network
17976
18240
  # interface.
17977
18241
  #
18242
+ # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost.
18243
+ #
17978
18244
  # * `owner-id` - The AWS account ID of the instance owner.
17979
18245
  #
17980
18246
  # * `placement-group-name` - The name of the placement group for the
@@ -20312,6 +20578,82 @@ module Aws::EC2
20312
20578
  include Aws::Structure
20313
20579
  end
20314
20580
 
20581
+ # @note When making an API call, you may pass DescribeReplaceRootVolumeTasksRequest
20582
+ # data as a hash:
20583
+ #
20584
+ # {
20585
+ # replace_root_volume_task_ids: ["ReplaceRootVolumeTaskId"],
20586
+ # filters: [
20587
+ # {
20588
+ # name: "String",
20589
+ # values: ["String"],
20590
+ # },
20591
+ # ],
20592
+ # max_results: 1,
20593
+ # next_token: "NextToken",
20594
+ # dry_run: false,
20595
+ # }
20596
+ #
20597
+ # @!attribute [rw] replace_root_volume_task_ids
20598
+ # The ID of the root volume replacement task to view.
20599
+ # @return [Array<String>]
20600
+ #
20601
+ # @!attribute [rw] filters
20602
+ # Filter to use:
20603
+ #
20604
+ # * `instance-id` - The ID of the instance for which the root volume
20605
+ # replacement task was created.
20606
+ #
20607
+ # ^
20608
+ # @return [Array<Types::Filter>]
20609
+ #
20610
+ # @!attribute [rw] max_results
20611
+ # The maximum number of results to return with a single call. To
20612
+ # retrieve the remaining results, make another call with the returned
20613
+ # `nextToken` value.
20614
+ # @return [Integer]
20615
+ #
20616
+ # @!attribute [rw] next_token
20617
+ # The token for the next page of results.
20618
+ # @return [String]
20619
+ #
20620
+ # @!attribute [rw] dry_run
20621
+ # Checks whether you have the required permissions for the action,
20622
+ # without actually making the request, and provides an error response.
20623
+ # If you have the required permissions, the error response is
20624
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
20625
+ # @return [Boolean]
20626
+ #
20627
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReplaceRootVolumeTasksRequest AWS API Documentation
20628
+ #
20629
+ class DescribeReplaceRootVolumeTasksRequest < Struct.new(
20630
+ :replace_root_volume_task_ids,
20631
+ :filters,
20632
+ :max_results,
20633
+ :next_token,
20634
+ :dry_run)
20635
+ SENSITIVE = []
20636
+ include Aws::Structure
20637
+ end
20638
+
20639
+ # @!attribute [rw] replace_root_volume_tasks
20640
+ # Information about the root volume replacement task.
20641
+ # @return [Array<Types::ReplaceRootVolumeTask>]
20642
+ #
20643
+ # @!attribute [rw] next_token
20644
+ # The token to use to retrieve the next page of results. This value is
20645
+ # `null` when there are no more results to return.
20646
+ # @return [String]
20647
+ #
20648
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReplaceRootVolumeTasksResult AWS API Documentation
20649
+ #
20650
+ class DescribeReplaceRootVolumeTasksResult < Struct.new(
20651
+ :replace_root_volume_tasks,
20652
+ :next_token)
20653
+ SENSITIVE = []
20654
+ include Aws::Structure
20655
+ end
20656
+
20315
20657
  # Contains the parameters for DescribeReservedInstancesListings.
20316
20658
  #
20317
20659
  # @note When making an API call, you may pass DescribeReservedInstancesListingsRequest
@@ -22213,6 +22555,86 @@ module Aws::EC2
22213
22555
  include Aws::Structure
22214
22556
  end
22215
22557
 
22558
+ # @note When making an API call, you may pass DescribeStoreImageTasksRequest
22559
+ # data as a hash:
22560
+ #
22561
+ # {
22562
+ # image_ids: ["ImageId"],
22563
+ # dry_run: false,
22564
+ # filters: [
22565
+ # {
22566
+ # name: "String",
22567
+ # values: ["String"],
22568
+ # },
22569
+ # ],
22570
+ # next_token: "String",
22571
+ # max_results: 1,
22572
+ # }
22573
+ #
22574
+ # @!attribute [rw] image_ids
22575
+ # The AMI IDs for which to show progress. Up to 20 AMI IDs can be
22576
+ # included in a request.
22577
+ # @return [Array<String>]
22578
+ #
22579
+ # @!attribute [rw] dry_run
22580
+ # Checks whether you have the required permissions for the action,
22581
+ # without actually making the request, and provides an error response.
22582
+ # If you have the required permissions, the error response is
22583
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
22584
+ # @return [Boolean]
22585
+ #
22586
+ # @!attribute [rw] filters
22587
+ # The filters.
22588
+ #
22589
+ # * `task-state` - Returns tasks in a certain state (`InProgress` \|
22590
+ # `Completed` \| `Failed`)
22591
+ #
22592
+ # * `bucket` - Returns task information for tasks that targeted a
22593
+ # specific bucket. For the filter value, specify the bucket name.
22594
+ # @return [Array<Types::Filter>]
22595
+ #
22596
+ # @!attribute [rw] next_token
22597
+ # The token for the next page of results.
22598
+ # @return [String]
22599
+ #
22600
+ # @!attribute [rw] max_results
22601
+ # The maximum number of results to return in a single call. To
22602
+ # retrieve the remaining results, make another call with the returned
22603
+ # `NextToken` value. This value can be between 1 and 200. You cannot
22604
+ # specify this parameter and the `ImageIDs` parameter in the same
22605
+ # call.
22606
+ # @return [Integer]
22607
+ #
22608
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeStoreImageTasksRequest AWS API Documentation
22609
+ #
22610
+ class DescribeStoreImageTasksRequest < Struct.new(
22611
+ :image_ids,
22612
+ :dry_run,
22613
+ :filters,
22614
+ :next_token,
22615
+ :max_results)
22616
+ SENSITIVE = []
22617
+ include Aws::Structure
22618
+ end
22619
+
22620
+ # @!attribute [rw] store_image_task_results
22621
+ # The information about the AMI store tasks.
22622
+ # @return [Array<Types::StoreImageTaskResult>]
22623
+ #
22624
+ # @!attribute [rw] next_token
22625
+ # The token to use to retrieve the next page of results. This value is
22626
+ # `null` when there are no more results to return.
22627
+ # @return [String]
22628
+ #
22629
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeStoreImageTasksResult AWS API Documentation
22630
+ #
22631
+ class DescribeStoreImageTasksResult < Struct.new(
22632
+ :store_image_task_results,
22633
+ :next_token)
22634
+ SENSITIVE = []
22635
+ include Aws::Structure
22636
+ end
22637
+
22216
22638
  # @note When making an API call, you may pass DescribeSubnetsRequest
22217
22639
  # data as a hash:
22218
22640
  #
@@ -22259,6 +22681,8 @@ module Aws::EC2
22259
22681
  # * `ipv6-cidr-block-association.state` - The state of an IPv6 CIDR
22260
22682
  # block associated with the subnet.
22261
22683
  #
22684
+ # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost.
22685
+ #
22262
22686
  # * `owner-id` - The ID of the AWS account that owns the subnet.
22263
22687
  #
22264
22688
  # * `state` - The state of the subnet (`pending` \| `available`).
@@ -25451,6 +25875,42 @@ module Aws::EC2
25451
25875
  include Aws::Structure
25452
25876
  end
25453
25877
 
25878
+ # @note When making an API call, you may pass DisableSerialConsoleAccessRequest
25879
+ # data as a hash:
25880
+ #
25881
+ # {
25882
+ # dry_run: false,
25883
+ # }
25884
+ #
25885
+ # @!attribute [rw] dry_run
25886
+ # Checks whether you have the required permissions for the action,
25887
+ # without actually making the request, and provides an error response.
25888
+ # If you have the required permissions, the error response is
25889
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
25890
+ # @return [Boolean]
25891
+ #
25892
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableSerialConsoleAccessRequest AWS API Documentation
25893
+ #
25894
+ class DisableSerialConsoleAccessRequest < Struct.new(
25895
+ :dry_run)
25896
+ SENSITIVE = []
25897
+ include Aws::Structure
25898
+ end
25899
+
25900
+ # @!attribute [rw] serial_console_access_enabled
25901
+ # If `true`, access to the EC2 serial console of all instances is
25902
+ # enabled for your account. If `false`, access to the EC2 serial
25903
+ # console of all instances is disabled for your account.
25904
+ # @return [Boolean]
25905
+ #
25906
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableSerialConsoleAccessResult AWS API Documentation
25907
+ #
25908
+ class DisableSerialConsoleAccessResult < Struct.new(
25909
+ :serial_console_access_enabled)
25910
+ SENSITIVE = []
25911
+ include Aws::Structure
25912
+ end
25913
+
25454
25914
  # @note When making an API call, you may pass DisableTransitGatewayRouteTablePropagationRequest
25455
25915
  # data as a hash:
25456
25916
  #
@@ -26483,6 +26943,20 @@ module Aws::EC2
26483
26943
  include Aws::Structure
26484
26944
  end
26485
26945
 
26946
+ # Describes the Elastic Fabric Adapters for the instance type.
26947
+ #
26948
+ # @!attribute [rw] maximum_efa_interfaces
26949
+ # The maximum number of Elastic Fabric Adapters for the instance type.
26950
+ # @return [Integer]
26951
+ #
26952
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EfaInfo AWS API Documentation
26953
+ #
26954
+ class EfaInfo < Struct.new(
26955
+ :maximum_efa_interfaces)
26956
+ SENSITIVE = []
26957
+ include Aws::Structure
26958
+ end
26959
+
26486
26960
  # Describes an egress-only internet gateway.
26487
26961
  #
26488
26962
  # @!attribute [rw] attachments
@@ -26932,6 +27406,42 @@ module Aws::EC2
26932
27406
  include Aws::Structure
26933
27407
  end
26934
27408
 
27409
+ # @note When making an API call, you may pass EnableSerialConsoleAccessRequest
27410
+ # data as a hash:
27411
+ #
27412
+ # {
27413
+ # dry_run: false,
27414
+ # }
27415
+ #
27416
+ # @!attribute [rw] dry_run
27417
+ # Checks whether you have the required permissions for the action,
27418
+ # without actually making the request, and provides an error response.
27419
+ # If you have the required permissions, the error response is
27420
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
27421
+ # @return [Boolean]
27422
+ #
27423
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableSerialConsoleAccessRequest AWS API Documentation
27424
+ #
27425
+ class EnableSerialConsoleAccessRequest < Struct.new(
27426
+ :dry_run)
27427
+ SENSITIVE = []
27428
+ include Aws::Structure
27429
+ end
27430
+
27431
+ # @!attribute [rw] serial_console_access_enabled
27432
+ # If `true`, access to the EC2 serial console of all instances is
27433
+ # enabled for your account. If `false`, access to the EC2 serial
27434
+ # console of all instances is disabled for your account.
27435
+ # @return [Boolean]
27436
+ #
27437
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableSerialConsoleAccessResult AWS API Documentation
27438
+ #
27439
+ class EnableSerialConsoleAccessResult < Struct.new(
27440
+ :serial_console_access_enabled)
27441
+ SENSITIVE = []
27442
+ include Aws::Structure
27443
+ end
27444
+
26935
27445
  # @note When making an API call, you may pass EnableTransitGatewayRouteTablePropagationRequest
26936
27446
  # data as a hash:
26937
27447
  #
@@ -28338,6 +28848,9 @@ module Aws::EC2
28338
28848
  # @!attribute [rw] overrides
28339
28849
  # Any parameters that you specify override the same parameters in the
28340
28850
  # launch template.
28851
+ #
28852
+ # For fleets of type `request` and `maintain`, a maximum of 300 items
28853
+ # is allowed across all launch templates.
28341
28854
  # @return [Array<Types::FleetLaunchTemplateOverridesRequest>]
28342
28855
  #
28343
28856
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FleetLaunchTemplateConfigRequest AWS API Documentation
@@ -29539,6 +30052,68 @@ module Aws::EC2
29539
30052
  include Aws::Structure
29540
30053
  end
29541
30054
 
30055
+ # @note When making an API call, you may pass GetFlowLogsIntegrationTemplateRequest
30056
+ # data as a hash:
30057
+ #
30058
+ # {
30059
+ # dry_run: false,
30060
+ # flow_log_id: "VpcFlowLogId", # required
30061
+ # config_delivery_s3_destination_arn: "String", # required
30062
+ # integrate_services: { # required
30063
+ # athena_integrations: [
30064
+ # {
30065
+ # integration_result_s3_destination_arn: "String", # required
30066
+ # partition_load_frequency: "none", # required, accepts none, daily, weekly, monthly
30067
+ # partition_start_date: Time.now,
30068
+ # partition_end_date: Time.now,
30069
+ # },
30070
+ # ],
30071
+ # },
30072
+ # }
30073
+ #
30074
+ # @!attribute [rw] dry_run
30075
+ # Checks whether you have the required permissions for the action,
30076
+ # without actually making the request, and provides an error response.
30077
+ # If you have the required permissions, the error response is
30078
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
30079
+ # @return [Boolean]
30080
+ #
30081
+ # @!attribute [rw] flow_log_id
30082
+ # The ID of the flow log.
30083
+ # @return [String]
30084
+ #
30085
+ # @!attribute [rw] config_delivery_s3_destination_arn
30086
+ # To store the CloudFormation template in Amazon S3, specify the
30087
+ # location in Amazon S3.
30088
+ # @return [String]
30089
+ #
30090
+ # @!attribute [rw] integrate_services
30091
+ # Information about the service integration.
30092
+ # @return [Types::IntegrateServices]
30093
+ #
30094
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetFlowLogsIntegrationTemplateRequest AWS API Documentation
30095
+ #
30096
+ class GetFlowLogsIntegrationTemplateRequest < Struct.new(
30097
+ :dry_run,
30098
+ :flow_log_id,
30099
+ :config_delivery_s3_destination_arn,
30100
+ :integrate_services)
30101
+ SENSITIVE = []
30102
+ include Aws::Structure
30103
+ end
30104
+
30105
+ # @!attribute [rw] result
30106
+ # The generated CloudFormation template.
30107
+ # @return [String]
30108
+ #
30109
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetFlowLogsIntegrationTemplateResult AWS API Documentation
30110
+ #
30111
+ class GetFlowLogsIntegrationTemplateResult < Struct.new(
30112
+ :result)
30113
+ SENSITIVE = []
30114
+ include Aws::Structure
30115
+ end
30116
+
29542
30117
  # @note When making an API call, you may pass GetGroupsForCapacityReservationRequest
29543
30118
  # data as a hash:
29544
30119
  #
@@ -29973,6 +30548,42 @@ module Aws::EC2
29973
30548
  include Aws::Structure
29974
30549
  end
29975
30550
 
30551
+ # @note When making an API call, you may pass GetSerialConsoleAccessStatusRequest
30552
+ # data as a hash:
30553
+ #
30554
+ # {
30555
+ # dry_run: false,
30556
+ # }
30557
+ #
30558
+ # @!attribute [rw] dry_run
30559
+ # Checks whether you have the required permissions for the action,
30560
+ # without actually making the request, and provides an error response.
30561
+ # If you have the required permissions, the error response is
30562
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
30563
+ # @return [Boolean]
30564
+ #
30565
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSerialConsoleAccessStatusRequest AWS API Documentation
30566
+ #
30567
+ class GetSerialConsoleAccessStatusRequest < Struct.new(
30568
+ :dry_run)
30569
+ SENSITIVE = []
30570
+ include Aws::Structure
30571
+ end
30572
+
30573
+ # @!attribute [rw] serial_console_access_enabled
30574
+ # If `true`, access to the EC2 serial console of all instances is
30575
+ # enabled for your account. If `false`, access to the EC2 serial
30576
+ # console of all instances is disabled for your account.
30577
+ # @return [Boolean]
30578
+ #
30579
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSerialConsoleAccessStatusResult AWS API Documentation
30580
+ #
30581
+ class GetSerialConsoleAccessStatusResult < Struct.new(
30582
+ :serial_console_access_enabled)
30583
+ SENSITIVE = []
30584
+ include Aws::Structure
30585
+ end
30586
+
29976
30587
  # @note When making an API call, you may pass GetTransitGatewayAttachmentPropagationsRequest
29977
30588
  # data as a hash:
29978
30589
  #
@@ -31192,6 +31803,15 @@ module Aws::EC2
31192
31803
  # The type of virtualization of the AMI.
31193
31804
  # @return [String]
31194
31805
  #
31806
+ # @!attribute [rw] boot_mode
31807
+ # The boot mode of the image. For more information, see [Boot
31808
+ # modes][1] in the *Amazon Elastic Compute Cloud User Guide*.
31809
+ #
31810
+ #
31811
+ #
31812
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html
31813
+ # @return [String]
31814
+ #
31195
31815
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Image AWS API Documentation
31196
31816
  #
31197
31817
  class Image < Struct.new(
@@ -31220,7 +31840,8 @@ module Aws::EC2
31220
31840
  :sriov_net_support,
31221
31841
  :state_reason,
31222
31842
  :tags,
31223
- :virtualization_type)
31843
+ :virtualization_type,
31844
+ :boot_mode)
31224
31845
  SENSITIVE = []
31225
31846
  include Aws::Structure
31226
31847
  end
@@ -31260,6 +31881,10 @@ module Aws::EC2
31260
31881
  # Function interface is enabled.
31261
31882
  # @return [Types::AttributeValue]
31262
31883
  #
31884
+ # @!attribute [rw] boot_mode
31885
+ # Describes a value for a resource attribute that is a String.
31886
+ # @return [Types::AttributeValue]
31887
+ #
31263
31888
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImageAttribute AWS API Documentation
31264
31889
  #
31265
31890
  class ImageAttribute < Struct.new(
@@ -31270,7 +31895,8 @@ module Aws::EC2
31270
31895
  :description,
31271
31896
  :kernel_id,
31272
31897
  :ramdisk_id,
31273
- :sriov_net_support)
31898
+ :sriov_net_support,
31899
+ :boot_mode)
31274
31900
  SENSITIVE = []
31275
31901
  include Aws::Structure
31276
31902
  end
@@ -32636,16 +33262,7 @@ module Aws::EC2
32636
33262
  # @return [Array<Types::GroupIdentifier>]
32637
33263
  #
32638
33264
  # @!attribute [rw] source_dest_check
32639
- # Specifies whether to enable an instance launched in a VPC to perform
32640
- # NAT. This controls whether source/destination checking is enabled on
32641
- # the instance. A value of `true` means that checking is enabled, and
32642
- # `false` means that checking is disabled. The value must be `false`
32643
- # for the instance to perform NAT. For more information, see [NAT
32644
- # instances][1] in the *Amazon VPC User Guide*.
32645
- #
32646
- #
32647
- #
32648
- # [1]: https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html
33265
+ # Indicates whether source/destination checking is enabled.
32649
33266
  # @return [Boolean]
32650
33267
  #
32651
33268
  # @!attribute [rw] spot_instance_request_id
@@ -32697,6 +33314,15 @@ module Aws::EC2
32697
33314
  # Indicates whether the instance is enabled for AWS Nitro Enclaves.
32698
33315
  # @return [Types::EnclaveOptions]
32699
33316
  #
33317
+ # @!attribute [rw] boot_mode
33318
+ # The boot mode of the instance. For more information, see [Boot
33319
+ # modes][1] in the *Amazon EC2 User Guide*.
33320
+ #
33321
+ #
33322
+ #
33323
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html
33324
+ # @return [String]
33325
+ #
32700
33326
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Instance AWS API Documentation
32701
33327
  #
32702
33328
  class Instance < Struct.new(
@@ -32747,7 +33373,8 @@ module Aws::EC2
32747
33373
  :hibernation_options,
32748
33374
  :licenses,
32749
33375
  :metadata_options,
32750
- :enclave_options)
33376
+ :enclave_options,
33377
+ :boot_mode)
32751
33378
  SENSITIVE = []
32752
33379
  include Aws::Structure
32753
33380
  end
@@ -32812,10 +33439,12 @@ module Aws::EC2
32812
33439
  # @return [Types::AttributeValue]
32813
33440
  #
32814
33441
  # @!attribute [rw] source_dest_check
32815
- # Indicates whether source/destination checking is enabled. A value of
32816
- # `true` means that checking is enabled, and `false` means that
32817
- # checking is disabled. This value must be `false` for a NAT instance
32818
- # to perform NAT.
33442
+ # Enable or disable source/destination checks, which ensure that the
33443
+ # instance is either the source or the destination of any traffic that
33444
+ # it receives. If the value is `true`, source/destination checks are
33445
+ # enabled; otherwise, they are disabled. The default value is `true`.
33446
+ # You must disable source/destination checks if the instance runs
33447
+ # services such as network address translation, routing, or firewalls.
32819
33448
  # @return [Types::AttributeBooleanValue]
32820
33449
  #
32821
33450
  # @!attribute [rw] sriov_net_support
@@ -34022,6 +34651,15 @@ module Aws::EC2
34022
34651
  # Indicates whether auto recovery is supported.
34023
34652
  # @return [Boolean]
34024
34653
  #
34654
+ # @!attribute [rw] supported_boot_modes
34655
+ # The supported boot modes. For more information, see [Boot modes][1]
34656
+ # in the *Amazon EC2 User Guide*.
34657
+ #
34658
+ #
34659
+ #
34660
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html
34661
+ # @return [Array<String>]
34662
+ #
34025
34663
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceTypeInfo AWS API Documentation
34026
34664
  #
34027
34665
  class InstanceTypeInfo < Struct.new(
@@ -34047,7 +34685,8 @@ module Aws::EC2
34047
34685
  :hibernation_supported,
34048
34686
  :burstable_performance_supported,
34049
34687
  :dedicated_hosts_supported,
34050
- :auto_recovery_supported)
34688
+ :auto_recovery_supported,
34689
+ :supported_boot_modes)
34051
34690
  SENSITIVE = []
34052
34691
  include Aws::Structure
34053
34692
  end
@@ -34104,6 +34743,34 @@ module Aws::EC2
34104
34743
  include Aws::Structure
34105
34744
  end
34106
34745
 
34746
+ # Describes service integrations with VPC Flow logs.
34747
+ #
34748
+ # @note When making an API call, you may pass IntegrateServices
34749
+ # data as a hash:
34750
+ #
34751
+ # {
34752
+ # athena_integrations: [
34753
+ # {
34754
+ # integration_result_s3_destination_arn: "String", # required
34755
+ # partition_load_frequency: "none", # required, accepts none, daily, weekly, monthly
34756
+ # partition_start_date: Time.now,
34757
+ # partition_end_date: Time.now,
34758
+ # },
34759
+ # ],
34760
+ # }
34761
+ #
34762
+ # @!attribute [rw] athena_integrations
34763
+ # Information about the integration with Amazon Athena.
34764
+ # @return [Array<Types::AthenaIntegration>]
34765
+ #
34766
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IntegrateServices AWS API Documentation
34767
+ #
34768
+ class IntegrateServices < Struct.new(
34769
+ :athena_integrations)
34770
+ SENSITIVE = []
34771
+ include Aws::Structure
34772
+ end
34773
+
34107
34774
  # Describes an internet gateway.
34108
34775
  #
34109
34776
  # @!attribute [rw] attachments
@@ -37706,10 +38373,12 @@ module Aws::EC2
37706
38373
  # }
37707
38374
  #
37708
38375
  # @!attribute [rw] source_dest_check
37709
- # Specifies whether source/destination checking is enabled. A value of
37710
- # `true` means that checking is enabled, and `false` means that
37711
- # checking is disabled. This value must be `false` for a NAT instance
37712
- # to perform NAT.
38376
+ # Enable or disable source/destination checks, which ensure that the
38377
+ # instance is either the source or the destination of any traffic that
38378
+ # it receives. If the value is `true`, source/destination checks are
38379
+ # enabled; otherwise, they are disabled. The default value is `true`.
38380
+ # You must disable source/destination checks if the instance runs
38381
+ # services such as network address translation, routing, or firewalls.
37713
38382
  # @return [Types::AttributeBooleanValue]
37714
38383
  #
37715
38384
  # @!attribute [rw] attribute
@@ -39347,7 +40016,8 @@ module Aws::EC2
39347
40016
  # * `io2`\: 100-64,000 IOPS
39348
40017
  #
39349
40018
  # Default: If no IOPS value is specified, the existing value is
39350
- # retained.
40019
+ # retained, unless a volume type is modified that supports different
40020
+ # values.
39351
40021
  # @return [Integer]
39352
40022
  #
39353
40023
  # @!attribute [rw] throughput
@@ -40843,6 +41513,10 @@ module Aws::EC2
40843
41513
  # Indicates whether Elastic Fabric Adapter (EFA) is supported.
40844
41514
  # @return [Boolean]
40845
41515
  #
41516
+ # @!attribute [rw] efa_info
41517
+ # Describes the Elastic Fabric Adapters for the instance type.
41518
+ # @return [Types::EfaInfo]
41519
+ #
40846
41520
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInfo AWS API Documentation
40847
41521
  #
40848
41522
  class NetworkInfo < Struct.new(
@@ -40855,7 +41529,8 @@ module Aws::EC2
40855
41529
  :ipv_6_addresses_per_interface,
40856
41530
  :ipv_6_supported,
40857
41531
  :ena_support,
40858
- :efa_supported)
41532
+ :efa_supported,
41533
+ :efa_info)
40859
41534
  SENSITIVE = []
40860
41535
  include Aws::Structure
40861
41536
  end
@@ -43171,6 +43846,7 @@ module Aws::EC2
43171
43846
  # root_device_name: "String",
43172
43847
  # sriov_net_support: "String",
43173
43848
  # virtualization_type: "String",
43849
+ # boot_mode: "legacy-bios", # accepts legacy-bios, uefi
43174
43850
  # }
43175
43851
  #
43176
43852
  # @!attribute [rw] image_location
@@ -43273,6 +43949,15 @@ module Aws::EC2
43273
43949
  # Default: `paravirtual`
43274
43950
  # @return [String]
43275
43951
  #
43952
+ # @!attribute [rw] boot_mode
43953
+ # The boot mode of the AMI. For more information, see [Boot modes][1]
43954
+ # in the *Amazon Elastic Compute Cloud User Guide*.
43955
+ #
43956
+ #
43957
+ #
43958
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html
43959
+ # @return [String]
43960
+ #
43276
43961
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RegisterImageRequest AWS API Documentation
43277
43962
  #
43278
43963
  class RegisterImageRequest < Struct.new(
@@ -43288,7 +43973,8 @@ module Aws::EC2
43288
43973
  :ramdisk_id,
43289
43974
  :root_device_name,
43290
43975
  :sriov_net_support,
43291
- :virtualization_type)
43976
+ :virtualization_type,
43977
+ :boot_mode)
43292
43978
  SENSITIVE = []
43293
43979
  include Aws::Structure
43294
43980
  end
@@ -44007,6 +44693,66 @@ module Aws::EC2
44007
44693
  include Aws::Structure
44008
44694
  end
44009
44695
 
44696
+ # Information about a root volume replacement task.
44697
+ #
44698
+ # @!attribute [rw] replace_root_volume_task_id
44699
+ # The ID of the root volume replacement task.
44700
+ # @return [String]
44701
+ #
44702
+ # @!attribute [rw] instance_id
44703
+ # The ID of the instance for which the root volume replacement task
44704
+ # was created.
44705
+ # @return [String]
44706
+ #
44707
+ # @!attribute [rw] task_state
44708
+ # The state of the task. The task can be in one of the following
44709
+ # states:
44710
+ #
44711
+ # * `pending` - the replacement volume is being created.
44712
+ #
44713
+ # * `in-progress` - the original volume is being detached and the
44714
+ # replacement volume is being attached.
44715
+ #
44716
+ # * `succeeded` - the replacement volume has been successfully
44717
+ # attached to the instance and the instance is available.
44718
+ #
44719
+ # * `failing` - the replacement task is in the process of failing.
44720
+ #
44721
+ # * `failed` - the replacement task has failed but the original root
44722
+ # volume is still attached.
44723
+ #
44724
+ # * `failing-detached` - the replacement task is in the process of
44725
+ # failing. The instance might have no root volume attached.
44726
+ #
44727
+ # * `failed-detached` - the replacement task has failed and the
44728
+ # instance has no root volume attached.
44729
+ # @return [String]
44730
+ #
44731
+ # @!attribute [rw] start_time
44732
+ # The time the task was started.
44733
+ # @return [String]
44734
+ #
44735
+ # @!attribute [rw] complete_time
44736
+ # The time the task completed.
44737
+ # @return [String]
44738
+ #
44739
+ # @!attribute [rw] tags
44740
+ # The tags assigned to the task.
44741
+ # @return [Array<Types::Tag>]
44742
+ #
44743
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceRootVolumeTask AWS API Documentation
44744
+ #
44745
+ class ReplaceRootVolumeTask < Struct.new(
44746
+ :replace_root_volume_task_id,
44747
+ :instance_id,
44748
+ :task_state,
44749
+ :start_time,
44750
+ :complete_time,
44751
+ :tags)
44752
+ SENSITIVE = []
44753
+ include Aws::Structure
44754
+ end
44755
+
44010
44756
  # @note When making an API call, you may pass ReplaceRouteRequest
44011
44757
  # data as a hash:
44012
44758
  #
@@ -47728,6 +48474,45 @@ module Aws::EC2
47728
48474
  include Aws::Structure
47729
48475
  end
47730
48476
 
48477
+ # The tags to apply to the AMI object that will be stored in the S3
48478
+ # bucket. For more information, see [Categorizing your storage using
48479
+ # tags][1] in the *Amazon Simple Storage Service User Guide*.
48480
+ #
48481
+ #
48482
+ #
48483
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html
48484
+ #
48485
+ # @note When making an API call, you may pass S3ObjectTag
48486
+ # data as a hash:
48487
+ #
48488
+ # {
48489
+ # key: "String",
48490
+ # value: "String",
48491
+ # }
48492
+ #
48493
+ # @!attribute [rw] key
48494
+ # The key of the tag.
48495
+ #
48496
+ # Constraints: Tag keys are case-sensitive and can be up to 128
48497
+ # Unicode characters in length. May not begin with `aws`\:.
48498
+ # @return [String]
48499
+ #
48500
+ # @!attribute [rw] value
48501
+ # The value of the tag.
48502
+ #
48503
+ # Constraints: Tag values are case-sensitive and can be up to 256
48504
+ # Unicode characters in length.
48505
+ # @return [String]
48506
+ #
48507
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/S3ObjectTag AWS API Documentation
48508
+ #
48509
+ class S3ObjectTag < Struct.new(
48510
+ :key,
48511
+ :value)
48512
+ SENSITIVE = []
48513
+ include Aws::Structure
48514
+ end
48515
+
47731
48516
  # Describes the storage parameters for S3 and S3 buckets for an instance
47732
48517
  # store-backed AMI.
47733
48518
  #
@@ -51333,6 +52118,53 @@ module Aws::EC2
51333
52118
  include Aws::Structure
51334
52119
  end
51335
52120
 
52121
+ # The information about the AMI store task, including the progress of
52122
+ # the task.
52123
+ #
52124
+ # @!attribute [rw] ami_id
52125
+ # The ID of the AMI that is being stored.
52126
+ # @return [String]
52127
+ #
52128
+ # @!attribute [rw] task_start_time
52129
+ # The time the task started.
52130
+ # @return [Time]
52131
+ #
52132
+ # @!attribute [rw] bucket
52133
+ # The name of the S3 bucket that contains the stored AMI object.
52134
+ # @return [String]
52135
+ #
52136
+ # @!attribute [rw] s3object_key
52137
+ # The name of the stored AMI object in the bucket.
52138
+ # @return [String]
52139
+ #
52140
+ # @!attribute [rw] progress_percentage
52141
+ # The progress of the task as a percentage.
52142
+ # @return [Integer]
52143
+ #
52144
+ # @!attribute [rw] store_task_state
52145
+ # The state of the store task (`InProgress`, `Completed`, or
52146
+ # `Failed`).
52147
+ # @return [String]
52148
+ #
52149
+ # @!attribute [rw] store_task_failure_reason
52150
+ # If the tasks fails, the reason for the failure is returned. If the
52151
+ # task succeeds, `null` is returned.
52152
+ # @return [String]
52153
+ #
52154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StoreImageTaskResult AWS API Documentation
52155
+ #
52156
+ class StoreImageTaskResult < Struct.new(
52157
+ :ami_id,
52158
+ :task_start_time,
52159
+ :bucket,
52160
+ :s3object_key,
52161
+ :progress_percentage,
52162
+ :store_task_state,
52163
+ :store_task_failure_reason)
52164
+ SENSITIVE = []
52165
+ include Aws::Structure
52166
+ end
52167
+
51336
52168
  # Describes a subnet.
51337
52169
  #
51338
52170
  # @!attribute [rw] availability_zone
@@ -53656,23 +54488,23 @@ module Aws::EC2
53656
54488
  # data as a hash:
53657
54489
  #
53658
54490
  # {
53659
- # ipv_6_addresses: ["String"], # required
53660
54491
  # network_interface_id: "NetworkInterfaceId", # required
54492
+ # ipv_6_addresses: ["String"], # required
53661
54493
  # }
53662
54494
  #
53663
- # @!attribute [rw] ipv_6_addresses
53664
- # The IPv6 addresses to unassign from the network interface.
53665
- # @return [Array<String>]
53666
- #
53667
54495
  # @!attribute [rw] network_interface_id
53668
54496
  # The ID of the network interface.
53669
54497
  # @return [String]
53670
54498
  #
54499
+ # @!attribute [rw] ipv_6_addresses
54500
+ # The IPv6 addresses to unassign from the network interface.
54501
+ # @return [Array<String>]
54502
+ #
53671
54503
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnassignIpv6AddressesRequest AWS API Documentation
53672
54504
  #
53673
54505
  class UnassignIpv6AddressesRequest < Struct.new(
53674
- :ipv_6_addresses,
53675
- :network_interface_id)
54506
+ :network_interface_id,
54507
+ :ipv_6_addresses)
53676
54508
  SENSITIVE = []
53677
54509
  include Aws::Structure
53678
54510
  end