aws-sdk-ec2 1.199.0 → 1.204.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.
@@ -422,6 +422,9 @@ module Aws::EC2
422
422
  # http_put_response_hop_limit: 1,
423
423
  # http_endpoint: "disabled", # accepts disabled, enabled
424
424
  # },
425
+ # enclave_options: {
426
+ # enabled: false,
427
+ # },
425
428
  # })
426
429
  # @param [Hash] options ({})
427
430
  # @option options [Array<Types::BlockDeviceMapping>] :block_device_mappings
@@ -689,6 +692,9 @@ module Aws::EC2
689
692
  # information, see [Hibernate your instance][1] in the *Amazon Elastic
690
693
  # Compute Cloud User Guide*.
691
694
  #
695
+ # You can't enable hibernation and AWS Nitro Enclaves on the same
696
+ # instance.
697
+ #
692
698
  #
693
699
  #
694
700
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html
@@ -701,6 +707,20 @@ module Aws::EC2
701
707
  #
702
708
  #
703
709
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html
710
+ # @option options [Types::EnclaveOptionsRequest] :enclave_options
711
+ # Indicates whether the instance is enabled for AWS Nitro Enclaves. For
712
+ # more information, see [ AWS Nitro Enclaves][1] in the *Amazon Elastic
713
+ # Compute Cloud User Guide*.
714
+ #
715
+ # You can't enable AWS Nitro Enclaves and hibernation on the same
716
+ # instance. For more information about AWS Nitro Enclaves requirements,
717
+ # see [ AWS Nitro Enclaves][2] in the *Amazon Elastic Compute Cloud User
718
+ # Guide*.
719
+ #
720
+ #
721
+ #
722
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html
723
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html#nitro-enclave-reqs
704
724
  # @return [Instance::Collection]
705
725
  def create_instances(options = {})
706
726
  batch = []
@@ -1109,6 +1109,67 @@ module Aws::EC2
1109
1109
  include Aws::Structure
1110
1110
  end
1111
1111
 
1112
+ # @note When making an API call, you may pass AssociateEnclaveCertificateIamRoleRequest
1113
+ # data as a hash:
1114
+ #
1115
+ # {
1116
+ # certificate_arn: "ResourceArn",
1117
+ # role_arn: "ResourceArn",
1118
+ # dry_run: false,
1119
+ # }
1120
+ #
1121
+ # @!attribute [rw] certificate_arn
1122
+ # The ARN of the ACM certificate with which to associate the IAM role.
1123
+ # @return [String]
1124
+ #
1125
+ # @!attribute [rw] role_arn
1126
+ # The ARN of the IAM role to associate with the ACM certificate. You
1127
+ # can associate up to 16 IAM roles with an ACM certificate.
1128
+ # @return [String]
1129
+ #
1130
+ # @!attribute [rw] dry_run
1131
+ # Checks whether you have the required permissions for the action,
1132
+ # without actually making the request, and provides an error response.
1133
+ # If you have the required permissions, the error response is
1134
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1135
+ # @return [Boolean]
1136
+ #
1137
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateEnclaveCertificateIamRoleRequest AWS API Documentation
1138
+ #
1139
+ class AssociateEnclaveCertificateIamRoleRequest < Struct.new(
1140
+ :certificate_arn,
1141
+ :role_arn,
1142
+ :dry_run)
1143
+ SENSITIVE = []
1144
+ include Aws::Structure
1145
+ end
1146
+
1147
+ # @!attribute [rw] certificate_s3_bucket_name
1148
+ # The name of the Amazon S3 bucket to which the certificate was
1149
+ # uploaded.
1150
+ # @return [String]
1151
+ #
1152
+ # @!attribute [rw] certificate_s3_object_key
1153
+ # The Amazon S3 object key where the certificate, certificate chain,
1154
+ # and encrypted private key bundle are stored. The object key is
1155
+ # formatted as follows: `certificate_arn`/`role_arn`.
1156
+ # @return [String]
1157
+ #
1158
+ # @!attribute [rw] encryption_kms_key_id
1159
+ # The ID of the AWS Key Management Service (KMS) key used to encrypt
1160
+ # the private key of the certificate.
1161
+ # @return [String]
1162
+ #
1163
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateEnclaveCertificateIamRoleResult AWS API Documentation
1164
+ #
1165
+ class AssociateEnclaveCertificateIamRoleResult < Struct.new(
1166
+ :certificate_s3_bucket_name,
1167
+ :certificate_s3_object_key,
1168
+ :encryption_kms_key_id)
1169
+ SENSITIVE = []
1170
+ include Aws::Structure
1171
+ end
1172
+
1112
1173
  # @note When making an API call, you may pass AssociateIamInstanceProfileRequest
1113
1174
  # data as a hash:
1114
1175
  #
@@ -1435,6 +1496,38 @@ module Aws::EC2
1435
1496
  include Aws::Structure
1436
1497
  end
1437
1498
 
1499
+ # Information about the associated IAM roles.
1500
+ #
1501
+ # @!attribute [rw] associated_role_arn
1502
+ # The ARN of the associated IAM role.
1503
+ # @return [String]
1504
+ #
1505
+ # @!attribute [rw] certificate_s3_bucket_name
1506
+ # The name of the Amazon S3 bucket in which the Amazon S3 object is
1507
+ # stored.
1508
+ # @return [String]
1509
+ #
1510
+ # @!attribute [rw] certificate_s3_object_key
1511
+ # The key of the Amazon S3 object ey where the certificate,
1512
+ # certificate chain, and encrypted private key bundle is stored. The
1513
+ # object key is formated as follows: `certificate_arn`/`role_arn`.
1514
+ # @return [String]
1515
+ #
1516
+ # @!attribute [rw] encryption_kms_key_id
1517
+ # The ID of the KMS key used to encrypt the private key.
1518
+ # @return [String]
1519
+ #
1520
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociatedRole AWS API Documentation
1521
+ #
1522
+ class AssociatedRole < Struct.new(
1523
+ :associated_role_arn,
1524
+ :certificate_s3_bucket_name,
1525
+ :certificate_s3_object_key,
1526
+ :encryption_kms_key_id)
1527
+ SENSITIVE = []
1528
+ include Aws::Structure
1529
+ end
1530
+
1438
1531
  # Describes a target network that is associated with a Client VPN
1439
1532
  # endpoint. A target network is a subnet in a VPC.
1440
1533
  #
@@ -3613,7 +3706,7 @@ module Aws::EC2
3613
3706
  #
3614
3707
  #
3615
3708
  #
3616
- # [1]: https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/authentication-authrization.html#client-authentication
3709
+ # [1]: https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/client-authentication.html
3617
3710
  #
3618
3711
  # @!attribute [rw] type
3619
3712
  # The authentication type used.
@@ -3663,6 +3756,7 @@ module Aws::EC2
3663
3756
  # },
3664
3757
  # federated_authentication: {
3665
3758
  # saml_provider_arn: "String",
3759
+ # self_service_saml_provider_arn: "String",
3666
3760
  # },
3667
3761
  # }
3668
3762
  #
@@ -3907,6 +4001,10 @@ module Aws::EC2
3907
4001
  # The ID of the VPC.
3908
4002
  # @return [String]
3909
4003
  #
4004
+ # @!attribute [rw] self_service_portal_url
4005
+ # The URL of the self-service portal.
4006
+ # @return [String]
4007
+ #
3910
4008
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientVpnEndpoint AWS API Documentation
3911
4009
  #
3912
4010
  class ClientVpnEndpoint < Struct.new(
@@ -3928,7 +4026,8 @@ module Aws::EC2
3928
4026
  :connection_log_options,
3929
4027
  :tags,
3930
4028
  :security_group_ids,
3931
- :vpc_id)
4029
+ :vpc_id,
4030
+ :self_service_portal_url)
3932
4031
  SENSITIVE = []
3933
4032
  include Aws::Structure
3934
4033
  end
@@ -4977,6 +5076,7 @@ module Aws::EC2
4977
5076
  # },
4978
5077
  # federated_authentication: {
4979
5078
  # saml_provider_arn: "String",
5079
+ # self_service_saml_provider_arn: "String",
4980
5080
  # },
4981
5081
  # },
4982
5082
  # ],
@@ -5005,6 +5105,7 @@ module Aws::EC2
5005
5105
  # ],
5006
5106
  # security_group_ids: ["SecurityGroupId"],
5007
5107
  # vpc_id: "VpcId",
5108
+ # self_service_portal: "enabled", # accepts enabled, disabled
5008
5109
  # }
5009
5110
  #
5010
5111
  # @!attribute [rw] client_cidr_block
@@ -5123,6 +5224,13 @@ module Aws::EC2
5123
5224
  # security group for the VPC is applied.
5124
5225
  # @return [String]
5125
5226
  #
5227
+ # @!attribute [rw] self_service_portal
5228
+ # Specify whether to enable the self-service portal for the Client VPN
5229
+ # endpoint.
5230
+ #
5231
+ # Default Value: `enabled`
5232
+ # @return [String]
5233
+ #
5126
5234
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateClientVpnEndpointRequest AWS API Documentation
5127
5235
  #
5128
5236
  class CreateClientVpnEndpointRequest < Struct.new(
@@ -5139,7 +5247,8 @@ module Aws::EC2
5139
5247
  :client_token,
5140
5248
  :tag_specifications,
5141
5249
  :security_group_ids,
5142
- :vpc_id)
5250
+ :vpc_id,
5251
+ :self_service_portal)
5143
5252
  SENSITIVE = []
5144
5253
  include Aws::Structure
5145
5254
  end
@@ -6536,6 +6645,9 @@ module Aws::EC2
6536
6645
  # http_put_response_hop_limit: 1,
6537
6646
  # http_endpoint: "disabled", # accepts disabled, enabled
6538
6647
  # },
6648
+ # enclave_options: {
6649
+ # enabled: false,
6650
+ # },
6539
6651
  # },
6540
6652
  # tag_specifications: [
6541
6653
  # {
@@ -6758,6 +6870,9 @@ module Aws::EC2
6758
6870
  # http_put_response_hop_limit: 1,
6759
6871
  # http_endpoint: "disabled", # accepts disabled, enabled
6760
6872
  # },
6873
+ # enclave_options: {
6874
+ # enabled: false,
6875
+ # },
6761
6876
  # },
6762
6877
  # }
6763
6878
  #
@@ -8054,7 +8169,13 @@ module Aws::EC2
8054
8169
  # }
8055
8170
  #
8056
8171
  # @!attribute [rw] bucket
8057
- # The Amazon S3 bucket in which to store the Spot Instance data feed.
8172
+ # The name of the Amazon S3 bucket in which to store the Spot Instance
8173
+ # data feed. For more information about bucket names, see [Rules for
8174
+ # bucket naming][1] in the *Amazon S3 Developer Guide*.
8175
+ #
8176
+ #
8177
+ #
8178
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html#bucketnamingrules
8058
8179
  # @return [String]
8059
8180
  #
8060
8181
  # @!attribute [rw] dry_run
@@ -8065,7 +8186,7 @@ module Aws::EC2
8065
8186
  # @return [Boolean]
8066
8187
  #
8067
8188
  # @!attribute [rw] prefix
8068
- # A prefix for the data feed file names.
8189
+ # The prefix for the data feed file names.
8069
8190
  # @return [String]
8070
8191
  #
8071
8192
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSpotDatafeedSubscriptionRequest AWS API Documentation
@@ -9077,6 +9198,7 @@ module Aws::EC2
9077
9198
  # options: {
9078
9199
  # dns_support: "enable", # accepts enable, disable
9079
9200
  # ipv_6_support: "enable", # accepts enable, disable
9201
+ # appliance_mode_support: "enable", # accepts enable, disable
9080
9202
  # },
9081
9203
  # tag_specifications: [
9082
9204
  # {
@@ -9143,6 +9265,7 @@ module Aws::EC2
9143
9265
  # {
9144
9266
  # dns_support: "enable", # accepts enable, disable
9145
9267
  # ipv_6_support: "enable", # accepts enable, disable
9268
+ # appliance_mode_support: "enable", # accepts enable, disable
9146
9269
  # }
9147
9270
  #
9148
9271
  # @!attribute [rw] dns_support
@@ -9153,11 +9276,19 @@ module Aws::EC2
9153
9276
  # Enable or disable IPv6 support. The default is `enable`.
9154
9277
  # @return [String]
9155
9278
  #
9279
+ # @!attribute [rw] appliance_mode_support
9280
+ # Enable or disable support for appliance mode. If enabled, a traffic
9281
+ # flow between a source and destination uses the same Availability
9282
+ # Zone for the VPC attachment for the lifetime of that flow. The
9283
+ # default is `disable`.
9284
+ # @return [String]
9285
+ #
9156
9286
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayVpcAttachmentRequestOptions AWS API Documentation
9157
9287
  #
9158
9288
  class CreateTransitGatewayVpcAttachmentRequestOptions < Struct.new(
9159
9289
  :dns_support,
9160
- :ipv_6_support)
9290
+ :ipv_6_support,
9291
+ :appliance_mode_support)
9161
9292
  SENSITIVE = []
9162
9293
  include Aws::Structure
9163
9294
  end
@@ -15806,7 +15937,7 @@ module Aws::EC2
15806
15937
  # data as a hash:
15807
15938
  #
15808
15939
  # {
15809
- # attribute: "instanceType", # required, accepts instanceType, kernel, ramdisk, userData, disableApiTermination, instanceInitiatedShutdownBehavior, rootDeviceName, blockDeviceMapping, productCodes, sourceDestCheck, groupSet, ebsOptimized, sriovNetSupport, enaSupport
15940
+ # attribute: "instanceType", # required, accepts instanceType, kernel, ramdisk, userData, disableApiTermination, instanceInitiatedShutdownBehavior, rootDeviceName, blockDeviceMapping, productCodes, sourceDestCheck, groupSet, ebsOptimized, sriovNetSupport, enaSupport, enclaveOptions
15810
15941
  # dry_run: false,
15811
15942
  # instance_id: "InstanceId", # required
15812
15943
  # }
@@ -16215,26 +16346,26 @@ module Aws::EC2
16215
16346
  # baseline bandwidth performance for an EBS-optimized instance type,
16216
16347
  # in Mbps.
16217
16348
  #
16218
- # * `ebs-info.ebs-optimized-info.baseline-throughput-in-mbps` - The
16219
- # baseline throughput performance for an EBS-optimized instance
16220
- # type, in MBps.
16221
- #
16222
16349
  # * `ebs-info.ebs-optimized-info.baseline-iops` - The baseline
16223
16350
  # input/output storage operations per second for an EBS-optimized
16224
16351
  # instance type.
16225
16352
  #
16353
+ # * `ebs-info.ebs-optimized-info.baseline-throughput-in-mbps` - The
16354
+ # baseline throughput performance for an EBS-optimized instance
16355
+ # type, in MBps.
16356
+ #
16226
16357
  # * `ebs-info.ebs-optimized-info.maximum-bandwidth-in-mbps` - The
16227
16358
  # maximum bandwidth performance for an EBS-optimized instance type,
16228
16359
  # in Mbps.
16229
16360
  #
16230
- # * `ebs-info.ebs-optimized-info.maximum-throughput-in-mbps` - The
16231
- # maximum throughput performance for an EBS-optimized instance type,
16232
- # in MBps.
16233
- #
16234
16361
  # * `ebs-info.ebs-optimized-info.maximum-iops` - The maximum
16235
16362
  # input/output storage operations per second for an EBS-optimized
16236
16363
  # instance type.
16237
16364
  #
16365
+ # * `ebs-info.ebs-optimized-info.maximum-throughput-in-mbps` - The
16366
+ # maximum throughput performance for an EBS-optimized instance type,
16367
+ # in MBps.
16368
+ #
16238
16369
  # * `ebs-info.ebs-optimized-support` - Indicates whether the instance
16239
16370
  # type is EBS-optimized. (`supported` \| `unsupported` \| `default`)
16240
16371
  #
@@ -16242,7 +16373,7 @@ module Aws::EC2
16242
16373
  # is supported. (`supported` \| `unsupported`)
16243
16374
  #
16244
16375
  # * `ebs-info.nvme-support` - Indicates whether non-volatile memory
16245
- # express (NVMe) is supported or required. (`required` \|
16376
+ # express (NVMe) is supported for EBS volumes. (`required` \|
16246
16377
  # `supported` \| `unsupported`)
16247
16378
  #
16248
16379
  # * `free-tier-eligible` - Indicates whether the instance type is
@@ -16251,7 +16382,7 @@ module Aws::EC2
16251
16382
  # * `hibernation-supported` - Indicates whether On-Demand hibernation
16252
16383
  # is supported. (`true` \| `false`)
16253
16384
  #
16254
- # * `hypervisor` - The hypervisor used. (`nitro` \| `xen`)
16385
+ # * `hypervisor` - The hypervisor. (`nitro` \| `xen`)
16255
16386
  #
16256
16387
  # * `instance-storage-info.disk.count` - The number of local disks.
16257
16388
  #
@@ -16261,21 +16392,28 @@ module Aws::EC2
16261
16392
  # * `instance-storage-info.disk.type` - The storage technology for the
16262
16393
  # local instance storage disks. (`hdd` \| `ssd`)
16263
16394
  #
16395
+ # * `instance-storage-info.nvme-support` - Indicates whether
16396
+ # non-volatile memory express (NVMe) is supported for instance
16397
+ # store. (`required` \| `supported`) \| `unsupported`)
16398
+ #
16264
16399
  # * `instance-storage-info.total-size-in-gb` - The total amount of
16265
16400
  # storage available from all local instance storage, in GB.
16266
16401
  #
16267
16402
  # * `instance-storage-supported` - Indicates whether the instance type
16268
16403
  # has local instance storage. (`true` \| `false`)
16269
16404
  #
16405
+ # * `instance-type` - The instance type (for example `c5.2xlarge` or
16406
+ # c5*).
16407
+ #
16270
16408
  # * `memory-info.size-in-mib` - The memory size.
16271
16409
  #
16410
+ # * `network-info.efa-supported` - Indicates whether the instance type
16411
+ # supports Elastic Fabric Adapter (EFA). (`true` \| `false`)
16412
+ #
16272
16413
  # * `network-info.ena-support` - Indicates whether Elastic Network
16273
16414
  # Adapter (ENA) is supported or required. (`required` \| `supported`
16274
16415
  # \| `unsupported`)
16275
16416
  #
16276
- # * `network-info.efa-supported` - Indicates whether the instance type
16277
- # supports Elastic Fabric Adapter (EFA). (`true` \| `false`)
16278
- #
16279
16417
  # * `network-info.ipv4-addresses-per-interface` - The maximum number
16280
16418
  # of private IPv4 addresses per network interface.
16281
16419
  #
@@ -16288,12 +16426,23 @@ module Aws::EC2
16288
16426
  # * `network-info.maximum-network-interfaces` - The maximum number of
16289
16427
  # network interfaces per instance.
16290
16428
  #
16291
- # * `network-info.network-performance` - Describes the network
16292
- # performance.
16429
+ # * `network-info.network-performance` - The network performance (for
16430
+ # example, "25 Gigabit").
16431
+ #
16432
+ # * `processor-info.supported-architecture` - The CPU architecture.
16433
+ # (`arm64` \| `i386` \| `x86_64`)
16293
16434
  #
16294
16435
  # * `processor-info.sustained-clock-speed-in-ghz` - The CPU clock
16295
16436
  # speed, in GHz.
16296
16437
  #
16438
+ # * `supported-root-device-type` - The root device type. (`ebs` \|
16439
+ # `instance-store`)
16440
+ #
16441
+ # * `supported-usage-class` - The usage class. (`on-demand` \| `spot`)
16442
+ #
16443
+ # * `supported-virtualization-type` - The virtualization type. (`hvm`
16444
+ # \| `paravirtual`)
16445
+ #
16297
16446
  # * `vcpu-info.default-cores` - The default number of cores for the
16298
16447
  # instance type.
16299
16448
  #
@@ -16302,6 +16451,13 @@ module Aws::EC2
16302
16451
  #
16303
16452
  # * `vcpu-info.default-vcpus` - The default number of vCPUs for the
16304
16453
  # instance type.
16454
+ #
16455
+ # * `vcpu-info.valid-cores` - The number of cores that can be
16456
+ # configured for the instance type.
16457
+ #
16458
+ # * `vcpu-info.valid-threads-per-core` - The number of threads per
16459
+ # core that can be configured for the instance type. For example,
16460
+ # "1" or "1,2".
16305
16461
  # @return [Array<Types::Filter>]
16306
16462
  #
16307
16463
  # @!attribute [rw] max_results
@@ -20474,8 +20630,10 @@ module Aws::EC2
20474
20630
  # * `instance-type` - The type of instance (for example, `m3.medium`).
20475
20631
  #
20476
20632
  # * `product-description` - The product description for the Spot price
20477
- # (`Linux/UNIX` \| `SUSE Linux` \| `Windows` \| `Linux/UNIX (Amazon
20478
- # VPC)` \| `SUSE Linux (Amazon VPC)` \| `Windows (Amazon VPC)`).
20633
+ # (`Linux/UNIX` \| `Red Hat Enterprise Linux` \| `SUSE Linux` \|
20634
+ # `Windows` \| `Linux/UNIX (Amazon VPC)` \| `Red Hat Enterprise
20635
+ # Linux (Amazon VPC)` \| `SUSE Linux (Amazon VPC)` \| `Windows
20636
+ # (Amazon VPC)`).
20479
20637
  #
20480
20638
  # * `spot-price` - The Spot price. The value must match exactly (or
20481
20639
  # use wildcards; greater than or less than comparison is not
@@ -23928,6 +24086,54 @@ module Aws::EC2
23928
24086
  include Aws::Structure
23929
24087
  end
23930
24088
 
24089
+ # @note When making an API call, you may pass DisassociateEnclaveCertificateIamRoleRequest
24090
+ # data as a hash:
24091
+ #
24092
+ # {
24093
+ # certificate_arn: "ResourceArn",
24094
+ # role_arn: "ResourceArn",
24095
+ # dry_run: false,
24096
+ # }
24097
+ #
24098
+ # @!attribute [rw] certificate_arn
24099
+ # The ARN of the ACM certificate from which to disassociate the IAM
24100
+ # role.
24101
+ # @return [String]
24102
+ #
24103
+ # @!attribute [rw] role_arn
24104
+ # The ARN of the IAM role to disassociate.
24105
+ # @return [String]
24106
+ #
24107
+ # @!attribute [rw] dry_run
24108
+ # Checks whether you have the required permissions for the action,
24109
+ # without actually making the request, and provides an error response.
24110
+ # If you have the required permissions, the error response is
24111
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
24112
+ # @return [Boolean]
24113
+ #
24114
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateEnclaveCertificateIamRoleRequest AWS API Documentation
24115
+ #
24116
+ class DisassociateEnclaveCertificateIamRoleRequest < Struct.new(
24117
+ :certificate_arn,
24118
+ :role_arn,
24119
+ :dry_run)
24120
+ SENSITIVE = []
24121
+ include Aws::Structure
24122
+ end
24123
+
24124
+ # @!attribute [rw] return
24125
+ # Returns `true` if the request succeeds; otherwise, it returns an
24126
+ # error.
24127
+ # @return [Boolean]
24128
+ #
24129
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateEnclaveCertificateIamRoleResult AWS API Documentation
24130
+ #
24131
+ class DisassociateEnclaveCertificateIamRoleResult < Struct.new(
24132
+ :return)
24133
+ SENSITIVE = []
24134
+ include Aws::Structure
24135
+ end
24136
+
23931
24137
  # @note When making an API call, you may pass DisassociateIamInstanceProfileRequest
23932
24138
  # data as a hash:
23933
24139
  #
@@ -25282,6 +25488,49 @@ module Aws::EC2
25282
25488
  include Aws::Structure
25283
25489
  end
25284
25490
 
25491
+ # Indicates whether the instance is enabled for AWS Nitro Enclaves.
25492
+ #
25493
+ # @!attribute [rw] enabled
25494
+ # If this parameter is set to `true`, the instance is enabled for AWS
25495
+ # Nitro Enclaves; otherwise, it is not enabled for AWS Nitro Enclaves.
25496
+ # @return [Boolean]
25497
+ #
25498
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnclaveOptions AWS API Documentation
25499
+ #
25500
+ class EnclaveOptions < Struct.new(
25501
+ :enabled)
25502
+ SENSITIVE = []
25503
+ include Aws::Structure
25504
+ end
25505
+
25506
+ # Indicates whether the instance is enabled for AWS Nitro Enclaves. For
25507
+ # more information, see [ AWS Nitro Enclaves][1] in the *Amazon Elastic
25508
+ # Compute Cloud User Guide*.
25509
+ #
25510
+ #
25511
+ #
25512
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html
25513
+ #
25514
+ # @note When making an API call, you may pass EnclaveOptionsRequest
25515
+ # data as a hash:
25516
+ #
25517
+ # {
25518
+ # enabled: false,
25519
+ # }
25520
+ #
25521
+ # @!attribute [rw] enabled
25522
+ # To enable the instance for AWS Nitro Enclaves, set this parameter to
25523
+ # `true`.
25524
+ # @return [Boolean]
25525
+ #
25526
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnclaveOptionsRequest AWS API Documentation
25527
+ #
25528
+ class EnclaveOptionsRequest < Struct.new(
25529
+ :enabled)
25530
+ SENSITIVE = []
25531
+ include Aws::Structure
25532
+ end
25533
+
25285
25534
  # Describes an EC2 Fleet or Spot Fleet event.
25286
25535
  #
25287
25536
  # @!attribute [rw] event_description
@@ -25924,17 +26173,23 @@ module Aws::EC2
25924
26173
  include Aws::Structure
25925
26174
  end
25926
26175
 
25927
- # Describes the IAM SAML identity provider used for federated
26176
+ # Describes the IAM SAML identity providers used for federated
25928
26177
  # authentication.
25929
26178
  #
25930
26179
  # @!attribute [rw] saml_provider_arn
25931
26180
  # The Amazon Resource Name (ARN) of the IAM SAML identity provider.
25932
26181
  # @return [String]
25933
26182
  #
26183
+ # @!attribute [rw] self_service_saml_provider_arn
26184
+ # The Amazon Resource Name (ARN) of the IAM SAML identity provider for
26185
+ # the self-service portal.
26186
+ # @return [String]
26187
+ #
25934
26188
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FederatedAuthentication AWS API Documentation
25935
26189
  #
25936
26190
  class FederatedAuthentication < Struct.new(
25937
- :saml_provider_arn)
26191
+ :saml_provider_arn,
26192
+ :self_service_saml_provider_arn)
25938
26193
  SENSITIVE = []
25939
26194
  include Aws::Structure
25940
26195
  end
@@ -25946,16 +26201,23 @@ module Aws::EC2
25946
26201
  #
25947
26202
  # {
25948
26203
  # saml_provider_arn: "String",
26204
+ # self_service_saml_provider_arn: "String",
25949
26205
  # }
25950
26206
  #
25951
26207
  # @!attribute [rw] saml_provider_arn
25952
26208
  # The Amazon Resource Name (ARN) of the IAM SAML identity provider.
25953
26209
  # @return [String]
25954
26210
  #
26211
+ # @!attribute [rw] self_service_saml_provider_arn
26212
+ # The Amazon Resource Name (ARN) of the IAM SAML identity provider for
26213
+ # the self-service portal.
26214
+ # @return [String]
26215
+ #
25955
26216
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FederatedAuthenticationRequest AWS API Documentation
25956
26217
  #
25957
26218
  class FederatedAuthenticationRequest < Struct.new(
25958
- :saml_provider_arn)
26219
+ :saml_provider_arn,
26220
+ :self_service_saml_provider_arn)
25959
26221
  SENSITIVE = []
25960
26222
  include Aws::Structure
25961
26223
  end
@@ -26769,6 +27031,47 @@ module Aws::EC2
26769
27031
  include Aws::Structure
26770
27032
  end
26771
27033
 
27034
+ # @note When making an API call, you may pass GetAssociatedEnclaveCertificateIamRolesRequest
27035
+ # data as a hash:
27036
+ #
27037
+ # {
27038
+ # certificate_arn: "ResourceArn",
27039
+ # dry_run: false,
27040
+ # }
27041
+ #
27042
+ # @!attribute [rw] certificate_arn
27043
+ # The ARN of the ACM certificate for which to view the associated IAM
27044
+ # roles, encryption keys, and Amazon S3 object information.
27045
+ # @return [String]
27046
+ #
27047
+ # @!attribute [rw] dry_run
27048
+ # Checks whether you have the required permissions for the action,
27049
+ # without actually making the request, and provides an error response.
27050
+ # If you have the required permissions, the error response is
27051
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
27052
+ # @return [Boolean]
27053
+ #
27054
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetAssociatedEnclaveCertificateIamRolesRequest AWS API Documentation
27055
+ #
27056
+ class GetAssociatedEnclaveCertificateIamRolesRequest < Struct.new(
27057
+ :certificate_arn,
27058
+ :dry_run)
27059
+ SENSITIVE = []
27060
+ include Aws::Structure
27061
+ end
27062
+
27063
+ # @!attribute [rw] associated_roles
27064
+ # Information about the associated IAM roles.
27065
+ # @return [Array<Types::AssociatedRole>]
27066
+ #
27067
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetAssociatedEnclaveCertificateIamRolesResult AWS API Documentation
27068
+ #
27069
+ class GetAssociatedEnclaveCertificateIamRolesResult < Struct.new(
27070
+ :associated_roles)
27071
+ SENSITIVE = []
27072
+ include Aws::Structure
27073
+ end
27074
+
26772
27075
  # @note When making an API call, you may pass GetAssociatedIpv6PoolCidrsRequest
26773
27076
  # data as a hash:
26774
27077
  #
@@ -30408,6 +30711,10 @@ module Aws::EC2
30408
30711
  # The metadata options for the instance.
30409
30712
  # @return [Types::InstanceMetadataOptionsResponse]
30410
30713
  #
30714
+ # @!attribute [rw] enclave_options
30715
+ # Indicates whether the instance is enabled for AWS Nitro Enclaves.
30716
+ # @return [Types::EnclaveOptions]
30717
+ #
30411
30718
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Instance AWS API Documentation
30412
30719
  #
30413
30720
  class Instance < Struct.new(
@@ -30457,7 +30764,8 @@ module Aws::EC2
30457
30764
  :capacity_reservation_specification,
30458
30765
  :hibernation_options,
30459
30766
  :licenses,
30460
- :metadata_options)
30767
+ :metadata_options,
30768
+ :enclave_options)
30461
30769
  SENSITIVE = []
30462
30770
  include Aws::Structure
30463
30771
  end
@@ -30481,6 +30789,11 @@ module Aws::EC2
30481
30789
  # Indicates whether enhanced networking with ENA is enabled.
30482
30790
  # @return [Types::AttributeBooleanValue]
30483
30791
  #
30792
+ # @!attribute [rw] enclave_options
30793
+ # To enable the instance for AWS Nitro Enclaves, set this parameter to
30794
+ # `true`; otherwise, set it to `false`.
30795
+ # @return [Types::EnclaveOptions]
30796
+ #
30484
30797
  # @!attribute [rw] ebs_optimized
30485
30798
  # Indicates whether the instance is optimized for Amazon EBS I/O.
30486
30799
  # @return [Types::AttributeBooleanValue]
@@ -30539,6 +30852,7 @@ module Aws::EC2
30539
30852
  :block_device_mappings,
30540
30853
  :disable_api_termination,
30541
30854
  :ena_support,
30855
+ :enclave_options,
30542
30856
  :ebs_optimized,
30543
30857
  :instance_id,
30544
30858
  :instance_initiated_shutdown_behavior,
@@ -31573,11 +31887,17 @@ module Aws::EC2
31573
31887
  # Array describing the disks that are available for the instance type.
31574
31888
  # @return [Array<Types::DiskInfo>]
31575
31889
  #
31890
+ # @!attribute [rw] nvme_support
31891
+ # Indicates whether non-volatile memory express (NVMe) is supported
31892
+ # for instance store.
31893
+ # @return [String]
31894
+ #
31576
31895
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceStorageInfo AWS API Documentation
31577
31896
  #
31578
31897
  class InstanceStorageInfo < Struct.new(
31579
31898
  :total_size_in_gb,
31580
- :disks)
31899
+ :disks,
31900
+ :nvme_support)
31581
31901
  SENSITIVE = []
31582
31902
  include Aws::Structure
31583
31903
  end
@@ -32803,6 +33123,49 @@ module Aws::EC2
32803
33123
  include Aws::Structure
32804
33124
  end
32805
33125
 
33126
+ # Indicates whether the instance is enabled for AWS Nitro Enclaves.
33127
+ #
33128
+ # @!attribute [rw] enabled
33129
+ # If this parameter is set to `true`, the instance is enabled for AWS
33130
+ # Nitro Enclaves; otherwise, it is not enabled for AWS Nitro Enclaves.
33131
+ # @return [Boolean]
33132
+ #
33133
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateEnclaveOptions AWS API Documentation
33134
+ #
33135
+ class LaunchTemplateEnclaveOptions < Struct.new(
33136
+ :enabled)
33137
+ SENSITIVE = []
33138
+ include Aws::Structure
33139
+ end
33140
+
33141
+ # Indicates whether the instance is enabled for AWS Nitro Enclaves. For
33142
+ # more information, see [ AWS Nitro Enclaves][1] in the *Amazon Elastic
33143
+ # Compute Cloud User Guide*.
33144
+ #
33145
+ #
33146
+ #
33147
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html
33148
+ #
33149
+ # @note When making an API call, you may pass LaunchTemplateEnclaveOptionsRequest
33150
+ # data as a hash:
33151
+ #
33152
+ # {
33153
+ # enabled: false,
33154
+ # }
33155
+ #
33156
+ # @!attribute [rw] enabled
33157
+ # To enable the instance for AWS Nitro Enclaves, set this parameter to
33158
+ # `true`.
33159
+ # @return [Boolean]
33160
+ #
33161
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateEnclaveOptionsRequest AWS API Documentation
33162
+ #
33163
+ class LaunchTemplateEnclaveOptionsRequest < Struct.new(
33164
+ :enabled)
33165
+ SENSITIVE = []
33166
+ include Aws::Structure
33167
+ end
33168
+
32806
33169
  # Indicates whether an instance is configured for hibernation.
32807
33170
  #
32808
33171
  # @!attribute [rw] configured
@@ -34497,6 +34860,7 @@ module Aws::EC2
34497
34860
  # dry_run: false,
34498
34861
  # security_group_ids: ["SecurityGroupId"],
34499
34862
  # vpc_id: "VpcId",
34863
+ # self_service_portal: "enabled", # accepts enabled, disabled
34500
34864
  # }
34501
34865
  #
34502
34866
  # @!attribute [rw] client_vpn_endpoint_id
@@ -34570,6 +34934,11 @@ module Aws::EC2
34570
34934
  # The ID of the VPC to associate with the Client VPN endpoint.
34571
34935
  # @return [String]
34572
34936
  #
34937
+ # @!attribute [rw] self_service_portal
34938
+ # Specify whether to enable the self-service portal for the Client VPN
34939
+ # endpoint.
34940
+ # @return [String]
34941
+ #
34573
34942
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyClientVpnEndpointRequest AWS API Documentation
34574
34943
  #
34575
34944
  class ModifyClientVpnEndpointRequest < Struct.new(
@@ -34582,7 +34951,8 @@ module Aws::EC2
34582
34951
  :split_tunnel,
34583
34952
  :dry_run,
34584
34953
  :security_group_ids,
34585
- :vpc_id)
34954
+ :vpc_id,
34955
+ :self_service_portal)
34586
34956
  SENSITIVE = []
34587
34957
  include Aws::Structure
34588
34958
  end
@@ -35178,7 +35548,7 @@ module Aws::EC2
35178
35548
  # source_dest_check: {
35179
35549
  # value: false,
35180
35550
  # },
35181
- # attribute: "instanceType", # accepts instanceType, kernel, ramdisk, userData, disableApiTermination, instanceInitiatedShutdownBehavior, rootDeviceName, blockDeviceMapping, productCodes, sourceDestCheck, groupSet, ebsOptimized, sriovNetSupport, enaSupport
35551
+ # attribute: "instanceType", # accepts instanceType, kernel, ramdisk, userData, disableApiTermination, instanceInitiatedShutdownBehavior, rootDeviceName, blockDeviceMapping, productCodes, sourceDestCheck, groupSet, ebsOptimized, sriovNetSupport, enaSupport, enclaveOptions
35182
35552
  # block_device_mappings: [
35183
35553
  # {
35184
35554
  # device_name: "String",
@@ -36642,6 +37012,7 @@ module Aws::EC2
36642
37012
  # options: {
36643
37013
  # dns_support: "enable", # accepts enable, disable
36644
37014
  # ipv_6_support: "enable", # accepts enable, disable
37015
+ # appliance_mode_support: "enable", # accepts enable, disable
36645
37016
  # },
36646
37017
  # dry_run: false,
36647
37018
  # }
@@ -36694,6 +37065,7 @@ module Aws::EC2
36694
37065
  # {
36695
37066
  # dns_support: "enable", # accepts enable, disable
36696
37067
  # ipv_6_support: "enable", # accepts enable, disable
37068
+ # appliance_mode_support: "enable", # accepts enable, disable
36697
37069
  # }
36698
37070
  #
36699
37071
  # @!attribute [rw] dns_support
@@ -36704,11 +37076,19 @@ module Aws::EC2
36704
37076
  # Enable or disable IPv6 support. The default is `enable`.
36705
37077
  # @return [String]
36706
37078
  #
37079
+ # @!attribute [rw] appliance_mode_support
37080
+ # Enable or disable support for appliance mode. If enabled, a traffic
37081
+ # flow between a source and destination uses the same Availability
37082
+ # Zone for the VPC attachment for the lifetime of that flow. The
37083
+ # default is `disable`.
37084
+ # @return [String]
37085
+ #
36707
37086
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayVpcAttachmentRequestOptions AWS API Documentation
36708
37087
  #
36709
37088
  class ModifyTransitGatewayVpcAttachmentRequestOptions < Struct.new(
36710
37089
  :dns_support,
36711
- :ipv_6_support)
37090
+ :ipv_6_support,
37091
+ :appliance_mode_support)
36712
37092
  SENSITIVE = []
36713
37093
  include Aws::Structure
36714
37094
  end
@@ -41514,6 +41894,9 @@ module Aws::EC2
41514
41894
  # http_put_response_hop_limit: 1,
41515
41895
  # http_endpoint: "disabled", # accepts disabled, enabled
41516
41896
  # },
41897
+ # enclave_options: {
41898
+ # enabled: false,
41899
+ # },
41517
41900
  # }
41518
41901
  #
41519
41902
  # @!attribute [rw] kernel_id
@@ -41720,6 +42103,22 @@ module Aws::EC2
41720
42103
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html
41721
42104
  # @return [Types::LaunchTemplateInstanceMetadataOptionsRequest]
41722
42105
  #
42106
+ # @!attribute [rw] enclave_options
42107
+ # Indicates whether the instance is enabled for AWS Nitro Enclaves.
42108
+ # For more information, see [ AWS Nitro Enclaves][1] in the *Amazon
42109
+ # Elastic Compute Cloud User Guide*.
42110
+ #
42111
+ # You can't enable AWS Nitro Enclaves and hibernation on the same
42112
+ # instance. For more information about AWS Nitro Enclaves
42113
+ # requirements, see [ AWS Nitro Enclaves][2] in the *Amazon Elastic
42114
+ # Compute Cloud User Guide*.
42115
+ #
42116
+ #
42117
+ #
42118
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html
42119
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html#nitro-enclave-reqs
42120
+ # @return [Types::LaunchTemplateEnclaveOptionsRequest]
42121
+ #
41723
42122
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RequestLaunchTemplateData AWS API Documentation
41724
42123
  #
41725
42124
  class RequestLaunchTemplateData < Struct.new(
@@ -41748,7 +42147,8 @@ module Aws::EC2
41748
42147
  :capacity_reservation_specification,
41749
42148
  :license_specifications,
41750
42149
  :hibernation_options,
41751
- :metadata_options)
42150
+ :metadata_options,
42151
+ :enclave_options)
41752
42152
  SENSITIVE = []
41753
42153
  include Aws::Structure
41754
42154
  end
@@ -42086,6 +42486,10 @@ module Aws::EC2
42086
42486
  #
42087
42487
  # You can't specify an Availability Zone group or a launch group if
42088
42488
  # you specify a duration.
42489
+ #
42490
+ # New accounts or accounts with no previous billing history with AWS
42491
+ # are not eligible for Spot Instances with a defined duration (also
42492
+ # known as Spot blocks).
42089
42493
  # @return [Integer]
42090
42494
  #
42091
42495
  # @!attribute [rw] client_token
@@ -42147,11 +42551,17 @@ module Aws::EC2
42147
42551
  # @return [Time]
42148
42552
  #
42149
42553
  # @!attribute [rw] valid_until
42150
- # The end date of the request. If this is a one-time request, the
42151
- # request remains active until all instances launch, the request is
42152
- # canceled, or this date is reached. If the request is persistent, it
42153
- # remains active until it is canceled or this date is reached. The
42154
- # default end date is 7 days from the current date.
42554
+ # The end date of the request, in UTC format
42555
+ # (*YYYY*-*MM*-*DD*T*HH*\:*MM*\:*SS*Z).
42556
+ #
42557
+ # * For a persistent request, the request remains active until the
42558
+ # `ValidUntil` date and time is reached. Otherwise, the request
42559
+ # remains active until you cancel it.
42560
+ #
42561
+ # * For a one-time request, the request remains active until all
42562
+ # instances launch, the request is canceled, or the `ValidUntil`
42563
+ # date and time is reached. By default, the request is valid for 7
42564
+ # days from the date the request was created.
42155
42565
  # @return [Time]
42156
42566
  #
42157
42567
  # @!attribute [rw] tag_specifications
@@ -42388,7 +42798,9 @@ module Aws::EC2
42388
42798
  include Aws::Structure
42389
42799
  end
42390
42800
 
42391
- # Describes a reservation.
42801
+ # Describes a launch request for one or more instances, and includes
42802
+ # owner, requester, and security group information that applies to all
42803
+ # instances in the launch request.
42392
42804
  #
42393
42805
  # @!attribute [rw] groups
42394
42806
  # \[EC2-Classic only\] The security groups.
@@ -43028,7 +43440,7 @@ module Aws::EC2
43028
43440
  # data as a hash:
43029
43441
  #
43030
43442
  # {
43031
- # attribute: "instanceType", # required, accepts instanceType, kernel, ramdisk, userData, disableApiTermination, instanceInitiatedShutdownBehavior, rootDeviceName, blockDeviceMapping, productCodes, sourceDestCheck, groupSet, ebsOptimized, sriovNetSupport, enaSupport
43443
+ # attribute: "instanceType", # required, accepts instanceType, kernel, ramdisk, userData, disableApiTermination, instanceInitiatedShutdownBehavior, rootDeviceName, blockDeviceMapping, productCodes, sourceDestCheck, groupSet, ebsOptimized, sriovNetSupport, enaSupport, enclaveOptions
43032
43444
  # dry_run: false,
43033
43445
  # instance_id: "InstanceId", # required
43034
43446
  # }
@@ -43281,6 +43693,10 @@ module Aws::EC2
43281
43693
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html
43282
43694
  # @return [Types::LaunchTemplateInstanceMetadataOptions]
43283
43695
  #
43696
+ # @!attribute [rw] enclave_options
43697
+ # Indicates whether the instance is enabled for AWS Nitro Enclaves.
43698
+ # @return [Types::LaunchTemplateEnclaveOptions]
43699
+ #
43284
43700
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResponseLaunchTemplateData AWS API Documentation
43285
43701
  #
43286
43702
  class ResponseLaunchTemplateData < Struct.new(
@@ -43309,7 +43725,8 @@ module Aws::EC2
43309
43725
  :capacity_reservation_specification,
43310
43726
  :license_specifications,
43311
43727
  :hibernation_options,
43312
- :metadata_options)
43728
+ :metadata_options,
43729
+ :enclave_options)
43313
43730
  SENSITIVE = []
43314
43731
  include Aws::Structure
43315
43732
  end
@@ -43581,6 +43998,25 @@ module Aws::EC2
43581
43998
  include Aws::Structure
43582
43999
  end
43583
44000
 
44001
+ # @!attribute [rw] return
44002
+ # Returns `true` if the request succeeds; otherwise, returns an error.
44003
+ # @return [Boolean]
44004
+ #
44005
+ # @!attribute [rw] unknown_ip_permissions
44006
+ # The outbound rules that were unknown to the service. In some cases,
44007
+ # `unknownIpPermissionSet` might be in a different format from the
44008
+ # request parameter.
44009
+ # @return [Array<Types::IpPermission>]
44010
+ #
44011
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RevokeSecurityGroupEgressResult AWS API Documentation
44012
+ #
44013
+ class RevokeSecurityGroupEgressResult < Struct.new(
44014
+ :return,
44015
+ :unknown_ip_permissions)
44016
+ SENSITIVE = []
44017
+ include Aws::Structure
44018
+ end
44019
+
43584
44020
  # @note When making an API call, you may pass RevokeSecurityGroupIngressRequest
43585
44021
  # data as a hash:
43586
44022
  #
@@ -43718,6 +44154,25 @@ module Aws::EC2
43718
44154
  include Aws::Structure
43719
44155
  end
43720
44156
 
44157
+ # @!attribute [rw] return
44158
+ # Returns `true` if the request succeeds; otherwise, returns an error.
44159
+ # @return [Boolean]
44160
+ #
44161
+ # @!attribute [rw] unknown_ip_permissions
44162
+ # The inbound rules that were unknown to the service. In some cases,
44163
+ # `unknownIpPermissionSet` might be in a different format from the
44164
+ # request parameter.
44165
+ # @return [Array<Types::IpPermission>]
44166
+ #
44167
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RevokeSecurityGroupIngressResult AWS API Documentation
44168
+ #
44169
+ class RevokeSecurityGroupIngressResult < Struct.new(
44170
+ :return,
44171
+ :unknown_ip_permissions)
44172
+ SENSITIVE = []
44173
+ include Aws::Structure
44174
+ end
44175
+
43721
44176
  # Describes a route in a route table.
43722
44177
  #
43723
44178
  # @!attribute [rw] destination_cidr_block
@@ -44093,6 +44548,9 @@ module Aws::EC2
44093
44548
  # http_put_response_hop_limit: 1,
44094
44549
  # http_endpoint: "disabled", # accepts disabled, enabled
44095
44550
  # },
44551
+ # enclave_options: {
44552
+ # enabled: false,
44553
+ # },
44096
44554
  # }
44097
44555
  #
44098
44556
  # @!attribute [rw] block_device_mappings
@@ -44437,6 +44895,9 @@ module Aws::EC2
44437
44895
  # information, see [Hibernate your instance][1] in the *Amazon Elastic
44438
44896
  # Compute Cloud User Guide*.
44439
44897
  #
44898
+ # You can't enable hibernation and AWS Nitro Enclaves on the same
44899
+ # instance.
44900
+ #
44440
44901
  #
44441
44902
  #
44442
44903
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html
@@ -44455,6 +44916,22 @@ module Aws::EC2
44455
44916
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html
44456
44917
  # @return [Types::InstanceMetadataOptionsRequest]
44457
44918
  #
44919
+ # @!attribute [rw] enclave_options
44920
+ # Indicates whether the instance is enabled for AWS Nitro Enclaves.
44921
+ # For more information, see [ AWS Nitro Enclaves][1] in the *Amazon
44922
+ # Elastic Compute Cloud User Guide*.
44923
+ #
44924
+ # You can't enable AWS Nitro Enclaves and hibernation on the same
44925
+ # instance. For more information about AWS Nitro Enclaves
44926
+ # requirements, see [ AWS Nitro Enclaves][2] in the *Amazon Elastic
44927
+ # Compute Cloud User Guide*.
44928
+ #
44929
+ #
44930
+ #
44931
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html
44932
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html#nitro-enclave-reqs
44933
+ # @return [Types::EnclaveOptionsRequest]
44934
+ #
44458
44935
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RunInstancesRequest AWS API Documentation
44459
44936
  #
44460
44937
  class RunInstancesRequest < Struct.new(
@@ -44493,7 +44970,8 @@ module Aws::EC2
44493
44970
  :capacity_reservation_specification,
44494
44971
  :hibernation_options,
44495
44972
  :license_specifications,
44496
- :metadata_options)
44973
+ :metadata_options,
44974
+ :enclave_options)
44497
44975
  SENSITIVE = []
44498
44976
  include Aws::Structure
44499
44977
  end
@@ -46397,7 +46875,8 @@ module Aws::EC2
46397
46875
  # Describes the data feed for a Spot Instance.
46398
46876
  #
46399
46877
  # @!attribute [rw] bucket
46400
- # The Amazon S3 bucket where the Spot Instance data feed is located.
46878
+ # The name of the Amazon S3 bucket where the Spot Instance data feed
46879
+ # is located.
46401
46880
  # @return [String]
46402
46881
  #
46403
46882
  # @!attribute [rw] fault
@@ -46409,7 +46888,7 @@ module Aws::EC2
46409
46888
  # @return [String]
46410
46889
  #
46411
46890
  # @!attribute [rw] prefix
46412
- # The prefix that is prepended to data feed files.
46891
+ # The prefix for the data feed files.
46413
46892
  # @return [String]
46414
46893
  #
46415
46894
  # @!attribute [rw] state
@@ -46429,7 +46908,8 @@ module Aws::EC2
46429
46908
  end
46430
46909
 
46431
46910
  # Describes the launch specification for one or more Spot Instances. If
46432
- # you include On-Demand capacity in your fleet request, you can't use
46911
+ # you include On-Demand capacity in your fleet request or want to
46912
+ # specify an EFA network device, you can't use
46433
46913
  # `SpotFleetLaunchSpecification`; you must use
46434
46914
  # [LaunchTemplateConfig][1].
46435
46915
  #
@@ -46584,6 +47064,16 @@ module Aws::EC2
46584
47064
  # One or more network interfaces. If you specify a network interface,
46585
47065
  # you must specify subnet IDs and security group IDs using the network
46586
47066
  # interface.
47067
+ #
47068
+ # <note markdown="1"> `SpotFleetLaunchSpecification` currently does not support Elastic
47069
+ # Fabric Adapter (EFA). To specify an EFA, you must use
47070
+ # [LaunchTemplateConfig][1].
47071
+ #
47072
+ # </note>
47073
+ #
47074
+ #
47075
+ #
47076
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_LaunchTemplateConfig.html
46587
47077
  # @return [Array<Types::InstanceNetworkInterfaceSpecification>]
46588
47078
  #
46589
47079
  # @!attribute [rw] placement
@@ -47241,12 +47731,17 @@ module Aws::EC2
47241
47731
  # @return [Time]
47242
47732
  #
47243
47733
  # @!attribute [rw] valid_until
47244
- # The end date of the request, in UTC format (for example,
47245
- # *YYYY*-*MM*-*DD*T*HH*\:*MM*\:*SS*Z). If this is a one-time request,
47246
- # it remains active until all instances launch, the request is
47247
- # canceled, or this date is reached. If the request is persistent, it
47248
- # remains active until it is canceled or this date is reached. The
47249
- # default end date is 7 days from the current date.
47734
+ # The end date of the request, in UTC format
47735
+ # (*YYYY*-*MM*-*DD*T*HH*\:*MM*\:*SS*Z).
47736
+ #
47737
+ # * For a persistent request, the request remains active until the
47738
+ # `validUntil` date and time is reached. Otherwise, the request
47739
+ # remains active until you cancel it.
47740
+ #
47741
+ # * For a one-time request, the request remains active until all
47742
+ # instances launch, the request is canceled, or the `validUntil`
47743
+ # date and time is reached. By default, the request is valid for 7
47744
+ # days from the date the request was created.
47250
47745
  # @return [Time]
47251
47746
  #
47252
47747
  # @!attribute [rw] instance_interruption_behavior
@@ -47361,14 +47856,33 @@ module Aws::EC2
47361
47856
  # The required duration for the Spot Instances (also known as Spot
47362
47857
  # blocks), in minutes. This value must be a multiple of 60 (60, 120,
47363
47858
  # 180, 240, 300, or 360).
47859
+ #
47860
+ # The duration period starts as soon as your Spot Instance receives
47861
+ # its instance ID. At the end of the duration period, Amazon EC2 marks
47862
+ # the Spot Instance for termination and provides a Spot Instance
47863
+ # termination notice, which gives the instance a two-minute warning
47864
+ # before it terminates.
47865
+ #
47866
+ # You can't specify an Availability Zone group or a launch group if
47867
+ # you specify a duration.
47868
+ #
47869
+ # New accounts or accounts with no previous billing history with AWS
47870
+ # are not eligible for Spot Instances with a defined duration (also
47871
+ # known as Spot blocks).
47364
47872
  # @return [Integer]
47365
47873
  #
47366
47874
  # @!attribute [rw] valid_until
47367
- # The end date of the request. For a one-time request, the request
47368
- # remains active until all instances launch, the request is canceled,
47369
- # or this date is reached. If the request is persistent, it remains
47370
- # active until it is canceled or this date and time is reached. The
47371
- # default end date is 7 days from the current date.
47875
+ # The end date of the request, in UTC format
47876
+ # (*YYYY*-*MM*-*DD*T*HH*\:*MM*\:*SS*Z). Supported only for persistent
47877
+ # requests.
47878
+ #
47879
+ # * For a persistent request, the request remains active until the
47880
+ # `ValidUntil` date and time is reached. Otherwise, the request
47881
+ # remains active until you cancel it.
47882
+ #
47883
+ # * For a one-time request, `ValidUntil` is not supported. The request
47884
+ # remains active until all instances launch or you cancel the
47885
+ # request.
47372
47886
  # @return [Time]
47373
47887
  #
47374
47888
  # @!attribute [rw] instance_interruption_behavior
@@ -49886,11 +50400,16 @@ module Aws::EC2
49886
50400
  # Indicates whether IPv6 support is disabled.
49887
50401
  # @return [String]
49888
50402
  #
50403
+ # @!attribute [rw] appliance_mode_support
50404
+ # Indicates whether appliance mode support is enabled.
50405
+ # @return [String]
50406
+ #
49889
50407
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayVpcAttachmentOptions AWS API Documentation
49890
50408
  #
49891
50409
  class TransitGatewayVpcAttachmentOptions < Struct.new(
49892
50410
  :dns_support,
49893
- :ipv_6_support)
50411
+ :ipv_6_support,
50412
+ :appliance_mode_support)
49894
50413
  SENSITIVE = []
49895
50414
  include Aws::Structure
49896
50415
  end