aws-sdk-ec2 1.479.0 → 1.481.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.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +10 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-ec2/classic_address.rb +11 -11
  5. data/lib/aws-sdk-ec2/client.rb +3074 -2792
  6. data/lib/aws-sdk-ec2/client_api.rb +562 -438
  7. data/lib/aws-sdk-ec2/dhcp_options.rb +6 -6
  8. data/lib/aws-sdk-ec2/endpoints.rb +55 -0
  9. data/lib/aws-sdk-ec2/image.rb +82 -82
  10. data/lib/aws-sdk-ec2/instance.rb +291 -289
  11. data/lib/aws-sdk-ec2/key_pair.rb +12 -12
  12. data/lib/aws-sdk-ec2/key_pair_info.rb +27 -27
  13. data/lib/aws-sdk-ec2/network_acl.rb +60 -60
  14. data/lib/aws-sdk-ec2/network_interface.rb +65 -65
  15. data/lib/aws-sdk-ec2/placement_group.rb +11 -14
  16. data/lib/aws-sdk-ec2/plugins/endpoints.rb +10 -0
  17. data/lib/aws-sdk-ec2/resource.rb +594 -602
  18. data/lib/aws-sdk-ec2/route.rb +30 -30
  19. data/lib/aws-sdk-ec2/route_table.rb +37 -37
  20. data/lib/aws-sdk-ec2/security_group.rb +137 -137
  21. data/lib/aws-sdk-ec2/snapshot.rb +77 -77
  22. data/lib/aws-sdk-ec2/subnet.rb +279 -287
  23. data/lib/aws-sdk-ec2/types.rb +3640 -3368
  24. data/lib/aws-sdk-ec2/volume.rb +93 -93
  25. data/lib/aws-sdk-ec2/vpc.rb +143 -146
  26. data/lib/aws-sdk-ec2/vpc_address.rb +17 -17
  27. data/lib/aws-sdk-ec2.rb +1 -1
  28. data/sig/classic_address.rbs +5 -5
  29. data/sig/client.rbs +948 -881
  30. data/sig/dhcp_options.rbs +3 -3
  31. data/sig/image.rbs +41 -41
  32. data/sig/instance.rbs +108 -108
  33. data/sig/key_pair.rbs +6 -6
  34. data/sig/key_pair_info.rbs +3 -3
  35. data/sig/network_acl.rbs +16 -16
  36. data/sig/network_interface.rbs +22 -22
  37. data/sig/placement_group.rbs +3 -3
  38. data/sig/resource.rbs +201 -201
  39. data/sig/route.rbs +9 -9
  40. data/sig/route_table.rbs +10 -10
  41. data/sig/security_group.rbs +110 -110
  42. data/sig/snapshot.rbs +34 -34
  43. data/sig/subnet.rbs +116 -116
  44. data/sig/types.rbs +525 -443
  45. data/sig/volume.rbs +33 -33
  46. data/sig/vpc.rbs +46 -46
  47. data/sig/vpc_address.rbs +8 -8
  48. data/sig/waiters.rbs +113 -113
  49. metadata +2 -2
@@ -84,8 +84,6 @@ module Aws::EC2
84
84
  # instance = ec2.create_instances({
85
85
  # block_device_mappings: [
86
86
  # {
87
- # device_name: "String",
88
- # virtual_name: "String",
89
87
  # ebs: {
90
88
  # delete_on_termination: false,
91
89
  # iops: 1,
@@ -98,6 +96,8 @@ module Aws::EC2
98
96
  # encrypted: false,
99
97
  # },
100
98
  # no_device: "String",
99
+ # device_name: "String",
100
+ # virtual_name: "String",
101
101
  # },
102
102
  # ],
103
103
  # image_id: "ImageId",
@@ -117,7 +117,6 @@ module Aws::EC2
117
117
  # enabled: false, # required
118
118
  # },
119
119
  # placement: {
120
- # availability_zone: "String",
121
120
  # affinity: "String",
122
121
  # group_name: "PlacementGroupName",
123
122
  # partition_number: 1,
@@ -126,76 +125,13 @@ module Aws::EC2
126
125
  # spread_domain: "String",
127
126
  # host_resource_group_arn: "String",
128
127
  # group_id: "PlacementGroupId",
128
+ # availability_zone: "String",
129
129
  # },
130
130
  # ramdisk_id: "RamdiskId",
131
131
  # security_group_ids: ["SecurityGroupId"],
132
132
  # security_groups: ["SecurityGroupName"],
133
133
  # subnet_id: "SubnetId",
134
134
  # user_data: "RunInstancesUserData",
135
- # additional_info: "String",
136
- # client_token: "String",
137
- # disable_api_termination: false,
138
- # dry_run: false,
139
- # ebs_optimized: false,
140
- # iam_instance_profile: {
141
- # arn: "String",
142
- # name: "String",
143
- # },
144
- # instance_initiated_shutdown_behavior: "stop", # accepts stop, terminate
145
- # network_interfaces: [
146
- # {
147
- # associate_public_ip_address: false,
148
- # delete_on_termination: false,
149
- # description: "String",
150
- # device_index: 1,
151
- # groups: ["SecurityGroupId"],
152
- # ipv_6_address_count: 1,
153
- # ipv_6_addresses: [
154
- # {
155
- # ipv_6_address: "String",
156
- # is_primary_ipv_6: false,
157
- # },
158
- # ],
159
- # network_interface_id: "NetworkInterfaceId",
160
- # private_ip_address: "String",
161
- # private_ip_addresses: [
162
- # {
163
- # primary: false,
164
- # private_ip_address: "String",
165
- # },
166
- # ],
167
- # secondary_private_ip_address_count: 1,
168
- # subnet_id: "String",
169
- # associate_carrier_ip_address: false,
170
- # interface_type: "String",
171
- # network_card_index: 1,
172
- # ipv_4_prefixes: [
173
- # {
174
- # ipv_4_prefix: "String",
175
- # },
176
- # ],
177
- # ipv_4_prefix_count: 1,
178
- # ipv_6_prefixes: [
179
- # {
180
- # ipv_6_prefix: "String",
181
- # },
182
- # ],
183
- # ipv_6_prefix_count: 1,
184
- # primary_ipv_6: false,
185
- # ena_srd_specification: {
186
- # ena_srd_enabled: false,
187
- # ena_srd_udp_specification: {
188
- # ena_srd_udp_enabled: false,
189
- # },
190
- # },
191
- # connection_tracking_specification: {
192
- # tcp_established_timeout: 1,
193
- # udp_stream_timeout: 1,
194
- # udp_timeout: 1,
195
- # },
196
- # },
197
- # ],
198
- # private_ip_address: "String",
199
135
  # elastic_gpu_specification: [
200
136
  # {
201
137
  # type: "String", # required
@@ -276,6 +212,70 @@ module Aws::EC2
276
212
  # },
277
213
  # disable_api_stop: false,
278
214
  # enable_primary_ipv_6: false,
215
+ # dry_run: false,
216
+ # disable_api_termination: false,
217
+ # instance_initiated_shutdown_behavior: "stop", # accepts stop, terminate
218
+ # private_ip_address: "String",
219
+ # client_token: "String",
220
+ # additional_info: "String",
221
+ # network_interfaces: [
222
+ # {
223
+ # associate_public_ip_address: false,
224
+ # delete_on_termination: false,
225
+ # description: "String",
226
+ # device_index: 1,
227
+ # groups: ["SecurityGroupId"],
228
+ # ipv_6_address_count: 1,
229
+ # ipv_6_addresses: [
230
+ # {
231
+ # ipv_6_address: "String",
232
+ # is_primary_ipv_6: false,
233
+ # },
234
+ # ],
235
+ # network_interface_id: "NetworkInterfaceId",
236
+ # private_ip_address: "String",
237
+ # private_ip_addresses: [
238
+ # {
239
+ # primary: false,
240
+ # private_ip_address: "String",
241
+ # },
242
+ # ],
243
+ # secondary_private_ip_address_count: 1,
244
+ # subnet_id: "String",
245
+ # associate_carrier_ip_address: false,
246
+ # interface_type: "String",
247
+ # network_card_index: 1,
248
+ # ipv_4_prefixes: [
249
+ # {
250
+ # ipv_4_prefix: "String",
251
+ # },
252
+ # ],
253
+ # ipv_4_prefix_count: 1,
254
+ # ipv_6_prefixes: [
255
+ # {
256
+ # ipv_6_prefix: "String",
257
+ # },
258
+ # ],
259
+ # ipv_6_prefix_count: 1,
260
+ # primary_ipv_6: false,
261
+ # ena_srd_specification: {
262
+ # ena_srd_enabled: false,
263
+ # ena_srd_udp_specification: {
264
+ # ena_srd_udp_enabled: false,
265
+ # },
266
+ # },
267
+ # connection_tracking_specification: {
268
+ # tcp_established_timeout: 1,
269
+ # udp_stream_timeout: 1,
270
+ # udp_timeout: 1,
271
+ # },
272
+ # },
273
+ # ],
274
+ # iam_instance_profile: {
275
+ # arn: "String",
276
+ # name: "String",
277
+ # },
278
+ # ebs_optimized: false,
279
279
  # })
280
280
  # @param [Hash] options ({})
281
281
  # @option options [Array<Types::BlockDeviceMapping>] :block_device_mappings
@@ -411,70 +411,6 @@ module Aws::EC2
411
411
  #
412
412
  #
413
413
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-add-user-data.html
414
- # @option options [String] :additional_info
415
- # Reserved.
416
- # @option options [String] :client_token
417
- # Unique, case-sensitive identifier you provide to ensure the
418
- # idempotency of the request. If you do not specify a client token, a
419
- # randomly generated token is used for the request to ensure
420
- # idempotency.
421
- #
422
- # For more information, see [Ensuring Idempotency][1].
423
- #
424
- # Constraints: Maximum 64 ASCII characters
425
- #
426
- #
427
- #
428
- # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
429
- # @option options [Boolean] :disable_api_termination
430
- # If you set this parameter to `true`, you can't terminate the instance
431
- # using the Amazon EC2 console, CLI, or API; otherwise, you can. To
432
- # change this attribute after launch, use [ModifyInstanceAttribute][1].
433
- # Alternatively, if you set `InstanceInitiatedShutdownBehavior` to
434
- # `terminate`, you can terminate the instance by running the shutdown
435
- # command from the instance.
436
- #
437
- # Default: `false`
438
- #
439
- #
440
- #
441
- # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html
442
- # @option options [Boolean] :dry_run
443
- # Checks whether you have the required permissions for the operation,
444
- # without actually making the request, and provides an error response.
445
- # If you have the required permissions, the error response is
446
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
447
- # @option options [Boolean] :ebs_optimized
448
- # Indicates whether the instance is optimized for Amazon EBS I/O. This
449
- # optimization provides dedicated throughput to Amazon EBS and an
450
- # optimized configuration stack to provide optimal Amazon EBS I/O
451
- # performance. This optimization isn't available with all instance
452
- # types. Additional usage charges apply when using an EBS-optimized
453
- # instance.
454
- #
455
- # Default: `false`
456
- # @option options [Types::IamInstanceProfileSpecification] :iam_instance_profile
457
- # The name or Amazon Resource Name (ARN) of an IAM instance profile.
458
- # @option options [String] :instance_initiated_shutdown_behavior
459
- # Indicates whether an instance stops or terminates when you initiate
460
- # shutdown from the instance (using the operating system command for
461
- # system shutdown).
462
- #
463
- # Default: `stop`
464
- # @option options [Array<Types::InstanceNetworkInterfaceSpecification>] :network_interfaces
465
- # The network interfaces to associate with the instance.
466
- # @option options [String] :private_ip_address
467
- # The primary IPv4 address. You must specify a value from the IPv4
468
- # address range of the subnet.
469
- #
470
- # Only one private IP address can be designated as primary. You can't
471
- # specify this option if you've specified the option to designate a
472
- # private IP address as the primary IP address in a network interface
473
- # specification. You cannot specify this option if you're launching
474
- # more than one instance in the request.
475
- #
476
- # You cannot specify this option and the network interfaces option in
477
- # the same request.
478
414
  # @option options [Array<Types::ElasticGpuSpecification>] :elastic_gpu_specification
479
415
  # An elastic GPU to associate with the instance.
480
416
  #
@@ -484,14 +420,9 @@ module Aws::EC2
484
420
  # @option options [Array<Types::ElasticInferenceAccelerator>] :elastic_inference_accelerators
485
421
  # An elastic inference accelerator to associate with the instance.
486
422
  #
487
- # <note markdown="1"> Amazon Elastic Inference (EI) is no longer available to new customers.
488
- # For more information, see [Amazon Elastic Inference FAQs][1].
423
+ # <note markdown="1"> Amazon Elastic Inference is no longer available.
489
424
  #
490
425
  # </note>
491
- #
492
- #
493
- #
494
- # [1]: http://aws.amazon.com/machine-learning/elastic-inference/faqs/
495
426
  # @option options [Array<Types::TagSpecification>] :tag_specifications
496
427
  # The tags to apply to the resources that are created during instance
497
428
  # launch.
@@ -613,6 +544,70 @@ module Aws::EC2
613
544
  # attached to your instance and you enable a primary IPv6 address, the
614
545
  # first IPv6 GUA address associated with the ENI becomes the primary
615
546
  # IPv6 address.
547
+ # @option options [Boolean] :dry_run
548
+ # Checks whether you have the required permissions for the operation,
549
+ # without actually making the request, and provides an error response.
550
+ # If you have the required permissions, the error response is
551
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
552
+ # @option options [Boolean] :disable_api_termination
553
+ # If you set this parameter to `true`, you can't terminate the instance
554
+ # using the Amazon EC2 console, CLI, or API; otherwise, you can. To
555
+ # change this attribute after launch, use [ModifyInstanceAttribute][1].
556
+ # Alternatively, if you set `InstanceInitiatedShutdownBehavior` to
557
+ # `terminate`, you can terminate the instance by running the shutdown
558
+ # command from the instance.
559
+ #
560
+ # Default: `false`
561
+ #
562
+ #
563
+ #
564
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html
565
+ # @option options [String] :instance_initiated_shutdown_behavior
566
+ # Indicates whether an instance stops or terminates when you initiate
567
+ # shutdown from the instance (using the operating system command for
568
+ # system shutdown).
569
+ #
570
+ # Default: `stop`
571
+ # @option options [String] :private_ip_address
572
+ # The primary IPv4 address. You must specify a value from the IPv4
573
+ # address range of the subnet.
574
+ #
575
+ # Only one private IP address can be designated as primary. You can't
576
+ # specify this option if you've specified the option to designate a
577
+ # private IP address as the primary IP address in a network interface
578
+ # specification. You cannot specify this option if you're launching
579
+ # more than one instance in the request.
580
+ #
581
+ # You cannot specify this option and the network interfaces option in
582
+ # the same request.
583
+ # @option options [String] :client_token
584
+ # Unique, case-sensitive identifier you provide to ensure the
585
+ # idempotency of the request. If you do not specify a client token, a
586
+ # randomly generated token is used for the request to ensure
587
+ # idempotency.
588
+ #
589
+ # For more information, see [Ensuring Idempotency][1].
590
+ #
591
+ # Constraints: Maximum 64 ASCII characters
592
+ #
593
+ #
594
+ #
595
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
596
+ # @option options [String] :additional_info
597
+ # Reserved.
598
+ # @option options [Array<Types::InstanceNetworkInterfaceSpecification>] :network_interfaces
599
+ # The network interfaces to associate with the instance.
600
+ # @option options [Types::IamInstanceProfileSpecification] :iam_instance_profile
601
+ # The name or Amazon Resource Name (ARN) of an IAM instance profile.
602
+ # @option options [Boolean] :ebs_optimized
603
+ # Indicates whether the instance is optimized for Amazon EBS I/O. This
604
+ # optimization provides dedicated throughput to Amazon EBS and an
605
+ # optimized configuration stack to provide optimal Amazon EBS I/O
606
+ # performance. This optimization isn't available with all instance
607
+ # types. Additional usage charges apply when using an EBS-optimized
608
+ # instance.
609
+ #
610
+ # Default: `false`
616
611
  # @return [Instance::Collection]
617
612
  def create_instances(options = {})
618
613
  batch = []
@@ -669,7 +664,6 @@ module Aws::EC2
669
664
  #
670
665
  # keypair = ec2.create_key_pair({
671
666
  # key_name: "String", # required
672
- # dry_run: false,
673
667
  # key_type: "rsa", # accepts rsa, ed25519
674
668
  # tag_specifications: [
675
669
  # {
@@ -683,17 +677,13 @@ module Aws::EC2
683
677
  # },
684
678
  # ],
685
679
  # key_format: "pem", # accepts pem, ppk
680
+ # dry_run: false,
686
681
  # })
687
682
  # @param [Hash] options ({})
688
683
  # @option options [required, String] :key_name
689
684
  # A unique name for the key pair.
690
685
  #
691
686
  # Constraints: Up to 255 ASCII characters
692
- # @option options [Boolean] :dry_run
693
- # Checks whether you have the required permissions for the action,
694
- # without actually making the request, and provides an error response.
695
- # If you have the required permissions, the error response is
696
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
697
687
  # @option options [String] :key_type
698
688
  # The type of key pair. Note that ED25519 keys are not supported for
699
689
  # Windows instances.
@@ -705,6 +695,11 @@ module Aws::EC2
705
695
  # The format of the key pair.
706
696
  #
707
697
  # Default: `pem`
698
+ # @option options [Boolean] :dry_run
699
+ # Checks whether you have the required permissions for the action,
700
+ # without actually making the request, and provides an error response.
701
+ # If you have the required permissions, the error response is
702
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
708
703
  # @return [KeyPair]
709
704
  def create_key_pair(options = {})
710
705
  resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -813,8 +808,6 @@ module Aws::EC2
813
808
  # @example Request syntax with placeholder values
814
809
  #
815
810
  # networkacl = ec2.create_network_acl({
816
- # dry_run: false,
817
- # vpc_id: "VpcId", # required
818
811
  # tag_specifications: [
819
812
  # {
820
813
  # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, 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, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, ipam-external-resource-verification-token
@@ -827,15 +820,10 @@ module Aws::EC2
827
820
  # },
828
821
  # ],
829
822
  # client_token: "String",
823
+ # dry_run: false,
824
+ # vpc_id: "VpcId", # required
830
825
  # })
831
826
  # @param [Hash] options ({})
832
- # @option options [Boolean] :dry_run
833
- # Checks whether you have the required permissions for the action,
834
- # without actually making the request, and provides an error response.
835
- # If you have the required permissions, the error response is
836
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
837
- # @option options [required, String] :vpc_id
838
- # The ID of the VPC.
839
827
  # @option options [Array<Types::TagSpecification>] :tag_specifications
840
828
  # The tags to assign to the network ACL.
841
829
  # @option options [String] :client_token
@@ -846,6 +834,13 @@ module Aws::EC2
846
834
  #
847
835
  #
848
836
  # [1]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html
837
+ # @option options [Boolean] :dry_run
838
+ # Checks whether you have the required permissions for the action,
839
+ # without actually making the request, and provides an error response.
840
+ # If you have the required permissions, the error response is
841
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
842
+ # @option options [required, String] :vpc_id
843
+ # The ID of the VPC.
849
844
  # @return [NetworkAcl]
850
845
  def create_network_acl(options = {})
851
846
  resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -861,24 +856,6 @@ module Aws::EC2
861
856
  # @example Request syntax with placeholder values
862
857
  #
863
858
  # networkinterface = ec2.create_network_interface({
864
- # description: "String",
865
- # dry_run: false,
866
- # groups: ["SecurityGroupId"],
867
- # ipv_6_address_count: 1,
868
- # ipv_6_addresses: [
869
- # {
870
- # ipv_6_address: "String",
871
- # is_primary_ipv_6: false,
872
- # },
873
- # ],
874
- # private_ip_address: "String",
875
- # private_ip_addresses: [
876
- # {
877
- # primary: false,
878
- # private_ip_address: "String",
879
- # },
880
- # ],
881
- # secondary_private_ip_address_count: 1,
882
859
  # ipv_4_prefixes: [
883
860
  # {
884
861
  # ipv_4_prefix: "String",
@@ -892,7 +869,6 @@ module Aws::EC2
892
869
  # ],
893
870
  # ipv_6_prefix_count: 1,
894
871
  # interface_type: "efa", # accepts efa, branch, trunk
895
- # subnet_id: "SubnetId", # required
896
872
  # tag_specifications: [
897
873
  # {
898
874
  # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, 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, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, ipam-external-resource-verification-token
@@ -911,56 +887,27 @@ module Aws::EC2
911
887
  # udp_stream_timeout: 1,
912
888
  # udp_timeout: 1,
913
889
  # },
890
+ # subnet_id: "SubnetId", # required
891
+ # description: "String",
892
+ # private_ip_address: "String",
893
+ # groups: ["SecurityGroupId"],
894
+ # private_ip_addresses: [
895
+ # {
896
+ # primary: false,
897
+ # private_ip_address: "String",
898
+ # },
899
+ # ],
900
+ # secondary_private_ip_address_count: 1,
901
+ # ipv_6_addresses: [
902
+ # {
903
+ # ipv_6_address: "String",
904
+ # is_primary_ipv_6: false,
905
+ # },
906
+ # ],
907
+ # ipv_6_address_count: 1,
908
+ # dry_run: false,
914
909
  # })
915
910
  # @param [Hash] options ({})
916
- # @option options [String] :description
917
- # A description for the network interface.
918
- # @option options [Boolean] :dry_run
919
- # Checks whether you have the required permissions for the action,
920
- # without actually making the request, and provides an error response.
921
- # If you have the required permissions, the error response is
922
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
923
- # @option options [Array<String>] :groups
924
- # The IDs of one or more security groups.
925
- # @option options [Integer] :ipv_6_address_count
926
- # The number of IPv6 addresses to assign to a network interface. Amazon
927
- # EC2 automatically selects the IPv6 addresses from the subnet range.
928
- #
929
- # You can't specify a count of IPv6 addresses using this parameter if
930
- # you've specified one of the following: specific IPv6 addresses,
931
- # specific IPv6 prefixes, or a count of IPv6 prefixes.
932
- #
933
- # If your subnet has the `AssignIpv6AddressOnCreation` attribute set,
934
- # you can override that setting by specifying 0 as the IPv6 address
935
- # count.
936
- # @option options [Array<Types::InstanceIpv6Address>] :ipv_6_addresses
937
- # The IPv6 addresses from the IPv6 CIDR block range of your subnet.
938
- #
939
- # You can't specify IPv6 addresses using this parameter if you've
940
- # specified one of the following: a count of IPv6 addresses, specific
941
- # IPv6 prefixes, or a count of IPv6 prefixes.
942
- # @option options [String] :private_ip_address
943
- # The primary private IPv4 address of the network interface. If you
944
- # don't specify an IPv4 address, Amazon EC2 selects one for you from
945
- # the subnet's IPv4 CIDR range. If you specify an IP address, you
946
- # cannot indicate any IP addresses specified in `privateIpAddresses` as
947
- # primary (only one IP address can be designated as primary).
948
- # @option options [Array<Types::PrivateIpAddressSpecification>] :private_ip_addresses
949
- # The private IPv4 addresses.
950
- #
951
- # You can't specify private IPv4 addresses if you've specified one of
952
- # the following: a count of private IPv4 addresses, specific IPv4
953
- # prefixes, or a count of IPv4 prefixes.
954
- # @option options [Integer] :secondary_private_ip_address_count
955
- # The number of secondary private IPv4 addresses to assign to a network
956
- # interface. When you specify a number of secondary IPv4 addresses,
957
- # Amazon EC2 selects these IP addresses within the subnet's IPv4 CIDR
958
- # range. You can't specify this option and specify more than one
959
- # private IP address using `privateIpAddresses`.
960
- #
961
- # You can't specify a count of private IPv4 addresses if you've
962
- # specified one of the following: specific private IPv4 addresses,
963
- # specific IPv4 prefixes, or a count of IPv4 prefixes.
964
911
  # @option options [Array<Types::Ipv4PrefixSpecificationRequest>] :ipv_4_prefixes
965
912
  # The IPv4 prefixes assigned to the network interface.
966
913
  #
@@ -991,8 +938,6 @@ module Aws::EC2
991
938
  # The type of network interface. The default is `interface`.
992
939
  #
993
940
  # The only supported values are `interface`, `efa`, and `trunk`.
994
- # @option options [required, String] :subnet_id
995
- # The ID of the subnet to associate with the network interface.
996
941
  # @option options [Array<Types::TagSpecification>] :tag_specifications
997
942
  # The tags to apply to the new network interface.
998
943
  # @option options [String] :client_token
@@ -1021,6 +966,56 @@ module Aws::EC2
1021
966
  # the primary IPv6 address.
1022
967
  # @option options [Types::ConnectionTrackingSpecificationRequest] :connection_tracking_specification
1023
968
  # A connection tracking specification for the network interface.
969
+ # @option options [required, String] :subnet_id
970
+ # The ID of the subnet to associate with the network interface.
971
+ # @option options [String] :description
972
+ # A description for the network interface.
973
+ # @option options [String] :private_ip_address
974
+ # The primary private IPv4 address of the network interface. If you
975
+ # don't specify an IPv4 address, Amazon EC2 selects one for you from
976
+ # the subnet's IPv4 CIDR range. If you specify an IP address, you
977
+ # cannot indicate any IP addresses specified in `privateIpAddresses` as
978
+ # primary (only one IP address can be designated as primary).
979
+ # @option options [Array<String>] :groups
980
+ # The IDs of one or more security groups.
981
+ # @option options [Array<Types::PrivateIpAddressSpecification>] :private_ip_addresses
982
+ # The private IPv4 addresses.
983
+ #
984
+ # You can't specify private IPv4 addresses if you've specified one of
985
+ # the following: a count of private IPv4 addresses, specific IPv4
986
+ # prefixes, or a count of IPv4 prefixes.
987
+ # @option options [Integer] :secondary_private_ip_address_count
988
+ # The number of secondary private IPv4 addresses to assign to a network
989
+ # interface. When you specify a number of secondary IPv4 addresses,
990
+ # Amazon EC2 selects these IP addresses within the subnet's IPv4 CIDR
991
+ # range. You can't specify this option and specify more than one
992
+ # private IP address using `privateIpAddresses`.
993
+ #
994
+ # You can't specify a count of private IPv4 addresses if you've
995
+ # specified one of the following: specific private IPv4 addresses,
996
+ # specific IPv4 prefixes, or a count of IPv4 prefixes.
997
+ # @option options [Array<Types::InstanceIpv6Address>] :ipv_6_addresses
998
+ # The IPv6 addresses from the IPv6 CIDR block range of your subnet.
999
+ #
1000
+ # You can't specify IPv6 addresses using this parameter if you've
1001
+ # specified one of the following: a count of IPv6 addresses, specific
1002
+ # IPv6 prefixes, or a count of IPv6 prefixes.
1003
+ # @option options [Integer] :ipv_6_address_count
1004
+ # The number of IPv6 addresses to assign to a network interface. Amazon
1005
+ # EC2 automatically selects the IPv6 addresses from the subnet range.
1006
+ #
1007
+ # You can't specify a count of IPv6 addresses using this parameter if
1008
+ # you've specified one of the following: specific IPv6 addresses,
1009
+ # specific IPv6 prefixes, or a count of IPv6 prefixes.
1010
+ #
1011
+ # If your subnet has the `AssignIpv6AddressOnCreation` attribute set,
1012
+ # you can override that setting by specifying 0 as the IPv6 address
1013
+ # count.
1014
+ # @option options [Boolean] :dry_run
1015
+ # Checks whether you have the required permissions for the action,
1016
+ # without actually making the request, and provides an error response.
1017
+ # If you have the required permissions, the error response is
1018
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1024
1019
  # @return [NetworkInterface]
1025
1020
  def create_network_interface(options = {})
1026
1021
  resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -1036,9 +1031,6 @@ module Aws::EC2
1036
1031
  # @example Request syntax with placeholder values
1037
1032
  #
1038
1033
  # placementgroup = ec2.create_placement_group({
1039
- # dry_run: false,
1040
- # group_name: "String",
1041
- # strategy: "cluster", # accepts cluster, spread, partition
1042
1034
  # partition_count: 1,
1043
1035
  # tag_specifications: [
1044
1036
  # {
@@ -1052,8 +1044,22 @@ module Aws::EC2
1052
1044
  # },
1053
1045
  # ],
1054
1046
  # spread_level: "host", # accepts host, rack
1047
+ # dry_run: false,
1048
+ # group_name: "String",
1049
+ # strategy: "cluster", # accepts cluster, spread, partition
1055
1050
  # })
1056
1051
  # @param [Hash] options ({})
1052
+ # @option options [Integer] :partition_count
1053
+ # The number of partitions. Valid only when **Strategy** is set to
1054
+ # `partition`.
1055
+ # @option options [Array<Types::TagSpecification>] :tag_specifications
1056
+ # The tags to apply to the new placement group.
1057
+ # @option options [String] :spread_level
1058
+ # Determines how placement groups spread instances.
1059
+ #
1060
+ # * Host – You can use `host` only with Outpost placement groups.
1061
+ #
1062
+ # * Rack – No usage restrictions.
1057
1063
  # @option options [Boolean] :dry_run
1058
1064
  # Checks whether you have the required permissions for the operation,
1059
1065
  # without actually making the request, and provides an error response.
@@ -1066,17 +1072,6 @@ module Aws::EC2
1066
1072
  # Constraints: Up to 255 ASCII characters
1067
1073
  # @option options [String] :strategy
1068
1074
  # The placement strategy.
1069
- # @option options [Integer] :partition_count
1070
- # The number of partitions. Valid only when **Strategy** is set to
1071
- # `partition`.
1072
- # @option options [Array<Types::TagSpecification>] :tag_specifications
1073
- # The tags to apply to the new placement group.
1074
- # @option options [String] :spread_level
1075
- # Determines how placement groups spread instances.
1076
- #
1077
- # * Host – You can use `host` only with Outpost placement groups.
1078
- #
1079
- # * Rack – No usage restrictions.
1080
1075
  # @return [PlacementGroup]
1081
1076
  def create_placement_group(options = {})
1082
1077
  Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -1091,8 +1086,6 @@ module Aws::EC2
1091
1086
  # @example Request syntax with placeholder values
1092
1087
  #
1093
1088
  # routetable = ec2.create_route_table({
1094
- # dry_run: false,
1095
- # vpc_id: "VpcId", # required
1096
1089
  # tag_specifications: [
1097
1090
  # {
1098
1091
  # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, 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, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, ipam-external-resource-verification-token
@@ -1105,15 +1098,10 @@ module Aws::EC2
1105
1098
  # },
1106
1099
  # ],
1107
1100
  # client_token: "String",
1101
+ # dry_run: false,
1102
+ # vpc_id: "VpcId", # required
1108
1103
  # })
1109
1104
  # @param [Hash] options ({})
1110
- # @option options [Boolean] :dry_run
1111
- # Checks whether you have the required permissions for the action,
1112
- # without actually making the request, and provides an error response.
1113
- # If you have the required permissions, the error response is
1114
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1115
- # @option options [required, String] :vpc_id
1116
- # The ID of the VPC.
1117
1105
  # @option options [Array<Types::TagSpecification>] :tag_specifications
1118
1106
  # The tags to assign to the route table.
1119
1107
  # @option options [String] :client_token
@@ -1124,6 +1112,13 @@ module Aws::EC2
1124
1112
  #
1125
1113
  #
1126
1114
  # [1]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html
1115
+ # @option options [Boolean] :dry_run
1116
+ # Checks whether you have the required permissions for the action,
1117
+ # without actually making the request, and provides an error response.
1118
+ # If you have the required permissions, the error response is
1119
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1120
+ # @option options [required, String] :vpc_id
1121
+ # The ID of the VPC.
1127
1122
  # @return [RouteTable]
1128
1123
  def create_route_table(options = {})
1129
1124
  resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -1274,12 +1269,12 @@ module Aws::EC2
1274
1269
  # ipv_6_cidr_block: "String",
1275
1270
  # outpost_arn: "String",
1276
1271
  # vpc_id: "VpcId", # required
1277
- # dry_run: false,
1278
1272
  # ipv_6_native: false,
1279
1273
  # ipv_4_ipam_pool_id: "IpamPoolId",
1280
1274
  # ipv_4_netmask_length: 1,
1281
1275
  # ipv_6_ipam_pool_id: "IpamPoolId",
1282
1276
  # ipv_6_netmask_length: 1,
1277
+ # dry_run: false,
1283
1278
  # })
1284
1279
  # @param [Hash] options ({})
1285
1280
  # @option options [Array<Types::TagSpecification>] :tag_specifications
@@ -1319,11 +1314,6 @@ module Aws::EC2
1319
1314
  # Outpost subnet.
1320
1315
  # @option options [required, String] :vpc_id
1321
1316
  # The ID of the VPC.
1322
- # @option options [Boolean] :dry_run
1323
- # Checks whether you have the required permissions for the action,
1324
- # without actually making the request, and provides an error response.
1325
- # If you have the required permissions, the error response is
1326
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1327
1317
  # @option options [Boolean] :ipv_6_native
1328
1318
  # Indicates whether to create an IPv6 only subnet.
1329
1319
  # @option options [String] :ipv_4_ipam_pool_id
@@ -1334,6 +1324,11 @@ module Aws::EC2
1334
1324
  # An IPv6 IPAM pool ID for the subnet.
1335
1325
  # @option options [Integer] :ipv_6_netmask_length
1336
1326
  # An IPv6 netmask length for the subnet.
1327
+ # @option options [Boolean] :dry_run
1328
+ # Checks whether you have the required permissions for the action,
1329
+ # without actually making the request, and provides an error response.
1330
+ # If you have the required permissions, the error response is
1331
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1337
1332
  # @return [Subnet]
1338
1333
  def create_subnet(options = {})
1339
1334
  resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -1435,7 +1430,6 @@ module Aws::EC2
1435
1430
  # size: 1,
1436
1431
  # snapshot_id: "SnapshotId",
1437
1432
  # volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1, gp3
1438
- # dry_run: false,
1439
1433
  # tag_specifications: [
1440
1434
  # {
1441
1435
  # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, 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, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, ipam-external-resource-verification-token
@@ -1450,6 +1444,7 @@ module Aws::EC2
1450
1444
  # multi_attach_enabled: false,
1451
1445
  # throughput: 1,
1452
1446
  # client_token: "String",
1447
+ # dry_run: false,
1453
1448
  # })
1454
1449
  # @param [Hash] options ({})
1455
1450
  # @option options [required, String] :availability_zone
@@ -1569,11 +1564,6 @@ module Aws::EC2
1569
1564
  #
1570
1565
  #
1571
1566
  # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html
1572
- # @option options [Boolean] :dry_run
1573
- # Checks whether you have the required permissions for the action,
1574
- # without actually making the request, and provides an error response.
1575
- # If you have the required permissions, the error response is
1576
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1577
1567
  # @option options [Array<Types::TagSpecification>] :tag_specifications
1578
1568
  # The tags to apply to the volume during creation.
1579
1569
  # @option options [Boolean] :multi_attach_enabled
@@ -1602,6 +1592,11 @@ module Aws::EC2
1602
1592
  #
1603
1593
  #
1604
1594
  # [1]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html
1595
+ # @option options [Boolean] :dry_run
1596
+ # Checks whether you have the required permissions for the action,
1597
+ # without actually making the request, and provides an error response.
1598
+ # If you have the required permissions, the error response is
1599
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1605
1600
  # @return [Volume]
1606
1601
  def create_volume(options = {})
1607
1602
  resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -1618,15 +1613,12 @@ module Aws::EC2
1618
1613
  #
1619
1614
  # vpc = ec2.create_vpc({
1620
1615
  # cidr_block: "String",
1621
- # amazon_provided_ipv_6_cidr_block: false,
1622
1616
  # ipv_6_pool: "Ipv6PoolEc2Id",
1623
1617
  # ipv_6_cidr_block: "String",
1624
1618
  # ipv_4_ipam_pool_id: "IpamPoolId",
1625
1619
  # ipv_4_netmask_length: 1,
1626
1620
  # ipv_6_ipam_pool_id: "IpamPoolId",
1627
1621
  # ipv_6_netmask_length: 1,
1628
- # dry_run: false,
1629
- # instance_tenancy: "default", # accepts default, dedicated, host
1630
1622
  # ipv_6_cidr_block_network_border_group: "String",
1631
1623
  # tag_specifications: [
1632
1624
  # {
@@ -1639,6 +1631,9 @@ module Aws::EC2
1639
1631
  # ],
1640
1632
  # },
1641
1633
  # ],
1634
+ # dry_run: false,
1635
+ # instance_tenancy: "default", # accepts default, dedicated, host
1636
+ # amazon_provided_ipv_6_cidr_block: false,
1642
1637
  # })
1643
1638
  # @param [Hash] options ({})
1644
1639
  # @option options [String] :cidr_block
@@ -1646,10 +1641,6 @@ module Aws::EC2
1646
1641
  # `10.0.0.0/16`. We modify the specified CIDR block to its canonical
1647
1642
  # form; for example, if you specify `100.68.0.18/18`, we modify it to
1648
1643
  # `100.68.0.0/18`.
1649
- # @option options [Boolean] :amazon_provided_ipv_6_cidr_block
1650
- # Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length
1651
- # for the VPC. You cannot specify the range of IP addresses, or the size
1652
- # of the CIDR block.
1653
1644
  # @option options [String] :ipv_6_pool
1654
1645
  # The ID of an IPv6 address pool from which to allocate the IPv6 CIDR
1655
1646
  # block.
@@ -1696,6 +1687,14 @@ module Aws::EC2
1696
1687
  #
1697
1688
  #
1698
1689
  # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/what-is-it-ipam.html
1690
+ # @option options [String] :ipv_6_cidr_block_network_border_group
1691
+ # The name of the location from which we advertise the IPV6 CIDR block.
1692
+ # Use this parameter to limit the address to this location.
1693
+ #
1694
+ # You must set `AmazonProvidedIpv6CidrBlock` to `true` to use this
1695
+ # parameter.
1696
+ # @option options [Array<Types::TagSpecification>] :tag_specifications
1697
+ # The tags to assign to the VPC.
1699
1698
  # @option options [Boolean] :dry_run
1700
1699
  # Checks whether you have the required permissions for the action,
1701
1700
  # without actually making the request, and provides an error response.
@@ -1713,14 +1712,10 @@ module Aws::EC2
1713
1712
  # Use the `default` or `dedicated` values only.
1714
1713
  #
1715
1714
  # Default: `default`
1716
- # @option options [String] :ipv_6_cidr_block_network_border_group
1717
- # The name of the location from which we advertise the IPV6 CIDR block.
1718
- # Use this parameter to limit the address to this location.
1719
- #
1720
- # You must set `AmazonProvidedIpv6CidrBlock` to `true` to use this
1721
- # parameter.
1722
- # @option options [Array<Types::TagSpecification>] :tag_specifications
1723
- # The tags to assign to the VPC.
1715
+ # @option options [Boolean] :amazon_provided_ipv_6_cidr_block
1716
+ # Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length
1717
+ # for the VPC. You cannot specify the range of IP addresses, or the size
1718
+ # of the CIDR block.
1724
1719
  # @return [Vpc]
1725
1720
  def create_vpc(options = {})
1726
1721
  resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -1736,10 +1731,6 @@ module Aws::EC2
1736
1731
  # @example Request syntax with placeholder values
1737
1732
  #
1738
1733
  # vpcpeeringconnection = ec2.create_vpc_peering_connection({
1739
- # dry_run: false,
1740
- # peer_owner_id: "String",
1741
- # peer_vpc_id: "String",
1742
- # vpc_id: "VpcId", # required
1743
1734
  # peer_region: "String",
1744
1735
  # tag_specifications: [
1745
1736
  # {
@@ -1752,30 +1743,34 @@ module Aws::EC2
1752
1743
  # ],
1753
1744
  # },
1754
1745
  # ],
1746
+ # dry_run: false,
1747
+ # vpc_id: "VpcId", # required
1748
+ # peer_vpc_id: "String",
1749
+ # peer_owner_id: "String",
1755
1750
  # })
1756
1751
  # @param [Hash] options ({})
1752
+ # @option options [String] :peer_region
1753
+ # The Region code for the accepter VPC, if the accepter VPC is located
1754
+ # in a Region other than the Region in which you make the request.
1755
+ #
1756
+ # Default: The Region in which you make the request.
1757
+ # @option options [Array<Types::TagSpecification>] :tag_specifications
1758
+ # The tags to assign to the peering connection.
1757
1759
  # @option options [Boolean] :dry_run
1758
1760
  # Checks whether you have the required permissions for the action,
1759
1761
  # without actually making the request, and provides an error response.
1760
1762
  # If you have the required permissions, the error response is
1761
1763
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1762
- # @option options [String] :peer_owner_id
1763
- # The Amazon Web Services account ID of the owner of the accepter VPC.
1764
- #
1765
- # Default: Your Amazon Web Services account ID
1766
- # @option options [String] :peer_vpc_id
1767
- # The ID of the VPC with which you are creating the VPC peering
1768
- # connection. You must specify this parameter in the request.
1769
1764
  # @option options [required, String] :vpc_id
1770
1765
  # The ID of the requester VPC. You must specify this parameter in the
1771
1766
  # request.
1772
- # @option options [String] :peer_region
1773
- # The Region code for the accepter VPC, if the accepter VPC is located
1774
- # in a Region other than the Region in which you make the request.
1767
+ # @option options [String] :peer_vpc_id
1768
+ # The ID of the VPC with which you are creating the VPC peering
1769
+ # connection. You must specify this parameter in the request.
1770
+ # @option options [String] :peer_owner_id
1771
+ # The Amazon Web Services account ID of the owner of the accepter VPC.
1775
1772
  #
1776
- # Default: The Region in which you make the request.
1777
- # @option options [Array<Types::TagSpecification>] :tag_specifications
1778
- # The tags to assign to the peering connection.
1773
+ # Default: Your Amazon Web Services account ID
1779
1774
  # @return [VpcPeeringConnection]
1780
1775
  def create_vpc_peering_connection(options = {})
1781
1776
  resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -1791,18 +1786,18 @@ module Aws::EC2
1791
1786
  # @example Request syntax with placeholder values
1792
1787
  #
1793
1788
  # ec2.disassociate_route_table({
1794
- # association_id: "RouteTableAssociationId", # required
1795
1789
  # dry_run: false,
1790
+ # association_id: "RouteTableAssociationId", # required
1796
1791
  # })
1797
1792
  # @param [Hash] options ({})
1798
- # @option options [required, String] :association_id
1799
- # The association ID representing the current association between the
1800
- # route table and subnet or gateway.
1801
1793
  # @option options [Boolean] :dry_run
1802
1794
  # Checks whether you have the required permissions for the action,
1803
1795
  # without actually making the request, and provides an error response.
1804
1796
  # If you have the required permissions, the error response is
1805
1797
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1798
+ # @option options [required, String] :association_id
1799
+ # The association ID representing the current association between the
1800
+ # route table and subnet or gateway.
1806
1801
  # @return [EmptyStructure]
1807
1802
  def disassociate_route_table(options = {})
1808
1803
  resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -1814,9 +1809,6 @@ module Aws::EC2
1814
1809
  # @example Request syntax with placeholder values
1815
1810
  #
1816
1811
  # keypairinfo = ec2.import_key_pair({
1817
- # dry_run: false,
1818
- # key_name: "String", # required
1819
- # public_key_material: "data", # required
1820
1812
  # tag_specifications: [
1821
1813
  # {
1822
1814
  # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, 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, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, ipam-external-resource-verification-token
@@ -1828,8 +1820,13 @@ module Aws::EC2
1828
1820
  # ],
1829
1821
  # },
1830
1822
  # ],
1823
+ # dry_run: false,
1824
+ # key_name: "String", # required
1825
+ # public_key_material: "data", # required
1831
1826
  # })
1832
1827
  # @param [Hash] options ({})
1828
+ # @option options [Array<Types::TagSpecification>] :tag_specifications
1829
+ # The tags to apply to the imported key pair.
1833
1830
  # @option options [Boolean] :dry_run
1834
1831
  # Checks whether you have the required permissions for the action,
1835
1832
  # without actually making the request, and provides an error response.
@@ -1840,8 +1837,6 @@ module Aws::EC2
1840
1837
  # @option options [required, String, StringIO, File] :public_key_material
1841
1838
  # The public key. For API calls, the text must be base64-encoded. For
1842
1839
  # command line tools, base64 encoding is performed for you.
1843
- # @option options [Array<Types::TagSpecification>] :tag_specifications
1844
- # The tags to apply to the imported key pair.
1845
1840
  # @return [KeyPairInfo]
1846
1841
  def import_key_pair(options = {})
1847
1842
  resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -1857,11 +1852,31 @@ module Aws::EC2
1857
1852
  #
1858
1853
  # image = ec2.register_image({
1859
1854
  # image_location: "String",
1855
+ # billing_products: ["String"],
1856
+ # boot_mode: "legacy-bios", # accepts legacy-bios, uefi, uefi-preferred
1857
+ # tpm_support: "v2.0", # accepts v2.0
1858
+ # uefi_data: "StringType",
1859
+ # imds_support: "v2.0", # accepts v2.0
1860
+ # tag_specifications: [
1861
+ # {
1862
+ # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, 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, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, ipam-external-resource-verification-token
1863
+ # tags: [
1864
+ # {
1865
+ # key: "String",
1866
+ # value: "String",
1867
+ # },
1868
+ # ],
1869
+ # },
1870
+ # ],
1871
+ # dry_run: false,
1872
+ # name: "String", # required
1873
+ # description: "String",
1860
1874
  # architecture: "i386", # accepts i386, x86_64, arm64, x86_64_mac, arm64_mac
1875
+ # kernel_id: "KernelId",
1876
+ # ramdisk_id: "RamdiskId",
1877
+ # root_device_name: "String",
1861
1878
  # block_device_mappings: [
1862
1879
  # {
1863
- # device_name: "String",
1864
- # virtual_name: "String",
1865
1880
  # ebs: {
1866
1881
  # delete_on_termination: false,
1867
1882
  # iops: 1,
@@ -1874,33 +1889,13 @@ module Aws::EC2
1874
1889
  # encrypted: false,
1875
1890
  # },
1876
1891
  # no_device: "String",
1892
+ # device_name: "String",
1893
+ # virtual_name: "String",
1877
1894
  # },
1878
1895
  # ],
1879
- # description: "String",
1880
- # dry_run: false,
1881
- # ena_support: false,
1882
- # kernel_id: "KernelId",
1883
- # name: "String", # required
1884
- # billing_products: ["String"],
1885
- # ramdisk_id: "RamdiskId",
1886
- # root_device_name: "String",
1887
- # sriov_net_support: "String",
1888
1896
  # virtualization_type: "String",
1889
- # boot_mode: "legacy-bios", # accepts legacy-bios, uefi, uefi-preferred
1890
- # tpm_support: "v2.0", # accepts v2.0
1891
- # uefi_data: "StringType",
1892
- # imds_support: "v2.0", # accepts v2.0
1893
- # tag_specifications: [
1894
- # {
1895
- # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, 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, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, ipam-external-resource-verification-token
1896
- # tags: [
1897
- # {
1898
- # key: "String",
1899
- # value: "String",
1900
- # },
1901
- # ],
1902
- # },
1903
- # ],
1897
+ # sriov_net_support: "String",
1898
+ # ena_support: false,
1904
1899
  # })
1905
1900
  # @param [Hash] options ({})
1906
1901
  # @option options [String] :image_location
@@ -1912,47 +1907,6 @@ module Aws::EC2
1912
1907
  #
1913
1908
  #
1914
1909
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl
1915
- # @option options [String] :architecture
1916
- # The architecture of the AMI.
1917
- #
1918
- # Default: For Amazon EBS-backed AMIs, `i386`. For instance store-backed
1919
- # AMIs, the architecture specified in the manifest file.
1920
- # @option options [Array<Types::BlockDeviceMapping>] :block_device_mappings
1921
- # The block device mapping entries.
1922
- #
1923
- # If you specify an Amazon EBS volume using the ID of an Amazon EBS
1924
- # snapshot, you can't specify the encryption state of the volume.
1925
- #
1926
- # If you create an AMI on an Outpost, then all backing snapshots must be
1927
- # on the same Outpost or in the Region of that Outpost. AMIs on an
1928
- # Outpost that include local snapshots can be used to launch instances
1929
- # on the same Outpost only. For more information, [Amazon EBS local
1930
- # snapshots on Outposts][1] in the *Amazon EBS User Guide*.
1931
- #
1932
- #
1933
- #
1934
- # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html#ami
1935
- # @option options [String] :description
1936
- # A description for your AMI.
1937
- # @option options [Boolean] :dry_run
1938
- # Checks whether you have the required permissions for the action,
1939
- # without actually making the request, and provides an error response.
1940
- # If you have the required permissions, the error response is
1941
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1942
- # @option options [Boolean] :ena_support
1943
- # Set to `true` to enable enhanced networking with ENA for the AMI and
1944
- # any instances that you launch from the AMI.
1945
- #
1946
- # This option is supported only for HVM AMIs. Specifying this option
1947
- # with a PV AMI can make instances launched from the AMI unreachable.
1948
- # @option options [String] :kernel_id
1949
- # The ID of the kernel.
1950
- # @option options [required, String] :name
1951
- # A name for your AMI.
1952
- #
1953
- # Constraints: 3-128 alphanumeric characters, parentheses (()), square
1954
- # brackets (\[\]), spaces ( ), periods (.), slashes (/), dashes (-),
1955
- # single quotes ('), at-signs (@), or underscores(\_)
1956
1910
  # @option options [Array<String>] :billing_products
1957
1911
  # The billing product codes. Your account must be authorized to specify
1958
1912
  # billing product codes.
@@ -1968,23 +1922,6 @@ module Aws::EC2
1968
1922
  #
1969
1923
  # [1]: https://docs.aws.amazon.com/marketplace/latest/userguide/user-guide-for-sellers.html
1970
1924
  # [2]: https://docs.aws.amazon.com/marketplace/latest/userguide/ami-products.html
1971
- # @option options [String] :ramdisk_id
1972
- # The ID of the RAM disk.
1973
- # @option options [String] :root_device_name
1974
- # The device name of the root device volume (for example, `/dev/sda1`).
1975
- # @option options [String] :sriov_net_support
1976
- # Set to `simple` to enable enhanced networking with the Intel 82599
1977
- # Virtual Function interface for the AMI and any instances that you
1978
- # launch from the AMI.
1979
- #
1980
- # There is no way to disable `sriovNetSupport` at this time.
1981
- #
1982
- # This option is supported only for HVM AMIs. Specifying this option
1983
- # with a PV AMI can make instances launched from the AMI unreachable.
1984
- # @option options [String] :virtualization_type
1985
- # The type of virtualization (`hvm` \| `paravirtual`).
1986
- #
1987
- # Default: `paravirtual`
1988
1925
  # @option options [String] :boot_mode
1989
1926
  # The boot mode of the AMI. A value of `uefi-preferred` indicates that
1990
1927
  # the AMI supports both UEFI and Legacy BIOS.
@@ -2046,6 +1983,64 @@ module Aws::EC2
2046
1983
  #
2047
1984
  #
2048
1985
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html
1986
+ # @option options [Boolean] :dry_run
1987
+ # Checks whether you have the required permissions for the action,
1988
+ # without actually making the request, and provides an error response.
1989
+ # If you have the required permissions, the error response is
1990
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1991
+ # @option options [required, String] :name
1992
+ # A name for your AMI.
1993
+ #
1994
+ # Constraints: 3-128 alphanumeric characters, parentheses (()), square
1995
+ # brackets (\[\]), spaces ( ), periods (.), slashes (/), dashes (-),
1996
+ # single quotes ('), at-signs (@), or underscores(\_)
1997
+ # @option options [String] :description
1998
+ # A description for your AMI.
1999
+ # @option options [String] :architecture
2000
+ # The architecture of the AMI.
2001
+ #
2002
+ # Default: For Amazon EBS-backed AMIs, `i386`. For instance store-backed
2003
+ # AMIs, the architecture specified in the manifest file.
2004
+ # @option options [String] :kernel_id
2005
+ # The ID of the kernel.
2006
+ # @option options [String] :ramdisk_id
2007
+ # The ID of the RAM disk.
2008
+ # @option options [String] :root_device_name
2009
+ # The device name of the root device volume (for example, `/dev/sda1`).
2010
+ # @option options [Array<Types::BlockDeviceMapping>] :block_device_mappings
2011
+ # The block device mapping entries.
2012
+ #
2013
+ # If you specify an Amazon EBS volume using the ID of an Amazon EBS
2014
+ # snapshot, you can't specify the encryption state of the volume.
2015
+ #
2016
+ # If you create an AMI on an Outpost, then all backing snapshots must be
2017
+ # on the same Outpost or in the Region of that Outpost. AMIs on an
2018
+ # Outpost that include local snapshots can be used to launch instances
2019
+ # on the same Outpost only. For more information, [Amazon EBS local
2020
+ # snapshots on Outposts][1] in the *Amazon EBS User Guide*.
2021
+ #
2022
+ #
2023
+ #
2024
+ # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html#ami
2025
+ # @option options [String] :virtualization_type
2026
+ # The type of virtualization (`hvm` \| `paravirtual`).
2027
+ #
2028
+ # Default: `paravirtual`
2029
+ # @option options [String] :sriov_net_support
2030
+ # Set to `simple` to enable enhanced networking with the Intel 82599
2031
+ # Virtual Function interface for the AMI and any instances that you
2032
+ # launch from the AMI.
2033
+ #
2034
+ # There is no way to disable `sriovNetSupport` at this time.
2035
+ #
2036
+ # This option is supported only for HVM AMIs. Specifying this option
2037
+ # with a PV AMI can make instances launched from the AMI unreachable.
2038
+ # @option options [Boolean] :ena_support
2039
+ # Set to `true` to enable enhanced networking with ENA for the AMI and
2040
+ # any instances that you launch from the AMI.
2041
+ #
2042
+ # This option is supported only for HVM AMIs. Specifying this option
2043
+ # with a PV AMI can make instances launched from the AMI unreachable.
2049
2044
  # @return [Image]
2050
2045
  def register_image(options = {})
2051
2046
  resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -2062,17 +2057,26 @@ module Aws::EC2
2062
2057
  # @example Request syntax with placeholder values
2063
2058
  #
2064
2059
  # classic_addresses = ec2.classic_addresses({
2060
+ # public_ips: ["String"],
2061
+ # dry_run: false,
2065
2062
  # filters: [
2066
2063
  # {
2067
2064
  # name: "String",
2068
2065
  # values: ["String"],
2069
2066
  # },
2070
2067
  # ],
2071
- # public_ips: ["String"],
2072
2068
  # allocation_ids: ["AllocationId"],
2073
- # dry_run: false,
2074
2069
  # })
2075
2070
  # @param [Hash] options ({})
2071
+ # @option options [Array<String>] :public_ips
2072
+ # One or more Elastic IP addresses.
2073
+ #
2074
+ # Default: Describes all your Elastic IP addresses.
2075
+ # @option options [Boolean] :dry_run
2076
+ # Checks whether you have the required permissions for the action,
2077
+ # without actually making the request, and provides an error response.
2078
+ # If you have the required permissions, the error response is
2079
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2076
2080
  # @option options [Array<Types::Filter>] :filters
2077
2081
  # One or more filters. Filter names and values are case-sensitive.
2078
2082
  #
@@ -2107,17 +2111,8 @@ module Aws::EC2
2107
2111
  # * `tag-key` - The key of a tag assigned to the resource. Use this
2108
2112
  # filter to find all resources assigned a tag with a specific key,
2109
2113
  # regardless of the tag value.
2110
- # @option options [Array<String>] :public_ips
2111
- # One or more Elastic IP addresses.
2112
- #
2113
- # Default: Describes all your Elastic IP addresses.
2114
2114
  # @option options [Array<String>] :allocation_ids
2115
2115
  # Information about the allocation IDs.
2116
- # @option options [Boolean] :dry_run
2117
- # Checks whether you have the required permissions for the action,
2118
- # without actually making the request, and provides an error response.
2119
- # If you have the required permissions, the error response is
2120
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2121
2116
  # @return [ClassicAddress::Collection]
2122
2117
  def classic_addresses(options = {})
2123
2118
  batches = Enumerator.new do |y|
@@ -2154,17 +2149,22 @@ module Aws::EC2
2154
2149
  #
2155
2150
  # dhcp_options_sets = ec2.dhcp_options_sets({
2156
2151
  # dhcp_options_ids: ["DhcpOptionsId"],
2152
+ # dry_run: false,
2157
2153
  # filters: [
2158
2154
  # {
2159
2155
  # name: "String",
2160
2156
  # values: ["String"],
2161
2157
  # },
2162
2158
  # ],
2163
- # dry_run: false,
2164
2159
  # })
2165
2160
  # @param [Hash] options ({})
2166
2161
  # @option options [Array<String>] :dhcp_options_ids
2167
2162
  # The IDs of DHCP option sets.
2163
+ # @option options [Boolean] :dry_run
2164
+ # Checks whether you have the required permissions for the action,
2165
+ # without actually making the request, and provides an error response.
2166
+ # If you have the required permissions, the error response is
2167
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2168
2168
  # @option options [Array<Types::Filter>] :filters
2169
2169
  # The filters.
2170
2170
  #
@@ -2186,11 +2186,6 @@ module Aws::EC2
2186
2186
  # * `tag-key` - The key of a tag assigned to the resource. Use this
2187
2187
  # filter to find all resources assigned a tag with a specific key,
2188
2188
  # regardless of the tag value.
2189
- # @option options [Boolean] :dry_run
2190
- # Checks whether you have the required permissions for the action,
2191
- # without actually making the request, and provides an error response.
2192
- # If you have the required permissions, the error response is
2193
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2194
2189
  # @return [DhcpOptions::Collection]
2195
2190
  def dhcp_options_sets(options = {})
2196
2191
  batches = Enumerator.new do |y|
@@ -2225,17 +2220,17 @@ module Aws::EC2
2225
2220
  #
2226
2221
  # images = ec2.images({
2227
2222
  # executable_users: ["String"],
2223
+ # image_ids: ["ImageId"],
2224
+ # owners: ["String"],
2225
+ # include_deprecated: false,
2226
+ # include_disabled: false,
2227
+ # dry_run: false,
2228
2228
  # filters: [
2229
2229
  # {
2230
2230
  # name: "String",
2231
2231
  # values: ["String"],
2232
2232
  # },
2233
2233
  # ],
2234
- # image_ids: ["ImageId"],
2235
- # owners: ["String"],
2236
- # include_deprecated: false,
2237
- # include_disabled: false,
2238
- # dry_run: false,
2239
2234
  # })
2240
2235
  # @param [Hash] options ({})
2241
2236
  # @option options [Array<String>] :executable_users
@@ -2254,6 +2249,34 @@ module Aws::EC2
2254
2249
  # also returned.
2255
2250
  #
2256
2251
  # * If you specify `all`, all public AMIs are returned.
2252
+ # @option options [Array<String>] :image_ids
2253
+ # The image IDs.
2254
+ #
2255
+ # Default: Describes all images available to you.
2256
+ # @option options [Array<String>] :owners
2257
+ # Scopes the results to images with the specified owners. You can
2258
+ # specify a combination of Amazon Web Services account IDs, `self`,
2259
+ # `amazon`, and `aws-marketplace`. If you omit this parameter, the
2260
+ # results include all images for which you have launch permissions,
2261
+ # regardless of ownership.
2262
+ # @option options [Boolean] :include_deprecated
2263
+ # Specifies whether to include deprecated AMIs.
2264
+ #
2265
+ # Default: No deprecated AMIs are included in the response.
2266
+ #
2267
+ # <note markdown="1"> If you are the AMI owner, all deprecated AMIs appear in the response
2268
+ # regardless of what you specify for this parameter.
2269
+ #
2270
+ # </note>
2271
+ # @option options [Boolean] :include_disabled
2272
+ # Specifies whether to include disabled AMIs.
2273
+ #
2274
+ # Default: No disabled AMIs are included in the response.
2275
+ # @option options [Boolean] :dry_run
2276
+ # Checks whether you have the required permissions for the action,
2277
+ # without actually making the request, and provides an error response.
2278
+ # If you have the required permissions, the error response is
2279
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2257
2280
  # @option options [Array<Types::Filter>] :filters
2258
2281
  # The filters.
2259
2282
  #
@@ -2359,34 +2382,6 @@ module Aws::EC2
2359
2382
  #
2360
2383
  #
2361
2384
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateImage.html
2362
- # @option options [Array<String>] :image_ids
2363
- # The image IDs.
2364
- #
2365
- # Default: Describes all images available to you.
2366
- # @option options [Array<String>] :owners
2367
- # Scopes the results to images with the specified owners. You can
2368
- # specify a combination of Amazon Web Services account IDs, `self`,
2369
- # `amazon`, and `aws-marketplace`. If you omit this parameter, the
2370
- # results include all images for which you have launch permissions,
2371
- # regardless of ownership.
2372
- # @option options [Boolean] :include_deprecated
2373
- # Specifies whether to include deprecated AMIs.
2374
- #
2375
- # Default: No deprecated AMIs are included in the response.
2376
- #
2377
- # <note markdown="1"> If you are the AMI owner, all deprecated AMIs appear in the response
2378
- # regardless of what you specify for this parameter.
2379
- #
2380
- # </note>
2381
- # @option options [Boolean] :include_disabled
2382
- # Specifies whether to include disabled AMIs.
2383
- #
2384
- # Default: No disabled AMIs are included in the response.
2385
- # @option options [Boolean] :dry_run
2386
- # Checks whether you have the required permissions for the action,
2387
- # without actually making the request, and provides an error response.
2388
- # If you have the required permissions, the error response is
2389
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2390
2385
  # @return [Image::Collection]
2391
2386
  def images(options = {})
2392
2387
  batches = Enumerator.new do |y|
@@ -2420,16 +2415,25 @@ module Aws::EC2
2420
2415
  # @example Request syntax with placeholder values
2421
2416
  #
2422
2417
  # instances = ec2.instances({
2418
+ # instance_ids: ["InstanceId"],
2419
+ # dry_run: false,
2423
2420
  # filters: [
2424
2421
  # {
2425
2422
  # name: "String",
2426
2423
  # values: ["String"],
2427
2424
  # },
2428
2425
  # ],
2429
- # instance_ids: ["InstanceId"],
2430
- # dry_run: false,
2431
2426
  # })
2432
2427
  # @param [Hash] options ({})
2428
+ # @option options [Array<String>] :instance_ids
2429
+ # The instance IDs.
2430
+ #
2431
+ # Default: Describes all your instances.
2432
+ # @option options [Boolean] :dry_run
2433
+ # Checks whether you have the required permissions for the operation,
2434
+ # without actually making the request, and provides an error response.
2435
+ # If you have the required permissions, the error response is
2436
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2433
2437
  # @option options [Array<Types::Filter>] :filters
2434
2438
  # The filters.
2435
2439
  #
@@ -2505,9 +2509,6 @@ module Aws::EC2
2505
2509
  # * `iam-instance-profile.id` - The instance profile associated with the
2506
2510
  # instance. Specified as an ID.
2507
2511
  #
2508
- # * `iam-instance-profile.name` - The instance profile associated with
2509
- # the instance. Specified as an name.
2510
- #
2511
2512
  # * `image-id` - The ID of the image used to launch the instance.
2512
2513
  #
2513
2514
  # * `instance-id` - The ID of the instance.
@@ -2859,15 +2860,6 @@ module Aws::EC2
2859
2860
  # (`paravirtual` \| `hvm`).
2860
2861
  #
2861
2862
  # * `vpc-id` - The ID of the VPC that the instance is running in.
2862
- # @option options [Array<String>] :instance_ids
2863
- # The instance IDs.
2864
- #
2865
- # Default: Describes all your instances.
2866
- # @option options [Boolean] :dry_run
2867
- # Checks whether you have the required permissions for the operation,
2868
- # without actually making the request, and provides an error response.
2869
- # If you have the required permissions, the error response is
2870
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2871
2863
  # @return [Instance::Collection]
2872
2864
  def instances(options = {})
2873
2865
  batches = Enumerator.new do |y|
@@ -2903,16 +2895,25 @@ module Aws::EC2
2903
2895
  # @example Request syntax with placeholder values
2904
2896
  #
2905
2897
  # internet_gateways = ec2.internet_gateways({
2898
+ # dry_run: false,
2899
+ # internet_gateway_ids: ["InternetGatewayId"],
2906
2900
  # filters: [
2907
2901
  # {
2908
2902
  # name: "String",
2909
2903
  # values: ["String"],
2910
2904
  # },
2911
2905
  # ],
2912
- # dry_run: false,
2913
- # internet_gateway_ids: ["InternetGatewayId"],
2914
2906
  # })
2915
2907
  # @param [Hash] options ({})
2908
+ # @option options [Boolean] :dry_run
2909
+ # Checks whether you have the required permissions for the action,
2910
+ # without actually making the request, and provides an error response.
2911
+ # If you have the required permissions, the error response is
2912
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2913
+ # @option options [Array<String>] :internet_gateway_ids
2914
+ # The IDs of the internet gateways.
2915
+ #
2916
+ # Default: Describes all your internet gateways.
2916
2917
  # @option options [Array<Types::Filter>] :filters
2917
2918
  # The filters.
2918
2919
  #
@@ -2936,15 +2937,6 @@ module Aws::EC2
2936
2937
  # * `tag-key` - The key of a tag assigned to the resource. Use this
2937
2938
  # filter to find all resources assigned a tag with a specific key,
2938
2939
  # regardless of the tag value.
2939
- # @option options [Boolean] :dry_run
2940
- # Checks whether you have the required permissions for the action,
2941
- # without actually making the request, and provides an error response.
2942
- # If you have the required permissions, the error response is
2943
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2944
- # @option options [Array<String>] :internet_gateway_ids
2945
- # The IDs of the internet gateways.
2946
- #
2947
- # Default: Describes all your internet gateways.
2948
2940
  # @return [InternetGateway::Collection]
2949
2941
  def internet_gateways(options = {})
2950
2942
  batches = Enumerator.new do |y|
@@ -2978,51 +2970,51 @@ module Aws::EC2
2978
2970
  # @example Request syntax with placeholder values
2979
2971
  #
2980
2972
  # key_pairs = ec2.key_pairs({
2973
+ # key_names: ["KeyPairName"],
2974
+ # key_pair_ids: ["KeyPairId"],
2975
+ # include_public_key: false,
2976
+ # dry_run: false,
2981
2977
  # filters: [
2982
2978
  # {
2983
2979
  # name: "String",
2984
2980
  # values: ["String"],
2985
2981
  # },
2986
2982
  # ],
2987
- # key_names: ["KeyPairName"],
2988
- # key_pair_ids: ["KeyPairId"],
2989
- # dry_run: false,
2990
- # include_public_key: false,
2991
2983
  # })
2992
2984
  # @param [Hash] options ({})
2993
- # @option options [Array<Types::Filter>] :filters
2994
- # The filters.
2995
- #
2996
- # * `key-pair-id` - The ID of the key pair.
2997
- #
2998
- # * `fingerprint` - The fingerprint of the key pair.
2999
- #
3000
- # * `key-name` - The name of the key pair.
3001
- #
3002
- # * `tag-key` - The key of a tag assigned to the resource. Use this
3003
- # filter to find all resources assigned a tag with a specific key,
3004
- # regardless of the tag value.
3005
- #
3006
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
3007
- # the resource. Use the tag key in the filter name and the tag value
3008
- # as the filter value. For example, to find all resources that have a
3009
- # tag with the key `Owner` and the value `TeamA`, specify `tag:Owner`
3010
- # for the filter name and `TeamA` for the filter value.
3011
2985
  # @option options [Array<String>] :key_names
3012
2986
  # The key pair names.
3013
2987
  #
3014
2988
  # Default: Describes all of your key pairs.
3015
2989
  # @option options [Array<String>] :key_pair_ids
3016
2990
  # The IDs of the key pairs.
2991
+ # @option options [Boolean] :include_public_key
2992
+ # If `true`, the public key material is included in the response.
2993
+ #
2994
+ # Default: `false`
3017
2995
  # @option options [Boolean] :dry_run
3018
2996
  # Checks whether you have the required permissions for the action,
3019
2997
  # without actually making the request, and provides an error response.
3020
2998
  # If you have the required permissions, the error response is
3021
2999
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3022
- # @option options [Boolean] :include_public_key
3023
- # If `true`, the public key material is included in the response.
3000
+ # @option options [Array<Types::Filter>] :filters
3001
+ # The filters.
3002
+ #
3003
+ # * `key-pair-id` - The ID of the key pair.
3024
3004
  #
3025
- # Default: `false`
3005
+ # * `fingerprint` - The fingerprint of the key pair.
3006
+ #
3007
+ # * `key-name` - The name of the key pair.
3008
+ #
3009
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
3010
+ # filter to find all resources assigned a tag with a specific key,
3011
+ # regardless of the tag value.
3012
+ #
3013
+ # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
3014
+ # the resource. Use the tag key in the filter name and the tag value
3015
+ # as the filter value. For example, to find all resources that have a
3016
+ # tag with the key `Owner` and the value `TeamA`, specify `tag:Owner`
3017
+ # for the filter name and `TeamA` for the filter value.
3026
3018
  # @return [KeyPairInfo::Collection]
3027
3019
  def key_pairs(options = {})
3028
3020
  batches = Enumerator.new do |y|
@@ -3125,16 +3117,23 @@ module Aws::EC2
3125
3117
  # @example Request syntax with placeholder values
3126
3118
  #
3127
3119
  # network_acls = ec2.network_acls({
3120
+ # dry_run: false,
3121
+ # network_acl_ids: ["NetworkAclId"],
3128
3122
  # filters: [
3129
3123
  # {
3130
3124
  # name: "String",
3131
3125
  # values: ["String"],
3132
3126
  # },
3133
3127
  # ],
3134
- # dry_run: false,
3135
- # network_acl_ids: ["NetworkAclId"],
3136
3128
  # })
3137
3129
  # @param [Hash] options ({})
3130
+ # @option options [Boolean] :dry_run
3131
+ # Checks whether you have the required permissions for the action,
3132
+ # without actually making the request, and provides an error response.
3133
+ # If you have the required permissions, the error response is
3134
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3135
+ # @option options [Array<String>] :network_acl_ids
3136
+ # The IDs of the network ACLs.
3138
3137
  # @option options [Array<Types::Filter>] :filters
3139
3138
  # The filters.
3140
3139
  #
@@ -3192,13 +3191,6 @@ module Aws::EC2
3192
3191
  # regardless of the tag value.
3193
3192
  #
3194
3193
  # * `vpc-id` - The ID of the VPC for the network ACL.
3195
- # @option options [Boolean] :dry_run
3196
- # Checks whether you have the required permissions for the action,
3197
- # without actually making the request, and provides an error response.
3198
- # If you have the required permissions, the error response is
3199
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3200
- # @option options [Array<String>] :network_acl_ids
3201
- # The IDs of the network ACLs.
3202
3194
  # @return [NetworkAcl::Collection]
3203
3195
  def network_acls(options = {})
3204
3196
  batches = Enumerator.new do |y|
@@ -3232,16 +3224,25 @@ module Aws::EC2
3232
3224
  # @example Request syntax with placeholder values
3233
3225
  #
3234
3226
  # network_interfaces = ec2.network_interfaces({
3227
+ # dry_run: false,
3228
+ # network_interface_ids: ["NetworkInterfaceId"],
3235
3229
  # filters: [
3236
3230
  # {
3237
3231
  # name: "String",
3238
3232
  # values: ["String"],
3239
3233
  # },
3240
3234
  # ],
3241
- # dry_run: false,
3242
- # network_interface_ids: ["NetworkInterfaceId"],
3243
3235
  # })
3244
3236
  # @param [Hash] options ({})
3237
+ # @option options [Boolean] :dry_run
3238
+ # Checks whether you have the required permissions for the action,
3239
+ # without actually making the request, and provides an error response.
3240
+ # If you have the required permissions, the error response is
3241
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3242
+ # @option options [Array<String>] :network_interface_ids
3243
+ # The network interface IDs.
3244
+ #
3245
+ # Default: Describes all your network interfaces.
3245
3246
  # @option options [Array<Types::Filter>] :filters
3246
3247
  # One or more filters.
3247
3248
  #
@@ -3357,15 +3358,6 @@ module Aws::EC2
3357
3358
  # regardless of the tag value.
3358
3359
  #
3359
3360
  # * `vpc-id` - The ID of the VPC for the network interface.
3360
- # @option options [Boolean] :dry_run
3361
- # Checks whether you have the required permissions for the action,
3362
- # without actually making the request, and provides an error response.
3363
- # If you have the required permissions, the error response is
3364
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3365
- # @option options [Array<String>] :network_interface_ids
3366
- # The network interface IDs.
3367
- #
3368
- # Default: Describes all your network interfaces.
3369
3361
  # @return [NetworkInterface::Collection]
3370
3362
  def network_interfaces(options = {})
3371
3363
  batches = Enumerator.new do |y|
@@ -3399,17 +3391,35 @@ module Aws::EC2
3399
3391
  # @example Request syntax with placeholder values
3400
3392
  #
3401
3393
  # placement_groups = ec2.placement_groups({
3394
+ # group_ids: ["PlacementGroupId"],
3395
+ # dry_run: false,
3396
+ # group_names: ["PlacementGroupName"],
3402
3397
  # filters: [
3403
3398
  # {
3404
3399
  # name: "String",
3405
3400
  # values: ["String"],
3406
3401
  # },
3407
3402
  # ],
3408
- # dry_run: false,
3409
- # group_names: ["PlacementGroupName"],
3410
- # group_ids: ["PlacementGroupId"],
3411
3403
  # })
3412
3404
  # @param [Hash] options ({})
3405
+ # @option options [Array<String>] :group_ids
3406
+ # The IDs of the placement groups.
3407
+ # @option options [Boolean] :dry_run
3408
+ # Checks whether you have the required permissions for the operation,
3409
+ # without actually making the request, and provides an error response.
3410
+ # If you have the required permissions, the error response is
3411
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3412
+ # @option options [Array<String>] :group_names
3413
+ # The names of the placement groups.
3414
+ #
3415
+ # Constraints:
3416
+ #
3417
+ # * You can specify a name only if the placement group is owned by your
3418
+ # account.
3419
+ #
3420
+ # * If a placement group is *shared* with your account, specifying the
3421
+ # name results in an error. You must use the `GroupId` parameter
3422
+ # instead.
3413
3423
  # @option options [Array<Types::Filter>] :filters
3414
3424
  # The filters.
3415
3425
  #
@@ -3435,24 +3445,6 @@ module Aws::EC2
3435
3445
  # * `tag-key` - The key of a tag assigned to the resource. Use this
3436
3446
  # filter to find all resources that have a tag with a specific key,
3437
3447
  # regardless of the tag value.
3438
- # @option options [Boolean] :dry_run
3439
- # Checks whether you have the required permissions for the operation,
3440
- # without actually making the request, and provides an error response.
3441
- # If you have the required permissions, the error response is
3442
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3443
- # @option options [Array<String>] :group_names
3444
- # The names of the placement groups.
3445
- #
3446
- # Constraints:
3447
- #
3448
- # * You can specify a name only if the placement group is owned by your
3449
- # account.
3450
- #
3451
- # * If a placement group is *shared* with your account, specifying the
3452
- # name results in an error. You must use the `GroupId` parameter
3453
- # instead.
3454
- # @option options [Array<String>] :group_ids
3455
- # The IDs of the placement groups.
3456
3448
  # @return [PlacementGroup::Collection]
3457
3449
  def placement_groups(options = {})
3458
3450
  batches = Enumerator.new do |y|
@@ -3493,16 +3485,23 @@ module Aws::EC2
3493
3485
  # @example Request syntax with placeholder values
3494
3486
  #
3495
3487
  # route_tables = ec2.route_tables({
3488
+ # dry_run: false,
3489
+ # route_table_ids: ["RouteTableId"],
3496
3490
  # filters: [
3497
3491
  # {
3498
3492
  # name: "String",
3499
3493
  # values: ["String"],
3500
3494
  # },
3501
3495
  # ],
3502
- # dry_run: false,
3503
- # route_table_ids: ["RouteTableId"],
3504
3496
  # })
3505
3497
  # @param [Hash] options ({})
3498
+ # @option options [Boolean] :dry_run
3499
+ # Checks whether you have the required permissions for the action,
3500
+ # without actually making the request, and provides an error response.
3501
+ # If you have the required permissions, the error response is
3502
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3503
+ # @option options [Array<String>] :route_table_ids
3504
+ # The IDs of the route tables.
3506
3505
  # @option options [Array<Types::Filter>] :filters
3507
3506
  # The filters.
3508
3507
  #
@@ -3576,13 +3575,6 @@ module Aws::EC2
3576
3575
  # regardless of the tag value.
3577
3576
  #
3578
3577
  # * `vpc-id` - The ID of the VPC for the route table.
3579
- # @option options [Boolean] :dry_run
3580
- # Checks whether you have the required permissions for the action,
3581
- # without actually making the request, and provides an error response.
3582
- # If you have the required permissions, the error response is
3583
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3584
- # @option options [Array<String>] :route_table_ids
3585
- # The IDs of the route tables.
3586
3578
  # @return [RouteTable::Collection]
3587
3579
  def route_tables(options = {})
3588
3580
  batches = Enumerator.new do |y|
@@ -3616,17 +3608,32 @@ module Aws::EC2
3616
3608
  # @example Request syntax with placeholder values
3617
3609
  #
3618
3610
  # security_groups = ec2.security_groups({
3611
+ # group_ids: ["SecurityGroupId"],
3612
+ # group_names: ["SecurityGroupName"],
3613
+ # dry_run: false,
3619
3614
  # filters: [
3620
3615
  # {
3621
3616
  # name: "String",
3622
3617
  # values: ["String"],
3623
3618
  # },
3624
3619
  # ],
3625
- # group_ids: ["SecurityGroupId"],
3626
- # group_names: ["SecurityGroupName"],
3627
- # dry_run: false,
3628
3620
  # })
3629
3621
  # @param [Hash] options ({})
3622
+ # @option options [Array<String>] :group_ids
3623
+ # The IDs of the security groups. Required for security groups in a
3624
+ # nondefault VPC.
3625
+ #
3626
+ # Default: Describes all of your security groups.
3627
+ # @option options [Array<String>] :group_names
3628
+ # \[Default VPC\] The names of the security groups. You can specify
3629
+ # either the security group name or the security group ID.
3630
+ #
3631
+ # Default: Describes all of your security groups.
3632
+ # @option options [Boolean] :dry_run
3633
+ # Checks whether you have the required permissions for the action,
3634
+ # without actually making the request, and provides an error response.
3635
+ # If you have the required permissions, the error response is
3636
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3630
3637
  # @option options [Array<Types::Filter>] :filters
3631
3638
  # The filters. If using multiple filters for rules, the results include
3632
3639
  # security groups for which any combination of rules - not necessarily a
@@ -3709,21 +3716,6 @@ module Aws::EC2
3709
3716
  #
3710
3717
  # * `vpc-id` - The ID of the VPC specified when the security group was
3711
3718
  # created.
3712
- # @option options [Array<String>] :group_ids
3713
- # The IDs of the security groups. Required for security groups in a
3714
- # nondefault VPC.
3715
- #
3716
- # Default: Describes all of your security groups.
3717
- # @option options [Array<String>] :group_names
3718
- # \[Default VPC\] The names of the security groups. You can specify
3719
- # either the security group name or the security group ID.
3720
- #
3721
- # Default: Describes all of your security groups.
3722
- # @option options [Boolean] :dry_run
3723
- # Checks whether you have the required permissions for the action,
3724
- # without actually making the request, and provides an error response.
3725
- # If you have the required permissions, the error response is
3726
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3727
3719
  # @return [SecurityGroup::Collection]
3728
3720
  def security_groups(options = {})
3729
3721
  batches = Enumerator.new do |y|
@@ -3757,18 +3749,35 @@ module Aws::EC2
3757
3749
  # @example Request syntax with placeholder values
3758
3750
  #
3759
3751
  # snapshots = ec2.snapshots({
3752
+ # owner_ids: ["String"],
3753
+ # restorable_by_user_ids: ["String"],
3754
+ # snapshot_ids: ["SnapshotId"],
3755
+ # dry_run: false,
3760
3756
  # filters: [
3761
3757
  # {
3762
3758
  # name: "String",
3763
3759
  # values: ["String"],
3764
3760
  # },
3765
3761
  # ],
3766
- # owner_ids: ["String"],
3767
- # restorable_by_user_ids: ["String"],
3768
- # snapshot_ids: ["SnapshotId"],
3769
- # dry_run: false,
3770
3762
  # })
3771
3763
  # @param [Hash] options ({})
3764
+ # @option options [Array<String>] :owner_ids
3765
+ # Scopes the results to snapshots with the specified owners. You can
3766
+ # specify a combination of Amazon Web Services account IDs, `self`, and
3767
+ # `amazon`.
3768
+ # @option options [Array<String>] :restorable_by_user_ids
3769
+ # The IDs of the Amazon Web Services accounts that can create volumes
3770
+ # from the snapshot.
3771
+ # @option options [Array<String>] :snapshot_ids
3772
+ # The snapshot IDs.
3773
+ #
3774
+ # Default: Describes the snapshots for which you have create volume
3775
+ # permissions.
3776
+ # @option options [Boolean] :dry_run
3777
+ # Checks whether you have the required permissions for the action,
3778
+ # without actually making the request, and provides an error response.
3779
+ # If you have the required permissions, the error response is
3780
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3772
3781
  # @option options [Array<Types::Filter>] :filters
3773
3782
  # The filters.
3774
3783
  #
@@ -3811,23 +3820,6 @@ module Aws::EC2
3811
3820
  # * `volume-id` - The ID of the volume the snapshot is for.
3812
3821
  #
3813
3822
  # * `volume-size` - The size of the volume, in GiB.
3814
- # @option options [Array<String>] :owner_ids
3815
- # Scopes the results to snapshots with the specified owners. You can
3816
- # specify a combination of Amazon Web Services account IDs, `self`, and
3817
- # `amazon`.
3818
- # @option options [Array<String>] :restorable_by_user_ids
3819
- # The IDs of the Amazon Web Services accounts that can create volumes
3820
- # from the snapshot.
3821
- # @option options [Array<String>] :snapshot_ids
3822
- # The snapshot IDs.
3823
- #
3824
- # Default: Describes the snapshots for which you have create volume
3825
- # permissions.
3826
- # @option options [Boolean] :dry_run
3827
- # Checks whether you have the required permissions for the action,
3828
- # without actually making the request, and provides an error response.
3829
- # If you have the required permissions, the error response is
3830
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3831
3823
  # @return [Snapshot::Collection]
3832
3824
  def snapshots(options = {})
3833
3825
  batches = Enumerator.new do |y|
@@ -4002,16 +3994,24 @@ module Aws::EC2
4002
3994
  # @example Request syntax with placeholder values
4003
3995
  #
4004
3996
  # volumes = ec2.volumes({
3997
+ # volume_ids: ["VolumeId"],
3998
+ # dry_run: false,
4005
3999
  # filters: [
4006
4000
  # {
4007
4001
  # name: "String",
4008
4002
  # values: ["String"],
4009
4003
  # },
4010
4004
  # ],
4011
- # volume_ids: ["VolumeId"],
4012
- # dry_run: false,
4013
4005
  # })
4014
4006
  # @param [Hash] options ({})
4007
+ # @option options [Array<String>] :volume_ids
4008
+ # The volume IDs. If not specified, then all volumes are included in the
4009
+ # response.
4010
+ # @option options [Boolean] :dry_run
4011
+ # Checks whether you have the required permissions for the action,
4012
+ # without actually making the request, and provides an error response.
4013
+ # If you have the required permissions, the error response is
4014
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
4015
4015
  # @option options [Array<Types::Filter>] :filters
4016
4016
  # The filters.
4017
4017
  #
@@ -4066,14 +4066,6 @@ module Aws::EC2
4066
4066
  #
4067
4067
  # * `volume-type` - The Amazon EBS volume type (`gp2` \| `gp3` \| `io1`
4068
4068
  # \| `io2` \| `st1` \| `sc1`\| `standard`)
4069
- # @option options [Array<String>] :volume_ids
4070
- # The volume IDs. If not specified, then all volumes are included in the
4071
- # response.
4072
- # @option options [Boolean] :dry_run
4073
- # Checks whether you have the required permissions for the action,
4074
- # without actually making the request, and provides an error response.
4075
- # If you have the required permissions, the error response is
4076
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
4077
4069
  # @return [Volume::Collection]
4078
4070
  def volumes(options = {})
4079
4071
  batches = Enumerator.new do |y|
@@ -4107,17 +4099,26 @@ module Aws::EC2
4107
4099
  # @example Request syntax with placeholder values
4108
4100
  #
4109
4101
  # vpc_addresses = ec2.vpc_addresses({
4102
+ # public_ips: ["String"],
4103
+ # dry_run: false,
4110
4104
  # filters: [
4111
4105
  # {
4112
4106
  # name: "String",
4113
4107
  # values: ["String"],
4114
4108
  # },
4115
4109
  # ],
4116
- # public_ips: ["String"],
4117
4110
  # allocation_ids: ["AllocationId"],
4118
- # dry_run: false,
4119
4111
  # })
4120
4112
  # @param [Hash] options ({})
4113
+ # @option options [Array<String>] :public_ips
4114
+ # One or more Elastic IP addresses.
4115
+ #
4116
+ # Default: Describes all your Elastic IP addresses.
4117
+ # @option options [Boolean] :dry_run
4118
+ # Checks whether you have the required permissions for the action,
4119
+ # without actually making the request, and provides an error response.
4120
+ # If you have the required permissions, the error response is
4121
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
4121
4122
  # @option options [Array<Types::Filter>] :filters
4122
4123
  # One or more filters. Filter names and values are case-sensitive.
4123
4124
  #
@@ -4152,17 +4153,8 @@ module Aws::EC2
4152
4153
  # * `tag-key` - The key of a tag assigned to the resource. Use this
4153
4154
  # filter to find all resources assigned a tag with a specific key,
4154
4155
  # regardless of the tag value.
4155
- # @option options [Array<String>] :public_ips
4156
- # One or more Elastic IP addresses.
4157
- #
4158
- # Default: Describes all your Elastic IP addresses.
4159
4156
  # @option options [Array<String>] :allocation_ids
4160
4157
  # Information about the allocation IDs.
4161
- # @option options [Boolean] :dry_run
4162
- # Checks whether you have the required permissions for the action,
4163
- # without actually making the request, and provides an error response.
4164
- # If you have the required permissions, the error response is
4165
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
4166
4158
  # @return [VpcAddress::Collection]
4167
4159
  def vpc_addresses(options = {})
4168
4160
  batches = Enumerator.new do |y|
@@ -4198,16 +4190,25 @@ module Aws::EC2
4198
4190
  # @example Request syntax with placeholder values
4199
4191
  #
4200
4192
  # vpc_peering_connections = ec2.vpc_peering_connections({
4193
+ # dry_run: false,
4194
+ # vpc_peering_connection_ids: ["VpcPeeringConnectionId"],
4201
4195
  # filters: [
4202
4196
  # {
4203
4197
  # name: "String",
4204
4198
  # values: ["String"],
4205
4199
  # },
4206
4200
  # ],
4207
- # dry_run: false,
4208
- # vpc_peering_connection_ids: ["VpcPeeringConnectionId"],
4209
4201
  # })
4210
4202
  # @param [Hash] options ({})
4203
+ # @option options [Boolean] :dry_run
4204
+ # Checks whether you have the required permissions for the action,
4205
+ # without actually making the request, and provides an error response.
4206
+ # If you have the required permissions, the error response is
4207
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
4208
+ # @option options [Array<String>] :vpc_peering_connection_ids
4209
+ # The IDs of the VPC peering connections.
4210
+ #
4211
+ # Default: Describes all your VPC peering connections.
4211
4212
  # @option options [Array<Types::Filter>] :filters
4212
4213
  # The filters.
4213
4214
  #
@@ -4248,15 +4249,6 @@ module Aws::EC2
4248
4249
  # regardless of the tag value.
4249
4250
  #
4250
4251
  # * `vpc-peering-connection-id` - The ID of the VPC peering connection.
4251
- # @option options [Boolean] :dry_run
4252
- # Checks whether you have the required permissions for the action,
4253
- # without actually making the request, and provides an error response.
4254
- # If you have the required permissions, the error response is
4255
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
4256
- # @option options [Array<String>] :vpc_peering_connection_ids
4257
- # The IDs of the VPC peering connections.
4258
- #
4259
- # Default: Describes all your VPC peering connections.
4260
4252
  # @return [VpcPeeringConnection::Collection]
4261
4253
  def vpc_peering_connections(options = {})
4262
4254
  batches = Enumerator.new do |y|