aws-sdk-ec2 1.431.0 → 1.522.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 (68) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +465 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-ec2/classic_address.rb +26 -16
  5. data/lib/aws-sdk-ec2/client.rb +10867 -4155
  6. data/lib/aws-sdk-ec2/client_api.rb +2924 -510
  7. data/lib/aws-sdk-ec2/customizations/instance.rb +18 -1
  8. data/lib/aws-sdk-ec2/customizations/resource.rb +46 -3
  9. data/lib/aws-sdk-ec2/customizations/tag.rb +13 -0
  10. data/lib/aws-sdk-ec2/customizations.rb +0 -22
  11. data/lib/aws-sdk-ec2/dhcp_options.rb +12 -12
  12. data/lib/aws-sdk-ec2/endpoint_parameters.rb +9 -6
  13. data/lib/aws-sdk-ec2/endpoint_provider.rb +14 -18
  14. data/lib/aws-sdk-ec2/endpoints.rb +2 -8608
  15. data/lib/aws-sdk-ec2/image.rb +166 -95
  16. data/lib/aws-sdk-ec2/instance.rb +425 -356
  17. data/lib/aws-sdk-ec2/internet_gateway.rb +7 -7
  18. data/lib/aws-sdk-ec2/key_pair.rb +14 -14
  19. data/lib/aws-sdk-ec2/key_pair_info.rb +30 -30
  20. data/lib/aws-sdk-ec2/nat_gateway.rb +7 -8
  21. data/lib/aws-sdk-ec2/network_acl.rb +70 -70
  22. data/lib/aws-sdk-ec2/network_interface.rb +94 -78
  23. data/lib/aws-sdk-ec2/network_interface_association.rb +3 -3
  24. data/lib/aws-sdk-ec2/placement_group.rb +37 -19
  25. data/lib/aws-sdk-ec2/plugins/endpoints.rb +20 -1242
  26. data/lib/aws-sdk-ec2/resource.rb +944 -811
  27. data/lib/aws-sdk-ec2/route.rb +34 -34
  28. data/lib/aws-sdk-ec2/route_table.rb +44 -44
  29. data/lib/aws-sdk-ec2/route_table_association.rb +3 -3
  30. data/lib/aws-sdk-ec2/security_group.rb +212 -201
  31. data/lib/aws-sdk-ec2/snapshot.rb +169 -105
  32. data/lib/aws-sdk-ec2/subnet.rb +391 -359
  33. data/lib/aws-sdk-ec2/tag.rb +7 -4
  34. data/lib/aws-sdk-ec2/types.rb +13807 -4774
  35. data/lib/aws-sdk-ec2/volume.rb +157 -119
  36. data/lib/aws-sdk-ec2/vpc.rb +278 -224
  37. data/lib/aws-sdk-ec2/vpc_address.rb +31 -21
  38. data/lib/aws-sdk-ec2/vpc_peering_connection.rb +6 -6
  39. data/lib/aws-sdk-ec2.rb +40 -36
  40. data/sig/classic_address.rbs +105 -0
  41. data/sig/client.rbs +14622 -0
  42. data/sig/dhcp_options.rbs +84 -0
  43. data/sig/errors.rbs +16 -0
  44. data/sig/image.rbs +228 -0
  45. data/sig/instance.rbs +564 -0
  46. data/sig/internet_gateway.rbs +91 -0
  47. data/sig/key_pair.rbs +54 -0
  48. data/sig/key_pair_info.rbs +63 -0
  49. data/sig/nat_gateway.rbs +107 -0
  50. data/sig/network_acl.rbs +144 -0
  51. data/sig/network_interface.rbs +239 -0
  52. data/sig/network_interface_association.rbs +62 -0
  53. data/sig/placement_group.rbs +78 -0
  54. data/sig/resource.rbs +1042 -0
  55. data/sig/route.rbs +113 -0
  56. data/sig/route_table.rbs +117 -0
  57. data/sig/route_table_association.rbs +69 -0
  58. data/sig/security_group.rbs +311 -0
  59. data/sig/snapshot.rbs +204 -0
  60. data/sig/subnet.rbs +436 -0
  61. data/sig/tag.rbs +63 -0
  62. data/sig/types.rbs +16812 -0
  63. data/sig/volume.rbs +210 -0
  64. data/sig/vpc.rbs +404 -0
  65. data/sig/vpc_address.rbs +101 -0
  66. data/sig/vpc_peering_connection.rbs +84 -0
  67. data/sig/waiters.rbs +664 -0
  68. metadata +44 -18
@@ -35,24 +35,6 @@ module Aws::EC2
35
35
  end
36
36
  alias :vpc_id :id
37
37
 
38
- # The primary IPv4 CIDR block for the VPC.
39
- # @return [String]
40
- def cidr_block
41
- data[:cidr_block]
42
- end
43
-
44
- # The ID of the set of DHCP options you've associated with the VPC.
45
- # @return [String]
46
- def dhcp_options_id
47
- data[:dhcp_options_id]
48
- end
49
-
50
- # The current state of the VPC.
51
- # @return [String]
52
- def state
53
- data[:state]
54
- end
55
-
56
38
  # The ID of the Amazon Web Services account that owns the VPC.
57
39
  # @return [String]
58
40
  def owner_id
@@ -83,12 +65,41 @@ module Aws::EC2
83
65
  data[:is_default]
84
66
  end
85
67
 
68
+ # @return [Types::VpcEncryptionControl]
69
+ def encryption_control
70
+ data[:encryption_control]
71
+ end
72
+
86
73
  # Any tags assigned to the VPC.
87
74
  # @return [Array<Types::Tag>]
88
75
  def tags
89
76
  data[:tags]
90
77
  end
91
78
 
79
+ # The state of VPC Block Public Access (BPA).
80
+ # @return [Types::BlockPublicAccessStates]
81
+ def block_public_access_states
82
+ data[:block_public_access_states]
83
+ end
84
+
85
+ # The current state of the VPC.
86
+ # @return [String]
87
+ def state
88
+ data[:state]
89
+ end
90
+
91
+ # The primary IPv4 CIDR block for the VPC.
92
+ # @return [String]
93
+ def cidr_block
94
+ data[:cidr_block]
95
+ end
96
+
97
+ # The ID of the set of DHCP options you've associated with the VPC.
98
+ # @return [String]
99
+ def dhcp_options_id
100
+ data[:dhcp_options_id]
101
+ end
102
+
92
103
  # @!endgroup
93
104
 
94
105
  # @return [Client]
@@ -103,7 +114,7 @@ module Aws::EC2
103
114
  #
104
115
  # @return [self]
105
116
  def load
106
- resp = Aws::Plugins::UserAgent.feature('resource') do
117
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
107
118
  @client.describe_vpcs(vpc_ids: [@id])
108
119
  end
109
120
  @data = resp.vpcs[0]
@@ -150,7 +161,7 @@ module Aws::EC2
150
161
  options, params = separate_params_and_options(options)
151
162
  waiter = Waiters::VpcAvailable.new(options)
152
163
  yield_waiter_and_warn(waiter, &block) if block_given?
153
- Aws::Plugins::UserAgent.feature('resource') do
164
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
154
165
  waiter.wait(params.merge(vpc_ids: [@id]))
155
166
  end
156
167
  Vpc.new({
@@ -169,7 +180,7 @@ module Aws::EC2
169
180
  options, params = separate_params_and_options(options)
170
181
  waiter = Waiters::VpcExists.new(options)
171
182
  yield_waiter_and_warn(waiter, &block) if block_given?
172
- Aws::Plugins::UserAgent.feature('resource') do
183
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
173
184
  waiter.wait(params.merge(vpc_ids: [@id]))
174
185
  end
175
186
  Vpc.new({
@@ -272,7 +283,7 @@ module Aws::EC2
272
283
  :retry
273
284
  end
274
285
  end
275
- Aws::Plugins::UserAgent.feature('resource') do
286
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
276
287
  Aws::Waiters::Waiter.new(options).wait({})
277
288
  end
278
289
  end
@@ -297,7 +308,7 @@ module Aws::EC2
297
308
  # @return [EmptyStructure]
298
309
  def associate_dhcp_options(options = {})
299
310
  options = options.merge(vpc_id: @id)
300
- resp = Aws::Plugins::UserAgent.feature('resource') do
311
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
301
312
  @client.associate_dhcp_options(options)
302
313
  end
303
314
  resp.data
@@ -307,8 +318,8 @@ module Aws::EC2
307
318
  #
308
319
  # vpc.attach_classic_link_instance({
309
320
  # dry_run: false,
310
- # groups: ["SecurityGroupId"], # required
311
321
  # instance_id: "InstanceId", # required
322
+ # groups: ["SecurityGroupId"], # required
312
323
  # })
313
324
  # @param [Hash] options ({})
314
325
  # @option options [Boolean] :dry_run
@@ -316,15 +327,15 @@ module Aws::EC2
316
327
  # without actually making the request, and provides an error response.
317
328
  # If you have the required permissions, the error response is
318
329
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
330
+ # @option options [required, String] :instance_id
331
+ # The ID of the EC2-Classic instance.
319
332
  # @option options [required, Array<String>] :groups
320
333
  # The IDs of the security groups. You cannot specify security groups
321
334
  # from a different VPC.
322
- # @option options [required, String] :instance_id
323
- # The ID of the EC2-Classic instance.
324
335
  # @return [Types::AttachClassicLinkVpcResult]
325
336
  def attach_classic_link_instance(options = {})
326
337
  options = options.merge(vpc_id: @id)
327
- resp = Aws::Plugins::UserAgent.feature('resource') do
338
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
328
339
  @client.attach_classic_link_vpc(options)
329
340
  end
330
341
  resp.data
@@ -347,7 +358,7 @@ module Aws::EC2
347
358
  # @return [EmptyStructure]
348
359
  def attach_internet_gateway(options = {})
349
360
  options = options.merge(vpc_id: @id)
350
- resp = Aws::Plugins::UserAgent.feature('resource') do
361
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
351
362
  @client.attach_internet_gateway(options)
352
363
  end
353
364
  resp.data
@@ -356,10 +367,9 @@ module Aws::EC2
356
367
  # @example Request syntax with placeholder values
357
368
  #
358
369
  # networkacl = vpc.create_network_acl({
359
- # dry_run: false,
360
370
  # tag_specifications: [
361
371
  # {
362
- # 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
372
+ # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, declarative-policies-report, 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, outpost-lag, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, service-link-virtual-interface, 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, route-server, route-server-endpoint, route-server-peer, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, verified-access-endpoint-target, ipam-external-resource-verification-token
363
373
  # tags: [
364
374
  # {
365
375
  # key: "String",
@@ -368,19 +378,29 @@ module Aws::EC2
368
378
  # ],
369
379
  # },
370
380
  # ],
381
+ # client_token: "String",
382
+ # dry_run: false,
371
383
  # })
372
384
  # @param [Hash] options ({})
385
+ # @option options [Array<Types::TagSpecification>] :tag_specifications
386
+ # The tags to assign to the network ACL.
387
+ # @option options [String] :client_token
388
+ # Unique, case-sensitive identifier that you provide to ensure the
389
+ # idempotency of the request. For more information, see [Ensuring
390
+ # idempotency][1].
391
+ #
392
+ #
393
+ #
394
+ # [1]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html
373
395
  # @option options [Boolean] :dry_run
374
396
  # Checks whether you have the required permissions for the action,
375
397
  # without actually making the request, and provides an error response.
376
398
  # If you have the required permissions, the error response is
377
399
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
378
- # @option options [Array<Types::TagSpecification>] :tag_specifications
379
- # The tags to assign to the network ACL.
380
400
  # @return [NetworkAcl]
381
401
  def create_network_acl(options = {})
382
402
  options = options.merge(vpc_id: @id)
383
- resp = Aws::Plugins::UserAgent.feature('resource') do
403
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
384
404
  @client.create_network_acl(options)
385
405
  end
386
406
  NetworkAcl.new(
@@ -393,10 +413,9 @@ module Aws::EC2
393
413
  # @example Request syntax with placeholder values
394
414
  #
395
415
  # routetable = vpc.create_route_table({
396
- # dry_run: false,
397
416
  # tag_specifications: [
398
417
  # {
399
- # 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
418
+ # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, declarative-policies-report, 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, outpost-lag, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, service-link-virtual-interface, 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, route-server, route-server-endpoint, route-server-peer, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, verified-access-endpoint-target, ipam-external-resource-verification-token
400
419
  # tags: [
401
420
  # {
402
421
  # key: "String",
@@ -405,19 +424,29 @@ module Aws::EC2
405
424
  # ],
406
425
  # },
407
426
  # ],
427
+ # client_token: "String",
428
+ # dry_run: false,
408
429
  # })
409
430
  # @param [Hash] options ({})
431
+ # @option options [Array<Types::TagSpecification>] :tag_specifications
432
+ # The tags to assign to the route table.
433
+ # @option options [String] :client_token
434
+ # Unique, case-sensitive identifier that you provide to ensure the
435
+ # idempotency of the request. For more information, see [Ensuring
436
+ # idempotency][1].
437
+ #
438
+ #
439
+ #
440
+ # [1]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html
410
441
  # @option options [Boolean] :dry_run
411
442
  # Checks whether you have the required permissions for the action,
412
443
  # without actually making the request, and provides an error response.
413
444
  # If you have the required permissions, the error response is
414
445
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
415
- # @option options [Array<Types::TagSpecification>] :tag_specifications
416
- # The tags to assign to the route table.
417
446
  # @return [RouteTable]
418
447
  def create_route_table(options = {})
419
448
  options = options.merge(vpc_id: @id)
420
- resp = Aws::Plugins::UserAgent.feature('resource') do
449
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
421
450
  @client.create_route_table(options)
422
451
  end
423
452
  RouteTable.new(
@@ -434,7 +463,7 @@ module Aws::EC2
434
463
  # group_name: "String", # required
435
464
  # tag_specifications: [
436
465
  # {
437
- # 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
466
+ # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, declarative-policies-report, 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, outpost-lag, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, service-link-virtual-interface, 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, route-server, route-server-endpoint, route-server-peer, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, verified-access-endpoint-target, ipam-external-resource-verification-token
438
467
  # tags: [
439
468
  # {
440
469
  # key: "String",
@@ -452,14 +481,15 @@ module Aws::EC2
452
481
  # Constraints: Up to 255 characters in length
453
482
  #
454
483
  # Valid characters: a-z, A-Z, 0-9, spaces, and
455
- # .\_-:/()#,@\[\]+=&amp;;\\\{\\}!$*
484
+ # .\_-:/()#,@\[\]+=&amp;;\{}!$*
456
485
  # @option options [required, String] :group_name
457
- # The name of the security group.
486
+ # The name of the security group. Names are case-insensitive and must be
487
+ # unique within the VPC.
458
488
  #
459
- # Constraints: Up to 255 characters in length. Cannot start with `sg-`.
489
+ # Constraints: Up to 255 characters in length. Can't start with `sg-`.
460
490
  #
461
491
  # Valid characters: a-z, A-Z, 0-9, spaces, and
462
- # .\_-:/()#,@\[\]+=&amp;;\\\{\\}!$*
492
+ # .\_-:/()#,@\[\]+=&amp;;\{}!$*
463
493
  # @option options [Array<Types::TagSpecification>] :tag_specifications
464
494
  # The tags to assign to the security group.
465
495
  # @option options [Boolean] :dry_run
@@ -470,7 +500,7 @@ module Aws::EC2
470
500
  # @return [SecurityGroup]
471
501
  def create_security_group(options = {})
472
502
  options = options.merge(vpc_id: @id)
473
- resp = Aws::Plugins::UserAgent.feature('resource') do
503
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
474
504
  @client.create_security_group(options)
475
505
  end
476
506
  SecurityGroup.new(
@@ -484,7 +514,7 @@ module Aws::EC2
484
514
  # subnet = vpc.create_subnet({
485
515
  # tag_specifications: [
486
516
  # {
487
- # 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
517
+ # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, declarative-policies-report, 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, outpost-lag, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, service-link-virtual-interface, 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, route-server, route-server-endpoint, route-server-peer, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, verified-access-endpoint-target, ipam-external-resource-verification-token
488
518
  # tags: [
489
519
  # {
490
520
  # key: "String",
@@ -498,12 +528,12 @@ module Aws::EC2
498
528
  # cidr_block: "String",
499
529
  # ipv_6_cidr_block: "String",
500
530
  # outpost_arn: "String",
501
- # dry_run: false,
502
531
  # ipv_6_native: false,
503
532
  # ipv_4_ipam_pool_id: "IpamPoolId",
504
533
  # ipv_4_netmask_length: 1,
505
534
  # ipv_6_ipam_pool_id: "IpamPoolId",
506
535
  # ipv_6_netmask_length: 1,
536
+ # dry_run: false,
507
537
  # })
508
538
  # @param [Hash] options ({})
509
539
  # @option options [Array<Types::TagSpecification>] :tag_specifications
@@ -517,14 +547,14 @@ module Aws::EC2
517
547
  #
518
548
  # To create a subnet in a Local Zone, set this value to the Local Zone
519
549
  # ID, for example `us-west-2-lax-1a`. For information about the Regions
520
- # that support Local Zones, see [Local Zones locations][1].
550
+ # that support Local Zones, see [Available Local Zones][1].
521
551
  #
522
552
  # To create a subnet in an Outpost, set this value to the Availability
523
553
  # Zone for the Outpost and specify the Outpost ARN.
524
554
  #
525
555
  #
526
556
  #
527
- # [1]: http://aws.amazon.com/about-aws/global-infrastructure/localzones/locations/
557
+ # [1]: https://docs.aws.amazon.com/local-zones/latest/ug/available-local-zones.html
528
558
  # @option options [String] :availability_zone_id
529
559
  # The AZ ID or the Local Zone ID of the subnet.
530
560
  # @option options [String] :cidr_block
@@ -541,11 +571,6 @@ module Aws::EC2
541
571
  # The Amazon Resource Name (ARN) of the Outpost. If you specify an
542
572
  # Outpost ARN, you must also specify the Availability Zone of the
543
573
  # Outpost subnet.
544
- # @option options [Boolean] :dry_run
545
- # Checks whether you have the required permissions for the action,
546
- # without actually making the request, and provides an error response.
547
- # If you have the required permissions, the error response is
548
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
549
574
  # @option options [Boolean] :ipv_6_native
550
575
  # Indicates whether to create an IPv6 only subnet.
551
576
  # @option options [String] :ipv_4_ipam_pool_id
@@ -556,10 +581,15 @@ module Aws::EC2
556
581
  # An IPv6 IPAM pool ID for the subnet.
557
582
  # @option options [Integer] :ipv_6_netmask_length
558
583
  # An IPv6 netmask length for the subnet.
584
+ # @option options [Boolean] :dry_run
585
+ # Checks whether you have the required permissions for the action,
586
+ # without actually making the request, and provides an error response.
587
+ # If you have the required permissions, the error response is
588
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
559
589
  # @return [Subnet]
560
590
  def create_subnet(options = {})
561
591
  options = options.merge(vpc_id: @id)
562
- resp = Aws::Plugins::UserAgent.feature('resource') do
592
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
563
593
  @client.create_subnet(options)
564
594
  end
565
595
  Subnet.new(
@@ -594,7 +624,7 @@ module Aws::EC2
594
624
  def create_tags(options = {})
595
625
  batch = []
596
626
  options = Aws::Util.deep_merge(options, resources: [@id])
597
- resp = Aws::Plugins::UserAgent.feature('resource') do
627
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
598
628
  @client.create_tags(options)
599
629
  end
600
630
  options[:tags].each do |t|
@@ -641,7 +671,7 @@ module Aws::EC2
641
671
  def delete_tags(options = {})
642
672
  batch = []
643
673
  options = Aws::Util.deep_merge(options, resources: [@id])
644
- resp = Aws::Plugins::UserAgent.feature('resource') do
674
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
645
675
  @client.delete_tags(options)
646
676
  end
647
677
  options[:tags].each do |t|
@@ -669,7 +699,7 @@ module Aws::EC2
669
699
  # @return [EmptyStructure]
670
700
  def delete(options = {})
671
701
  options = options.merge(vpc_id: @id)
672
- resp = Aws::Plugins::UserAgent.feature('resource') do
702
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
673
703
  @client.delete_vpc(options)
674
704
  end
675
705
  resp.data
@@ -692,7 +722,7 @@ module Aws::EC2
692
722
  # @return [Types::DescribeVpcAttributeResult]
693
723
  def describe_attribute(options = {})
694
724
  options = options.merge(vpc_id: @id)
695
- resp = Aws::Plugins::UserAgent.feature('resource') do
725
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
696
726
  @client.describe_vpc_attribute(options)
697
727
  end
698
728
  resp.data
@@ -715,7 +745,7 @@ module Aws::EC2
715
745
  # @return [Types::DetachClassicLinkVpcResult]
716
746
  def detach_classic_link_instance(options = {})
717
747
  options = options.merge(vpc_id: @id)
718
- resp = Aws::Plugins::UserAgent.feature('resource') do
748
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
719
749
  @client.detach_classic_link_vpc(options)
720
750
  end
721
751
  resp.data
@@ -738,7 +768,7 @@ module Aws::EC2
738
768
  # @return [EmptyStructure]
739
769
  def detach_internet_gateway(options = {})
740
770
  options = options.merge(vpc_id: @id)
741
- resp = Aws::Plugins::UserAgent.feature('resource') do
771
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
742
772
  @client.detach_internet_gateway(options)
743
773
  end
744
774
  resp.data
@@ -758,7 +788,7 @@ module Aws::EC2
758
788
  # @return [Types::DisableVpcClassicLinkResult]
759
789
  def disable_classic_link(options = {})
760
790
  options = options.merge(vpc_id: @id)
761
- resp = Aws::Plugins::UserAgent.feature('resource') do
791
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
762
792
  @client.disable_vpc_classic_link(options)
763
793
  end
764
794
  resp.data
@@ -778,7 +808,7 @@ module Aws::EC2
778
808
  # @return [Types::EnableVpcClassicLinkResult]
779
809
  def enable_classic_link(options = {})
780
810
  options = options.merge(vpc_id: @id)
781
- resp = Aws::Plugins::UserAgent.feature('resource') do
811
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
782
812
  @client.enable_vpc_classic_link(options)
783
813
  end
784
814
  resp.data
@@ -822,7 +852,7 @@ module Aws::EC2
822
852
  # @return [EmptyStructure]
823
853
  def modify_attribute(options = {})
824
854
  options = options.merge(vpc_id: @id)
825
- resp = Aws::Plugins::UserAgent.feature('resource') do
855
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
826
856
  @client.modify_vpc_attribute(options)
827
857
  end
828
858
  resp.data
@@ -831,13 +861,10 @@ module Aws::EC2
831
861
  # @example Request syntax with placeholder values
832
862
  #
833
863
  # vpcpeeringconnection = vpc.request_vpc_peering_connection({
834
- # dry_run: false,
835
- # peer_owner_id: "String",
836
- # peer_vpc_id: "String",
837
864
  # peer_region: "String",
838
865
  # tag_specifications: [
839
866
  # {
840
- # 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
867
+ # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, declarative-policies-report, 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, outpost-lag, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, service-link-virtual-interface, 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, route-server, route-server-endpoint, route-server-peer, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, verified-access-endpoint-target, ipam-external-resource-verification-token
841
868
  # tags: [
842
869
  # {
843
870
  # key: "String",
@@ -846,31 +873,34 @@ module Aws::EC2
846
873
  # ],
847
874
  # },
848
875
  # ],
876
+ # dry_run: false,
877
+ # peer_vpc_id: "String",
878
+ # peer_owner_id: "String",
849
879
  # })
850
880
  # @param [Hash] options ({})
881
+ # @option options [String] :peer_region
882
+ # The Region code for the accepter VPC, if the accepter VPC is located
883
+ # in a Region other than the Region in which you make the request.
884
+ #
885
+ # Default: The Region in which you make the request.
886
+ # @option options [Array<Types::TagSpecification>] :tag_specifications
887
+ # The tags to assign to the peering connection.
851
888
  # @option options [Boolean] :dry_run
852
889
  # Checks whether you have the required permissions for the action,
853
890
  # without actually making the request, and provides an error response.
854
891
  # If you have the required permissions, the error response is
855
892
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
856
- # @option options [String] :peer_owner_id
857
- # The Amazon Web Services account ID of the owner of the accepter VPC.
858
- #
859
- # Default: Your Amazon Web Services account ID
860
893
  # @option options [String] :peer_vpc_id
861
894
  # The ID of the VPC with which you are creating the VPC peering
862
895
  # connection. You must specify this parameter in the request.
863
- # @option options [String] :peer_region
864
- # The Region code for the accepter VPC, if the accepter VPC is located
865
- # in a Region other than the Region in which you make the request.
896
+ # @option options [String] :peer_owner_id
897
+ # The Amazon Web Services account ID of the owner of the accepter VPC.
866
898
  #
867
- # Default: The Region in which you make the request.
868
- # @option options [Array<Types::TagSpecification>] :tag_specifications
869
- # The tags to assign to the peering connection.
899
+ # Default: Your Amazon Web Services account ID
870
900
  # @return [VpcPeeringConnection]
871
901
  def request_vpc_peering_connection(options = {})
872
902
  options = options.merge(vpc_id: @id)
873
- resp = Aws::Plugins::UserAgent.feature('resource') do
903
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
874
904
  @client.create_vpc_peering_connection(options)
875
905
  end
876
906
  VpcPeeringConnection.new(
@@ -885,16 +915,25 @@ module Aws::EC2
885
915
  # @example Request syntax with placeholder values
886
916
  #
887
917
  # accepted_vpc_peering_connections = vpc.accepted_vpc_peering_connections({
918
+ # dry_run: false,
919
+ # vpc_peering_connection_ids: ["VpcPeeringConnectionId"],
888
920
  # filters: [
889
921
  # {
890
922
  # name: "String",
891
923
  # values: ["String"],
892
924
  # },
893
925
  # ],
894
- # dry_run: false,
895
- # vpc_peering_connection_ids: ["VpcPeeringConnectionId"],
896
926
  # })
897
927
  # @param [Hash] options ({})
928
+ # @option options [Boolean] :dry_run
929
+ # Checks whether you have the required permissions for the action,
930
+ # without actually making the request, and provides an error response.
931
+ # If you have the required permissions, the error response is
932
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
933
+ # @option options [Array<String>] :vpc_peering_connection_ids
934
+ # The IDs of the VPC peering connections.
935
+ #
936
+ # Default: Describes all your VPC peering connections.
898
937
  # @option options [Array<Types::Filter>] :filters
899
938
  # The filters.
900
939
  #
@@ -924,26 +963,17 @@ module Aws::EC2
924
963
  # * `status-message` - A message that provides more information about
925
964
  # the status of the VPC peering connection, if applicable.
926
965
  #
927
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
928
- # the resource. Use the tag key in the filter name and the tag value
929
- # as the filter value. For example, to find all resources that have a
930
- # tag with the key `Owner` and the value `TeamA`, specify `tag:Owner`
931
- # for the filter name and `TeamA` for the filter value.
966
+ # * `tag` - The key/value combination of a tag assigned to the resource.
967
+ # Use the tag key in the filter name and the tag value as the filter
968
+ # value. For example, to find all resources that have a tag with the
969
+ # key `Owner` and the value `TeamA`, specify `tag:Owner` for the
970
+ # filter name and `TeamA` for the filter value.
932
971
  #
933
972
  # * `tag-key` - The key of a tag assigned to the resource. Use this
934
973
  # filter to find all resources assigned a tag with a specific key,
935
974
  # regardless of the tag value.
936
975
  #
937
976
  # * `vpc-peering-connection-id` - The ID of the VPC peering connection.
938
- # @option options [Boolean] :dry_run
939
- # Checks whether you have the required permissions for the action,
940
- # without actually making the request, and provides an error response.
941
- # If you have the required permissions, the error response is
942
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
943
- # @option options [Array<String>] :vpc_peering_connection_ids
944
- # The IDs of the VPC peering connections.
945
- #
946
- # Default: Describes all your VPC peering connections.
947
977
  # @return [VpcPeeringConnection::Collection]
948
978
  def accepted_vpc_peering_connections(options = {})
949
979
  batches = Enumerator.new do |y|
@@ -951,7 +981,7 @@ module Aws::EC2
951
981
  name: "accepter-vpc-info.vpc-id",
952
982
  values: [@id]
953
983
  }])
954
- resp = Aws::Plugins::UserAgent.feature('resource') do
984
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
955
985
  @client.describe_vpc_peering_connections(options)
956
986
  end
957
987
  resp.each_page do |page|
@@ -984,16 +1014,25 @@ module Aws::EC2
984
1014
  # @example Request syntax with placeholder values
985
1015
  #
986
1016
  # instances = vpc.instances({
1017
+ # instance_ids: ["InstanceId"],
1018
+ # dry_run: false,
987
1019
  # filters: [
988
1020
  # {
989
1021
  # name: "String",
990
1022
  # values: ["String"],
991
1023
  # },
992
1024
  # ],
993
- # instance_ids: ["InstanceId"],
994
- # dry_run: false,
995
1025
  # })
996
1026
  # @param [Hash] options ({})
1027
+ # @option options [Array<String>] :instance_ids
1028
+ # The instance IDs.
1029
+ #
1030
+ # Default: Describes all your instances.
1031
+ # @option options [Boolean] :dry_run
1032
+ # Checks whether you have the required permissions for the operation,
1033
+ # without actually making the request, and provides an error response.
1034
+ # If you have the required permissions, the error response is
1035
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
997
1036
  # @option options [Array<Types::Filter>] :filters
998
1037
  # The filters.
999
1038
  #
@@ -1069,9 +1108,6 @@ module Aws::EC2
1069
1108
  # * `iam-instance-profile.id` - The instance profile associated with the
1070
1109
  # instance. Specified as an ID.
1071
1110
  #
1072
- # * `iam-instance-profile.name` - The instance profile associated with
1073
- # the instance. Specified as an name.
1074
- #
1075
1111
  # * `image-id` - The ID of the image used to launch the instance.
1076
1112
  #
1077
1113
  # * `instance-id` - The ID of the instance.
@@ -1262,6 +1298,13 @@ module Aws::EC2
1262
1298
  # * `network-interface.network-interface-id` - The ID of the network
1263
1299
  # interface.
1264
1300
  #
1301
+ # * `network-interface.operator.managed` - A Boolean that indicates
1302
+ # whether the instance has a managed network interface.
1303
+ #
1304
+ # * `network-interface.operator.principal` - The principal that manages
1305
+ # the network interface. Only valid for instances with managed network
1306
+ # interfaces, where `managed` is `true`.
1307
+ #
1265
1308
  # * `network-interface.outpost-arn` - The ARN of the Outpost.
1266
1309
  #
1267
1310
  # * `network-interface.owner-id` - The ID of the owner of the network
@@ -1301,6 +1344,16 @@ module Aws::EC2
1301
1344
  # * `network-interface.vpc-id` - The ID of the VPC for the network
1302
1345
  # interface.
1303
1346
  #
1347
+ # * `network-performance-options.bandwidth-weighting` - Where the
1348
+ # performance boost is applied, if applicable. Valid values:
1349
+ # `default`, `vpc-1`, `ebs-1`.
1350
+ #
1351
+ # * `operator.managed` - A Boolean that indicates whether this is a
1352
+ # managed instance.
1353
+ #
1354
+ # * `operator.principal` - The principal that manages the instance. Only
1355
+ # valid for managed instances, where `managed` is `true`.
1356
+ #
1304
1357
  # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost.
1305
1358
  #
1306
1359
  # * `owner-id` - The Amazon Web Services account ID of the instance
@@ -1341,6 +1394,10 @@ module Aws::EC2
1341
1394
  # (`ip-name` \| `resource-name`).
1342
1395
  #
1343
1396
  # * `private-ip-address` - The private IPv4 address of the instance.
1397
+ # This can only be used to filter by the primary IP address of the
1398
+ # network interface attached to the instance. To filter by additional
1399
+ # IP addresses assigned to the network interface, use the filter
1400
+ # `network-interface.addresses.private-ip-address`.
1344
1401
  #
1345
1402
  # * `product-code` - The product code associated with the AMI used to
1346
1403
  # launch the instance.
@@ -1419,15 +1476,6 @@ module Aws::EC2
1419
1476
  # (`paravirtual` \| `hvm`).
1420
1477
  #
1421
1478
  # * `vpc-id` - The ID of the VPC that the instance is running in.
1422
- # @option options [Array<String>] :instance_ids
1423
- # The instance IDs.
1424
- #
1425
- # Default: Describes all your instances.
1426
- # @option options [Boolean] :dry_run
1427
- # Checks whether you have the required permissions for the action,
1428
- # without actually making the request, and provides an error response.
1429
- # If you have the required permissions, the error response is
1430
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1431
1479
  # @return [Instance::Collection]
1432
1480
  def instances(options = {})
1433
1481
  batches = Enumerator.new do |y|
@@ -1435,7 +1483,7 @@ module Aws::EC2
1435
1483
  name: "vpc-id",
1436
1484
  values: [@id]
1437
1485
  }])
1438
- resp = Aws::Plugins::UserAgent.feature('resource') do
1486
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
1439
1487
  @client.describe_instances(options)
1440
1488
  end
1441
1489
  resp.each_page do |page|
@@ -1458,16 +1506,25 @@ module Aws::EC2
1458
1506
  # @example Request syntax with placeholder values
1459
1507
  #
1460
1508
  # internet_gateways = vpc.internet_gateways({
1509
+ # dry_run: false,
1510
+ # internet_gateway_ids: ["InternetGatewayId"],
1461
1511
  # filters: [
1462
1512
  # {
1463
1513
  # name: "String",
1464
1514
  # values: ["String"],
1465
1515
  # },
1466
1516
  # ],
1467
- # dry_run: false,
1468
- # internet_gateway_ids: ["InternetGatewayId"],
1469
1517
  # })
1470
1518
  # @param [Hash] options ({})
1519
+ # @option options [Boolean] :dry_run
1520
+ # Checks whether you have the required permissions for the action,
1521
+ # without actually making the request, and provides an error response.
1522
+ # If you have the required permissions, the error response is
1523
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1524
+ # @option options [Array<String>] :internet_gateway_ids
1525
+ # The IDs of the internet gateways.
1526
+ #
1527
+ # Default: Describes all your internet gateways.
1471
1528
  # @option options [Array<Types::Filter>] :filters
1472
1529
  # The filters.
1473
1530
  #
@@ -1482,24 +1539,15 @@ module Aws::EC2
1482
1539
  # * `owner-id` - The ID of the Amazon Web Services account that owns the
1483
1540
  # internet gateway.
1484
1541
  #
1485
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
1486
- # the resource. Use the tag key in the filter name and the tag value
1487
- # as the filter value. For example, to find all resources that have a
1488
- # tag with the key `Owner` and the value `TeamA`, specify `tag:Owner`
1489
- # for the filter name and `TeamA` for the filter value.
1542
+ # * `tag` - The key/value combination of a tag assigned to the resource.
1543
+ # Use the tag key in the filter name and the tag value as the filter
1544
+ # value. For example, to find all resources that have a tag with the
1545
+ # key `Owner` and the value `TeamA`, specify `tag:Owner` for the
1546
+ # filter name and `TeamA` for the filter value.
1490
1547
  #
1491
1548
  # * `tag-key` - The key of a tag assigned to the resource. Use this
1492
1549
  # filter to find all resources assigned a tag with a specific key,
1493
1550
  # regardless of the tag value.
1494
- # @option options [Boolean] :dry_run
1495
- # Checks whether you have the required permissions for the action,
1496
- # without actually making the request, and provides an error response.
1497
- # If you have the required permissions, the error response is
1498
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1499
- # @option options [Array<String>] :internet_gateway_ids
1500
- # The IDs of the internet gateways.
1501
- #
1502
- # Default: Describes all your internet gateways.
1503
1551
  # @return [InternetGateway::Collection]
1504
1552
  def internet_gateways(options = {})
1505
1553
  batches = Enumerator.new do |y|
@@ -1507,7 +1555,7 @@ module Aws::EC2
1507
1555
  name: "attachment.vpc-id",
1508
1556
  values: [@id]
1509
1557
  }])
1510
- resp = Aws::Plugins::UserAgent.feature('resource') do
1558
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
1511
1559
  @client.describe_internet_gateways(options)
1512
1560
  end
1513
1561
  resp.each_page do |page|
@@ -1528,16 +1576,23 @@ module Aws::EC2
1528
1576
  # @example Request syntax with placeholder values
1529
1577
  #
1530
1578
  # network_acls = vpc.network_acls({
1579
+ # dry_run: false,
1580
+ # network_acl_ids: ["NetworkAclId"],
1531
1581
  # filters: [
1532
1582
  # {
1533
1583
  # name: "String",
1534
1584
  # values: ["String"],
1535
1585
  # },
1536
1586
  # ],
1537
- # dry_run: false,
1538
- # network_acl_ids: ["NetworkAclId"],
1539
1587
  # })
1540
1588
  # @param [Hash] options ({})
1589
+ # @option options [Boolean] :dry_run
1590
+ # Checks whether you have the required permissions for the action,
1591
+ # without actually making the request, and provides an error response.
1592
+ # If you have the required permissions, the error response is
1593
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1594
+ # @option options [Array<String>] :network_acl_ids
1595
+ # The IDs of the network ACLs.
1541
1596
  # @option options [Array<Types::Filter>] :filters
1542
1597
  # The filters.
1543
1598
  #
@@ -1584,26 +1639,17 @@ module Aws::EC2
1584
1639
  # * `owner-id` - The ID of the Amazon Web Services account that owns the
1585
1640
  # network ACL.
1586
1641
  #
1587
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
1588
- # the resource. Use the tag key in the filter name and the tag value
1589
- # as the filter value. For example, to find all resources that have a
1590
- # tag with the key `Owner` and the value `TeamA`, specify `tag:Owner`
1591
- # for the filter name and `TeamA` for the filter value.
1642
+ # * `tag` - The key/value combination of a tag assigned to the resource.
1643
+ # Use the tag key in the filter name and the tag value as the filter
1644
+ # value. For example, to find all resources that have a tag with the
1645
+ # key `Owner` and the value `TeamA`, specify `tag:Owner` for the
1646
+ # filter name and `TeamA` for the filter value.
1592
1647
  #
1593
1648
  # * `tag-key` - The key of a tag assigned to the resource. Use this
1594
1649
  # filter to find all resources assigned a tag with a specific key,
1595
1650
  # regardless of the tag value.
1596
1651
  #
1597
1652
  # * `vpc-id` - The ID of the VPC for the network ACL.
1598
- # @option options [Boolean] :dry_run
1599
- # Checks whether you have the required permissions for the action,
1600
- # without actually making the request, and provides an error response.
1601
- # If you have the required permissions, the error response is
1602
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1603
- # @option options [Array<String>] :network_acl_ids
1604
- # The IDs of the network ACLs.
1605
- #
1606
- # Default: Describes all your network ACLs.
1607
1653
  # @return [NetworkAcl::Collection]
1608
1654
  def network_acls(options = {})
1609
1655
  batches = Enumerator.new do |y|
@@ -1611,7 +1657,7 @@ module Aws::EC2
1611
1657
  name: "vpc-id",
1612
1658
  values: [@id]
1613
1659
  }])
1614
- resp = Aws::Plugins::UserAgent.feature('resource') do
1660
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
1615
1661
  @client.describe_network_acls(options)
1616
1662
  end
1617
1663
  resp.each_page do |page|
@@ -1632,16 +1678,25 @@ module Aws::EC2
1632
1678
  # @example Request syntax with placeholder values
1633
1679
  #
1634
1680
  # network_interfaces = vpc.network_interfaces({
1681
+ # dry_run: false,
1682
+ # network_interface_ids: ["NetworkInterfaceId"],
1635
1683
  # filters: [
1636
1684
  # {
1637
1685
  # name: "String",
1638
1686
  # values: ["String"],
1639
1687
  # },
1640
1688
  # ],
1641
- # dry_run: false,
1642
- # network_interface_ids: ["NetworkInterfaceId"],
1643
1689
  # })
1644
1690
  # @param [Hash] options ({})
1691
+ # @option options [Boolean] :dry_run
1692
+ # Checks whether you have the required permissions for the action,
1693
+ # without actually making the request, and provides an error response.
1694
+ # If you have the required permissions, the error response is
1695
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1696
+ # @option options [Array<String>] :network_interface_ids
1697
+ # The network interface IDs.
1698
+ #
1699
+ # Default: Describes all your network interfaces.
1645
1700
  # @option options [Array<Types::Filter>] :filters
1646
1701
  # One or more filters.
1647
1702
  #
@@ -1706,17 +1761,24 @@ module Aws::EC2
1706
1761
  #
1707
1762
  # * `interface-type` - The type of network interface
1708
1763
  # (`api_gateway_managed` \| `aws_codestar_connections_managed` \|
1709
- # `branch` \| `ec2_instance_connect_endpoint` \| `efa` \| `efs` \|
1710
- # `gateway_load_balancer` \| `gateway_load_balancer_endpoint` \|
1711
- # `global_accelerator_managed` \| `interface` \| `iot_rules_managed`
1712
- # \| `lambda` \| `load_balancer` \| `nat_gateway` \|
1713
- # `network_load_balancer` \| `quicksight` \| `transit_gateway` \|
1714
- # `trunk` \| `vpc_endpoint`).
1764
+ # `branch` \| `ec2_instance_connect_endpoint` \| `efa` \| `efa-only`
1765
+ # \| `efs` \| `gateway_load_balancer` \|
1766
+ # `gateway_load_balancer_endpoint` \| `global_accelerator_managed` \|
1767
+ # `interface` \| `iot_rules_managed` \| `lambda` \| `load_balancer` \|
1768
+ # `nat_gateway` \| `network_load_balancer` \| `quicksight` \|
1769
+ # `transit_gateway` \| `trunk` \| `vpc_endpoint`).
1715
1770
  #
1716
1771
  # * `mac-address` - The MAC address of the network interface.
1717
1772
  #
1718
1773
  # * `network-interface-id` - The ID of the network interface.
1719
1774
  #
1775
+ # * `operator.managed` - A Boolean that indicates whether this is a
1776
+ # managed network interface.
1777
+ #
1778
+ # * `operator.principal` - The principal that manages the network
1779
+ # interface. Only valid for managed network interfaces, where
1780
+ # `managed` is `true`.
1781
+ #
1720
1782
  # * `owner-id` - The Amazon Web Services account ID of the network
1721
1783
  # interface owner.
1722
1784
  #
@@ -1730,8 +1792,8 @@ module Aws::EC2
1730
1792
  # principal or service that created the network interface.
1731
1793
  #
1732
1794
  # * `requester-managed` - Indicates whether the network interface is
1733
- # being managed by an Amazon Web Service (for example, Amazon Web
1734
- # Services Management Console, Auto Scaling, and so on).
1795
+ # being managed by an Amazon Web Services service (for example, Amazon
1796
+ # Web Services Management Console, Auto Scaling, and so on).
1735
1797
  #
1736
1798
  # * `source-dest-check` - Indicates whether the network interface
1737
1799
  # performs source/destination checking. A value of `true` means
@@ -1757,15 +1819,6 @@ module Aws::EC2
1757
1819
  # regardless of the tag value.
1758
1820
  #
1759
1821
  # * `vpc-id` - The ID of the VPC for the network interface.
1760
- # @option options [Boolean] :dry_run
1761
- # Checks whether you have the required permissions for the action,
1762
- # without actually making the request, and provides an error response.
1763
- # If you have the required permissions, the error response is
1764
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1765
- # @option options [Array<String>] :network_interface_ids
1766
- # The network interface IDs.
1767
- #
1768
- # Default: Describes all your network interfaces.
1769
1822
  # @return [NetworkInterface::Collection]
1770
1823
  def network_interfaces(options = {})
1771
1824
  batches = Enumerator.new do |y|
@@ -1773,7 +1826,7 @@ module Aws::EC2
1773
1826
  name: "vpc-id",
1774
1827
  values: [@id]
1775
1828
  }])
1776
- resp = Aws::Plugins::UserAgent.feature('resource') do
1829
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
1777
1830
  @client.describe_network_interfaces(options)
1778
1831
  end
1779
1832
  resp.each_page do |page|
@@ -1794,16 +1847,25 @@ module Aws::EC2
1794
1847
  # @example Request syntax with placeholder values
1795
1848
  #
1796
1849
  # requested_vpc_peering_connections = vpc.requested_vpc_peering_connections({
1850
+ # dry_run: false,
1851
+ # vpc_peering_connection_ids: ["VpcPeeringConnectionId"],
1797
1852
  # filters: [
1798
1853
  # {
1799
1854
  # name: "String",
1800
1855
  # values: ["String"],
1801
1856
  # },
1802
1857
  # ],
1803
- # dry_run: false,
1804
- # vpc_peering_connection_ids: ["VpcPeeringConnectionId"],
1805
1858
  # })
1806
1859
  # @param [Hash] options ({})
1860
+ # @option options [Boolean] :dry_run
1861
+ # Checks whether you have the required permissions for the action,
1862
+ # without actually making the request, and provides an error response.
1863
+ # If you have the required permissions, the error response is
1864
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1865
+ # @option options [Array<String>] :vpc_peering_connection_ids
1866
+ # The IDs of the VPC peering connections.
1867
+ #
1868
+ # Default: Describes all your VPC peering connections.
1807
1869
  # @option options [Array<Types::Filter>] :filters
1808
1870
  # The filters.
1809
1871
  #
@@ -1833,26 +1895,17 @@ module Aws::EC2
1833
1895
  # * `status-message` - A message that provides more information about
1834
1896
  # the status of the VPC peering connection, if applicable.
1835
1897
  #
1836
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
1837
- # the resource. Use the tag key in the filter name and the tag value
1838
- # as the filter value. For example, to find all resources that have a
1839
- # tag with the key `Owner` and the value `TeamA`, specify `tag:Owner`
1840
- # for the filter name and `TeamA` for the filter value.
1898
+ # * `tag` - The key/value combination of a tag assigned to the resource.
1899
+ # Use the tag key in the filter name and the tag value as the filter
1900
+ # value. For example, to find all resources that have a tag with the
1901
+ # key `Owner` and the value `TeamA`, specify `tag:Owner` for the
1902
+ # filter name and `TeamA` for the filter value.
1841
1903
  #
1842
1904
  # * `tag-key` - The key of a tag assigned to the resource. Use this
1843
1905
  # filter to find all resources assigned a tag with a specific key,
1844
1906
  # regardless of the tag value.
1845
1907
  #
1846
1908
  # * `vpc-peering-connection-id` - The ID of the VPC peering connection.
1847
- # @option options [Boolean] :dry_run
1848
- # Checks whether you have the required permissions for the action,
1849
- # without actually making the request, and provides an error response.
1850
- # If you have the required permissions, the error response is
1851
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1852
- # @option options [Array<String>] :vpc_peering_connection_ids
1853
- # The IDs of the VPC peering connections.
1854
- #
1855
- # Default: Describes all your VPC peering connections.
1856
1909
  # @return [VpcPeeringConnection::Collection]
1857
1910
  def requested_vpc_peering_connections(options = {})
1858
1911
  batches = Enumerator.new do |y|
@@ -1860,7 +1913,7 @@ module Aws::EC2
1860
1913
  name: "requester-vpc-info.vpc-id",
1861
1914
  values: [@id]
1862
1915
  }])
1863
- resp = Aws::Plugins::UserAgent.feature('resource') do
1916
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
1864
1917
  @client.describe_vpc_peering_connections(options)
1865
1918
  end
1866
1919
  resp.each_page do |page|
@@ -1881,19 +1934,29 @@ module Aws::EC2
1881
1934
  # @example Request syntax with placeholder values
1882
1935
  #
1883
1936
  # route_tables = vpc.route_tables({
1937
+ # dry_run: false,
1938
+ # route_table_ids: ["RouteTableId"],
1884
1939
  # filters: [
1885
1940
  # {
1886
1941
  # name: "String",
1887
1942
  # values: ["String"],
1888
1943
  # },
1889
1944
  # ],
1890
- # dry_run: false,
1891
- # route_table_ids: ["RouteTableId"],
1892
1945
  # })
1893
1946
  # @param [Hash] options ({})
1947
+ # @option options [Boolean] :dry_run
1948
+ # Checks whether you have the required permissions for the action,
1949
+ # without actually making the request, and provides an error response.
1950
+ # If you have the required permissions, the error response is
1951
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1952
+ # @option options [Array<String>] :route_table_ids
1953
+ # The IDs of the route tables.
1894
1954
  # @option options [Array<Types::Filter>] :filters
1895
1955
  # The filters.
1896
1956
  #
1957
+ # * `association.gateway-id` - The ID of the gateway involved in the
1958
+ # association.
1959
+ #
1897
1960
  # * `association.route-table-association-id` - The ID of an association
1898
1961
  # ID for the route table.
1899
1962
  #
@@ -1919,7 +1982,7 @@ module Aws::EC2
1919
1982
  # in a route in the route table.
1920
1983
  #
1921
1984
  # * `route.destination-prefix-list-id` - The ID (prefix) of the Amazon
1922
- # Web Service specified in a route in the table.
1985
+ # Web Services service specified in a route in the table.
1923
1986
  #
1924
1987
  # * `route.egress-only-internet-gateway-id` - The ID of an egress-only
1925
1988
  # Internet gateway specified in a route in the route table.
@@ -1950,26 +2013,17 @@ module Aws::EC2
1950
2013
  # * `route.vpc-peering-connection-id` - The ID of a VPC peering
1951
2014
  # connection specified in a route in the table.
1952
2015
  #
1953
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
1954
- # the resource. Use the tag key in the filter name and the tag value
1955
- # as the filter value. For example, to find all resources that have a
1956
- # tag with the key `Owner` and the value `TeamA`, specify `tag:Owner`
1957
- # for the filter name and `TeamA` for the filter value.
2016
+ # * `tag` - The key/value combination of a tag assigned to the resource.
2017
+ # Use the tag key in the filter name and the tag value as the filter
2018
+ # value. For example, to find all resources that have a tag with the
2019
+ # key `Owner` and the value `TeamA`, specify `tag:Owner` for the
2020
+ # filter name and `TeamA` for the filter value.
1958
2021
  #
1959
2022
  # * `tag-key` - The key of a tag assigned to the resource. Use this
1960
2023
  # filter to find all resources assigned a tag with a specific key,
1961
2024
  # regardless of the tag value.
1962
2025
  #
1963
2026
  # * `vpc-id` - The ID of the VPC for the route table.
1964
- # @option options [Boolean] :dry_run
1965
- # Checks whether you have the required permissions for the action,
1966
- # without actually making the request, and provides an error response.
1967
- # If you have the required permissions, the error response is
1968
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1969
- # @option options [Array<String>] :route_table_ids
1970
- # The IDs of the route tables.
1971
- #
1972
- # Default: Describes all your route tables.
1973
2027
  # @return [RouteTable::Collection]
1974
2028
  def route_tables(options = {})
1975
2029
  batches = Enumerator.new do |y|
@@ -1977,7 +2031,7 @@ module Aws::EC2
1977
2031
  name: "vpc-id",
1978
2032
  values: [@id]
1979
2033
  }])
1980
- resp = Aws::Plugins::UserAgent.feature('resource') do
2034
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
1981
2035
  @client.describe_route_tables(options)
1982
2036
  end
1983
2037
  resp.each_page do |page|
@@ -1998,17 +2052,32 @@ module Aws::EC2
1998
2052
  # @example Request syntax with placeholder values
1999
2053
  #
2000
2054
  # security_groups = vpc.security_groups({
2055
+ # group_ids: ["SecurityGroupId"],
2056
+ # group_names: ["SecurityGroupName"],
2057
+ # dry_run: false,
2001
2058
  # filters: [
2002
2059
  # {
2003
2060
  # name: "String",
2004
2061
  # values: ["String"],
2005
2062
  # },
2006
2063
  # ],
2007
- # group_ids: ["SecurityGroupId"],
2008
- # group_names: ["SecurityGroupName"],
2009
- # dry_run: false,
2010
2064
  # })
2011
2065
  # @param [Hash] options ({})
2066
+ # @option options [Array<String>] :group_ids
2067
+ # The IDs of the security groups. Required for security groups in a
2068
+ # nondefault VPC.
2069
+ #
2070
+ # Default: Describes all of your security groups.
2071
+ # @option options [Array<String>] :group_names
2072
+ # \[Default VPC\] The names of the security groups. You can specify
2073
+ # either the security group name or the security group ID.
2074
+ #
2075
+ # Default: Describes all of your security groups.
2076
+ # @option options [Boolean] :dry_run
2077
+ # Checks whether you have the required permissions for the action,
2078
+ # without actually making the request, and provides an error response.
2079
+ # If you have the required permissions, the error response is
2080
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2012
2081
  # @option options [Array<Types::Filter>] :filters
2013
2082
  # The filters. If using multiple filters for rules, the results include
2014
2083
  # security groups for which any combination of rules - not necessarily a
@@ -2091,21 +2160,6 @@ module Aws::EC2
2091
2160
  #
2092
2161
  # * `vpc-id` - The ID of the VPC specified when the security group was
2093
2162
  # created.
2094
- # @option options [Array<String>] :group_ids
2095
- # The IDs of the security groups. Required for security groups in a
2096
- # nondefault VPC.
2097
- #
2098
- # Default: Describes all of your security groups.
2099
- # @option options [Array<String>] :group_names
2100
- # \[Default VPC\] The names of the security groups. You can specify
2101
- # either the security group name or the security group ID.
2102
- #
2103
- # Default: Describes all of your security groups.
2104
- # @option options [Boolean] :dry_run
2105
- # Checks whether you have the required permissions for the action,
2106
- # without actually making the request, and provides an error response.
2107
- # If you have the required permissions, the error response is
2108
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2109
2163
  # @return [SecurityGroup::Collection]
2110
2164
  def security_groups(options = {})
2111
2165
  batches = Enumerator.new do |y|
@@ -2113,7 +2167,7 @@ module Aws::EC2
2113
2167
  name: "vpc-id",
2114
2168
  values: [@id]
2115
2169
  }])
2116
- resp = Aws::Plugins::UserAgent.feature('resource') do
2170
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
2117
2171
  @client.describe_security_groups(options)
2118
2172
  end
2119
2173
  resp.each_page do |page|
@@ -2222,11 +2276,11 @@ module Aws::EC2
2222
2276
  #
2223
2277
  # * `subnet-id` - The ID of the subnet.
2224
2278
  #
2225
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
2226
- # the resource. Use the tag key in the filter name and the tag value
2227
- # as the filter value. For example, to find all resources that have a
2228
- # tag with the key `Owner` and the value `TeamA`, specify `tag:Owner`
2229
- # for the filter name and `TeamA` for the filter value.
2279
+ # * `tag` - The key/value combination of a tag assigned to the resource.
2280
+ # Use the tag key in the filter name and the tag value as the filter
2281
+ # value. For example, to find all resources that have a tag with the
2282
+ # key `Owner` and the value `TeamA`, specify `tag:Owner` for the
2283
+ # filter name and `TeamA` for the filter value.
2230
2284
  #
2231
2285
  # * `tag-key` - The key of a tag assigned to the resource. Use this
2232
2286
  # filter to find all resources assigned a tag with a specific key,
@@ -2249,7 +2303,7 @@ module Aws::EC2
2249
2303
  name: "vpc-id",
2250
2304
  values: [@id]
2251
2305
  }])
2252
- resp = Aws::Plugins::UserAgent.feature('resource') do
2306
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
2253
2307
  @client.describe_subnets(options)
2254
2308
  end
2255
2309
  resp.each_page do |page|