aws-sdk-ec2 1.285.0 → 1.417.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +663 -1
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-ec2/classic_address.rb +33 -36
  5. data/lib/aws-sdk-ec2/client.rb +13859 -2170
  6. data/lib/aws-sdk-ec2/client_api.rb +4203 -86
  7. data/lib/aws-sdk-ec2/customizations/instance.rb +3 -1
  8. data/lib/aws-sdk-ec2/customizations/resource.rb +3 -1
  9. data/lib/aws-sdk-ec2/dhcp_options.rb +19 -7
  10. data/lib/aws-sdk-ec2/endpoint_parameters.rb +66 -0
  11. data/lib/aws-sdk-ec2/endpoint_provider.rb +57 -0
  12. data/lib/aws-sdk-ec2/endpoints.rb +8444 -0
  13. data/lib/aws-sdk-ec2/image.rb +96 -22
  14. data/lib/aws-sdk-ec2/instance.rb +232 -95
  15. data/lib/aws-sdk-ec2/internet_gateway.rb +21 -7
  16. data/lib/aws-sdk-ec2/key_pair.rb +13 -4
  17. data/lib/aws-sdk-ec2/key_pair_info.rb +32 -4
  18. data/lib/aws-sdk-ec2/nat_gateway.rb +22 -12
  19. data/lib/aws-sdk-ec2/network_acl.rb +28 -10
  20. data/lib/aws-sdk-ec2/network_interface.rb +76 -17
  21. data/lib/aws-sdk-ec2/network_interface_association.rb +11 -5
  22. data/lib/aws-sdk-ec2/placement_group.rb +198 -33
  23. data/lib/aws-sdk-ec2/plugins/copy_encrypted_snapshot.rb +17 -12
  24. data/lib/aws-sdk-ec2/plugins/endpoints.rb +1272 -0
  25. data/lib/aws-sdk-ec2/plugins/region_validation.rb +1 -1
  26. data/lib/aws-sdk-ec2/resource.rb +793 -282
  27. data/lib/aws-sdk-ec2/route.rb +9 -3
  28. data/lib/aws-sdk-ec2/route_table.rb +21 -7
  29. data/lib/aws-sdk-ec2/route_table_association.rb +9 -3
  30. data/lib/aws-sdk-ec2/security_group.rb +74 -57
  31. data/lib/aws-sdk-ec2/snapshot.rb +38 -12
  32. data/lib/aws-sdk-ec2/subnet.rb +394 -137
  33. data/lib/aws-sdk-ec2/tag.rb +12 -4
  34. data/lib/aws-sdk-ec2/types.rb +15645 -13412
  35. data/lib/aws-sdk-ec2/volume.rb +65 -34
  36. data/lib/aws-sdk-ec2/vpc.rb +368 -123
  37. data/lib/aws-sdk-ec2/vpc_address.rb +29 -34
  38. data/lib/aws-sdk-ec2/vpc_peering_connection.rb +18 -6
  39. data/lib/aws-sdk-ec2/waiters.rb +184 -0
  40. data/lib/aws-sdk-ec2.rb +6 -2
  41. metadata +8 -4
@@ -40,22 +40,19 @@ module Aws::EC2
40
40
  data[:instance_id]
41
41
  end
42
42
 
43
- # The ID representing the allocation of the address for use with
44
- # EC2-VPC.
43
+ # The ID representing the allocation of the address.
45
44
  # @return [String]
46
45
  def allocation_id
47
46
  data[:allocation_id]
48
47
  end
49
48
 
50
- # The ID representing the association of the address with an instance in
51
- # a VPC.
49
+ # The ID representing the association of the address with an instance.
52
50
  # @return [String]
53
51
  def association_id
54
52
  data[:association_id]
55
53
  end
56
54
 
57
- # Indicates whether this Elastic IP address is for use with instances in
58
- # EC2-Classic (`standard`) or instances in a VPC (`vpc`).
55
+ # The network (`vpc`).
59
56
  # @return [String]
60
57
  def domain
61
58
  data[:domain]
@@ -134,7 +131,9 @@ module Aws::EC2
134
131
  #
135
132
  # @return [self]
136
133
  def load
137
- resp = @client.describe_addresses(public_ips: [@public_ip])
134
+ resp = Aws::Plugins::UserAgent.feature('resource') do
135
+ @client.describe_addresses(public_ips: [@public_ip])
136
+ end
138
137
  @data = resp.addresses[0]
139
138
  self
140
139
  end
@@ -249,7 +248,9 @@ module Aws::EC2
249
248
  :retry
250
249
  end
251
250
  end
252
- Aws::Waiters::Waiter.new(options).wait({})
251
+ Aws::Plugins::UserAgent.feature('resource') do
252
+ Aws::Waiters::Waiter.new(options).wait({})
253
+ end
253
254
  end
254
255
 
255
256
  # @!group Actions
@@ -266,40 +267,36 @@ module Aws::EC2
266
267
  # })
267
268
  # @param [Hash] options ({})
268
269
  # @option options [String] :allocation_id
269
- # \[EC2-VPC\] The allocation ID. This is required for EC2-VPC.
270
+ # The allocation ID. This is required.
270
271
  # @option options [String] :instance_id
271
272
  # The ID of the instance. The instance must have exactly one attached
272
- # network interface. For EC2-VPC, you can specify either the instance ID
273
- # or the network interface ID, but not both. For EC2-Classic, you must
274
- # specify an instance ID and the instance must be in the running state.
273
+ # network interface. You can specify either the instance ID or the
274
+ # network interface ID, but not both.
275
275
  # @option options [Boolean] :allow_reassociation
276
- # \[EC2-VPC\] For a VPC in an EC2-Classic account, specify true to allow
277
- # an Elastic IP address that is already associated with an instance or
278
- # network interface to be reassociated with the specified instance or
279
- # network interface. Otherwise, the operation fails. In a VPC in an
280
- # EC2-VPC-only account, reassociation is automatic, therefore you can
281
- # specify false to ensure the operation fails if the Elastic IP address
282
- # is already associated with another resource.
276
+ # Reassociation is automatic, but you can specify false to ensure the
277
+ # operation fails if the Elastic IP address is already associated with
278
+ # another resource.
283
279
  # @option options [Boolean] :dry_run
284
280
  # Checks whether you have the required permissions for the action,
285
281
  # without actually making the request, and provides an error response.
286
282
  # If you have the required permissions, the error response is
287
283
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
288
284
  # @option options [String] :network_interface_id
289
- # \[EC2-VPC\] The ID of the network interface. If the instance has more
290
- # than one network interface, you must specify a network interface ID.
285
+ # The ID of the network interface. If the instance has more than one
286
+ # network interface, you must specify a network interface ID.
291
287
  #
292
- # For EC2-VPC, you can specify either the instance ID or the network
293
- # interface ID, but not both.
288
+ # You can specify either the instance ID or the network interface ID,
289
+ # but not both.
294
290
  # @option options [String] :private_ip_address
295
- # \[EC2-VPC\] The primary or secondary private IP address to associate
296
- # with the Elastic IP address. If no private IP address is specified,
297
- # the Elastic IP address is associated with the primary private IP
298
- # address.
291
+ # The primary or secondary private IP address to associate with the
292
+ # Elastic IP address. If no private IP address is specified, the Elastic
293
+ # IP address is associated with the primary private IP address.
299
294
  # @return [Types::AssociateAddressResult]
300
295
  def associate(options = {})
301
296
  options = options.merge(public_ip: @public_ip)
302
- resp = @client.associate_address(options)
297
+ resp = Aws::Plugins::UserAgent.feature('resource') do
298
+ @client.associate_address(options)
299
+ end
303
300
  resp.data
304
301
  end
305
302
 
@@ -311,7 +308,7 @@ module Aws::EC2
311
308
  # })
312
309
  # @param [Hash] options ({})
313
310
  # @option options [String] :association_id
314
- # \[EC2-VPC\] The association ID. Required for EC2-VPC.
311
+ # The association ID. This parameter is required.
315
312
  # @option options [Boolean] :dry_run
316
313
  # Checks whether you have the required permissions for the action,
317
314
  # without actually making the request, and provides an error response.
@@ -320,7 +317,9 @@ module Aws::EC2
320
317
  # @return [EmptyStructure]
321
318
  def disassociate(options = {})
322
319
  options = options.merge(public_ip: data[:public_ip])
323
- resp = @client.disassociate_address(options)
320
+ resp = Aws::Plugins::UserAgent.feature('resource') do
321
+ @client.disassociate_address(options)
322
+ end
324
323
  resp.data
325
324
  end
326
325
 
@@ -333,17 +332,13 @@ module Aws::EC2
333
332
  # })
334
333
  # @param [Hash] options ({})
335
334
  # @option options [String] :allocation_id
336
- # \[EC2-VPC\] The allocation ID. Required for EC2-VPC.
335
+ # The allocation ID. This parameter is required.
337
336
  # @option options [String] :network_border_group
338
337
  # The set of Availability Zones, Local Zones, or Wavelength Zones from
339
338
  # which Amazon Web Services advertises IP addresses.
340
339
  #
341
340
  # If you provide an incorrect network border group, you receive an
342
341
  # `InvalidAddress.NotFound` error.
343
- #
344
- # You cannot use a network border group with EC2 Classic. If you attempt
345
- # this operation on EC2 classic, you receive an
346
- # `InvalidParameterCombination` error.
347
342
  # @option options [Boolean] :dry_run
348
343
  # Checks whether you have the required permissions for the action,
349
344
  # without actually making the request, and provides an error response.
@@ -352,7 +347,9 @@ module Aws::EC2
352
347
  # @return [EmptyStructure]
353
348
  def release(options = {})
354
349
  options = options.merge(public_ip: data[:public_ip])
355
- resp = @client.release_address(options)
350
+ resp = Aws::Plugins::UserAgent.feature('resource') do
351
+ @client.release_address(options)
352
+ end
356
353
  resp.data
357
354
  end
358
355