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
@@ -34,18 +34,6 @@ module Aws::EC2
34
34
  @allocation_id
35
35
  end
36
36
 
37
- # The ID of the instance that the address is associated with (if any).
38
- # @return [String]
39
- def instance_id
40
- data[:instance_id]
41
- end
42
-
43
- # The Elastic IP address.
44
- # @return [String]
45
- def public_ip
46
- data[:public_ip]
47
- end
48
-
49
37
  # The ID representing the association of the address with an instance.
50
38
  # @return [String]
51
39
  def association_id
@@ -117,6 +105,28 @@ module Aws::EC2
117
105
  data[:carrier_ip]
118
106
  end
119
107
 
108
+ # The service that manages the elastic IP address.
109
+ #
110
+ # <note markdown="1"> The only option supported today is `alb`.
111
+ #
112
+ # </note>
113
+ # @return [String]
114
+ def service_managed
115
+ data[:service_managed]
116
+ end
117
+
118
+ # The ID of the instance that the address is associated with (if any).
119
+ # @return [String]
120
+ def instance_id
121
+ data[:instance_id]
122
+ end
123
+
124
+ # The Elastic IP address.
125
+ # @return [String]
126
+ def public_ip
127
+ data[:public_ip]
128
+ end
129
+
120
130
  # @!endgroup
121
131
 
122
132
  # @return [Client]
@@ -131,7 +141,7 @@ module Aws::EC2
131
141
  #
132
142
  # @return [self]
133
143
  def load
134
- resp = Aws::Plugins::UserAgent.feature('resource') do
144
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
135
145
  @client.describe_addresses(allocation_ids: [@allocation_id])
136
146
  end
137
147
  @data = resp.addresses[0]
@@ -248,7 +258,7 @@ module Aws::EC2
248
258
  :retry
249
259
  end
250
260
  end
251
- Aws::Plugins::UserAgent.feature('resource') do
261
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
252
262
  Aws::Waiters::Waiter.new(options).wait({})
253
263
  end
254
264
  end
@@ -260,10 +270,10 @@ module Aws::EC2
260
270
  # vpc_address.associate({
261
271
  # instance_id: "InstanceId",
262
272
  # public_ip: "EipAllocationPublicIp",
263
- # allow_reassociation: false,
264
273
  # dry_run: false,
265
274
  # network_interface_id: "NetworkInterfaceId",
266
275
  # private_ip_address: "String",
276
+ # allow_reassociation: false,
267
277
  # })
268
278
  # @param [Hash] options ({})
269
279
  # @option options [String] :instance_id
@@ -272,10 +282,6 @@ module Aws::EC2
272
282
  # network interface ID, but not both.
273
283
  # @option options [String] :public_ip
274
284
  # Deprecated.
275
- # @option options [Boolean] :allow_reassociation
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.
279
285
  # @option options [Boolean] :dry_run
280
286
  # Checks whether you have the required permissions for the action,
281
287
  # without actually making the request, and provides an error response.
@@ -291,10 +297,14 @@ module Aws::EC2
291
297
  # The primary or secondary private IP address to associate with the
292
298
  # Elastic IP address. If no private IP address is specified, the Elastic
293
299
  # IP address is associated with the primary private IP address.
300
+ # @option options [Boolean] :allow_reassociation
301
+ # Reassociation is automatic, but you can specify false to ensure the
302
+ # operation fails if the Elastic IP address is already associated with
303
+ # another resource.
294
304
  # @return [Types::AssociateAddressResult]
295
305
  def associate(options = {})
296
306
  options = options.merge(allocation_id: @allocation_id)
297
- resp = Aws::Plugins::UserAgent.feature('resource') do
307
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
298
308
  @client.associate_address(options)
299
309
  end
300
310
  resp.data
@@ -324,7 +334,7 @@ module Aws::EC2
324
334
  # @return [EmptyStructure]
325
335
  def release(options = {})
326
336
  options = options.merge(allocation_id: data[:allocation_id])
327
- resp = Aws::Plugins::UserAgent.feature('resource') do
337
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
328
338
  @client.release_address(options)
329
339
  end
330
340
  resp.data
@@ -81,7 +81,7 @@ module Aws::EC2
81
81
  #
82
82
  # @return [self]
83
83
  def load
84
- resp = Aws::Plugins::UserAgent.feature('resource') do
84
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
85
85
  @client.describe_vpc_peering_connections(vpc_peering_connection_ids: [@id])
86
86
  end
87
87
  @data = resp.vpc_peering_connections[0]
@@ -128,7 +128,7 @@ module Aws::EC2
128
128
  options, params = separate_params_and_options(options)
129
129
  waiter = Waiters::VpcPeeringConnectionExists.new(options)
130
130
  yield_waiter_and_warn(waiter, &block) if block_given?
131
- resp = Aws::Plugins::UserAgent.feature('resource') do
131
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
132
132
  waiter.wait(params.merge(vpc_peering_connection_ids: [@id]))
133
133
  end
134
134
  VpcPeeringConnection.new({
@@ -232,7 +232,7 @@ module Aws::EC2
232
232
  :retry
233
233
  end
234
234
  end
235
- Aws::Plugins::UserAgent.feature('resource') do
235
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
236
236
  Aws::Waiters::Waiter.new(options).wait({})
237
237
  end
238
238
  end
@@ -253,7 +253,7 @@ module Aws::EC2
253
253
  # @return [Types::AcceptVpcPeeringConnectionResult]
254
254
  def accept(options = {})
255
255
  options = options.merge(vpc_peering_connection_id: @id)
256
- resp = Aws::Plugins::UserAgent.feature('resource') do
256
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
257
257
  @client.accept_vpc_peering_connection(options)
258
258
  end
259
259
  resp.data
@@ -273,7 +273,7 @@ module Aws::EC2
273
273
  # @return [Types::DeleteVpcPeeringConnectionResult]
274
274
  def delete(options = {})
275
275
  options = options.merge(vpc_peering_connection_id: @id)
276
- resp = Aws::Plugins::UserAgent.feature('resource') do
276
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
277
277
  @client.delete_vpc_peering_connection(options)
278
278
  end
279
279
  resp.data
@@ -293,7 +293,7 @@ module Aws::EC2
293
293
  # @return [Types::RejectVpcPeeringConnectionResult]
294
294
  def reject(options = {})
295
295
  options = options.merge(vpc_peering_connection_id: @id)
296
- resp = Aws::Plugins::UserAgent.feature('resource') do
296
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
297
297
  @client.reject_vpc_peering_connection(options)
298
298
  end
299
299
  resp.data
data/lib/aws-sdk-ec2.rb CHANGED
@@ -8,43 +8,10 @@
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
10
 
11
- require 'aws-sigv4'
12
11
  require 'aws-sdk-core'
12
+ require 'aws-sigv4'
13
13
 
14
- require_relative 'aws-sdk-ec2/types'
15
- require_relative 'aws-sdk-ec2/client_api'
16
- require_relative 'aws-sdk-ec2/plugins/endpoints.rb'
17
- require_relative 'aws-sdk-ec2/client'
18
- require_relative 'aws-sdk-ec2/errors'
19
- require_relative 'aws-sdk-ec2/waiters'
20
- require_relative 'aws-sdk-ec2/resource'
21
- require_relative 'aws-sdk-ec2/endpoint_parameters'
22
- require_relative 'aws-sdk-ec2/endpoint_provider'
23
- require_relative 'aws-sdk-ec2/endpoints'
24
- require_relative 'aws-sdk-ec2/classic_address'
25
- require_relative 'aws-sdk-ec2/dhcp_options'
26
- require_relative 'aws-sdk-ec2/image'
27
- require_relative 'aws-sdk-ec2/instance'
28
- require_relative 'aws-sdk-ec2/internet_gateway'
29
- require_relative 'aws-sdk-ec2/key_pair'
30
- require_relative 'aws-sdk-ec2/key_pair_info'
31
- require_relative 'aws-sdk-ec2/network_acl'
32
- require_relative 'aws-sdk-ec2/nat_gateway'
33
- require_relative 'aws-sdk-ec2/network_interface'
34
- require_relative 'aws-sdk-ec2/network_interface_association'
35
- require_relative 'aws-sdk-ec2/placement_group'
36
- require_relative 'aws-sdk-ec2/route'
37
- require_relative 'aws-sdk-ec2/route_table'
38
- require_relative 'aws-sdk-ec2/route_table_association'
39
- require_relative 'aws-sdk-ec2/security_group'
40
- require_relative 'aws-sdk-ec2/snapshot'
41
- require_relative 'aws-sdk-ec2/subnet'
42
- require_relative 'aws-sdk-ec2/tag'
43
- require_relative 'aws-sdk-ec2/volume'
44
- require_relative 'aws-sdk-ec2/vpc'
45
- require_relative 'aws-sdk-ec2/vpc_peering_connection'
46
- require_relative 'aws-sdk-ec2/vpc_address'
47
- require_relative 'aws-sdk-ec2/customizations'
14
+ Aws::Plugins::GlobalConfiguration.add_identifier(:ec2)
48
15
 
49
16
  # This module provides support for Amazon Elastic Compute Cloud. This module is available in the
50
17
  # `aws-sdk-ec2` gem.
@@ -75,7 +42,44 @@ require_relative 'aws-sdk-ec2/customizations'
75
42
  #
76
43
  # @!group service
77
44
  module Aws::EC2
45
+ autoload :Types, 'aws-sdk-ec2/types'
46
+ autoload :ClientApi, 'aws-sdk-ec2/client_api'
47
+ module Plugins
48
+ autoload :Endpoints, 'aws-sdk-ec2/plugins/endpoints.rb'
49
+ end
50
+ autoload :Client, 'aws-sdk-ec2/client'
51
+ autoload :Errors, 'aws-sdk-ec2/errors'
52
+ autoload :Waiters, 'aws-sdk-ec2/waiters'
53
+ autoload :Resource, 'aws-sdk-ec2/resource'
54
+ autoload :EndpointParameters, 'aws-sdk-ec2/endpoint_parameters'
55
+ autoload :EndpointProvider, 'aws-sdk-ec2/endpoint_provider'
56
+ autoload :Endpoints, 'aws-sdk-ec2/endpoints'
57
+ autoload :ClassicAddress, 'aws-sdk-ec2/classic_address'
58
+ autoload :DhcpOptions, 'aws-sdk-ec2/dhcp_options'
59
+ autoload :Image, 'aws-sdk-ec2/image'
60
+ autoload :Instance, 'aws-sdk-ec2/instance'
61
+ autoload :InternetGateway, 'aws-sdk-ec2/internet_gateway'
62
+ autoload :KeyPair, 'aws-sdk-ec2/key_pair'
63
+ autoload :KeyPairInfo, 'aws-sdk-ec2/key_pair_info'
64
+ autoload :NetworkAcl, 'aws-sdk-ec2/network_acl'
65
+ autoload :NatGateway, 'aws-sdk-ec2/nat_gateway'
66
+ autoload :NetworkInterface, 'aws-sdk-ec2/network_interface'
67
+ autoload :NetworkInterfaceAssociation, 'aws-sdk-ec2/network_interface_association'
68
+ autoload :PlacementGroup, 'aws-sdk-ec2/placement_group'
69
+ autoload :Route, 'aws-sdk-ec2/route'
70
+ autoload :RouteTable, 'aws-sdk-ec2/route_table'
71
+ autoload :RouteTableAssociation, 'aws-sdk-ec2/route_table_association'
72
+ autoload :SecurityGroup, 'aws-sdk-ec2/security_group'
73
+ autoload :Snapshot, 'aws-sdk-ec2/snapshot'
74
+ autoload :Subnet, 'aws-sdk-ec2/subnet'
75
+ autoload :Tag, 'aws-sdk-ec2/tag'
76
+ autoload :Volume, 'aws-sdk-ec2/volume'
77
+ autoload :Vpc, 'aws-sdk-ec2/vpc'
78
+ autoload :VpcPeeringConnection, 'aws-sdk-ec2/vpc_peering_connection'
79
+ autoload :VpcAddress, 'aws-sdk-ec2/vpc_address'
78
80
 
79
- GEM_VERSION = '1.431.0'
81
+ GEM_VERSION = '1.522.0'
80
82
 
81
83
  end
84
+
85
+ require_relative 'aws-sdk-ec2/customizations'
@@ -0,0 +1,105 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module EC2
10
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html
11
+ class ClassicAddress
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#initialize-instance_method
13
+ def initialize: (String public_ip, Hash[Symbol, untyped] options) -> void
14
+ | (public_ip: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#public_ip-instance_method
18
+ def public_ip: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#allocation_id-instance_method
21
+ def allocation_id: () -> ::String
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#association_id-instance_method
24
+ def association_id: () -> ::String
25
+
26
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#domain-instance_method
27
+ def domain: () -> ("vpc" | "standard")
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#network_interface_id-instance_method
30
+ def network_interface_id: () -> ::String
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#network_interface_owner_id-instance_method
33
+ def network_interface_owner_id: () -> ::String
34
+
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#private_ip_address-instance_method
36
+ def private_ip_address: () -> ::String
37
+
38
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#tags-instance_method
39
+ def tags: () -> ::Array[Types::Tag]
40
+
41
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#public_ipv_4_pool-instance_method
42
+ def public_ipv_4_pool: () -> ::String
43
+
44
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#network_border_group-instance_method
45
+ def network_border_group: () -> ::String
46
+
47
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#customer_owned_ip-instance_method
48
+ def customer_owned_ip: () -> ::String
49
+
50
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#customer_owned_ipv_4_pool-instance_method
51
+ def customer_owned_ipv_4_pool: () -> ::String
52
+
53
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#carrier_ip-instance_method
54
+ def carrier_ip: () -> ::String
55
+
56
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#service_managed-instance_method
57
+ def service_managed: () -> ("alb" | "nlb" | "rnat")
58
+
59
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#instance_id-instance_method
60
+ def instance_id: () -> ::String
61
+
62
+ def client: () -> Client
63
+
64
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#load-instance_method
65
+ def load: () -> self
66
+ alias reload load
67
+
68
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#data-instance_method
69
+ def data: () -> Types::Address
70
+
71
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#data_loaded?-instance_method
72
+ def data_loaded?: () -> bool
73
+
74
+
75
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#associate-instance_method
76
+ def associate: (
77
+ ?allocation_id: ::String,
78
+ ?instance_id: ::String,
79
+ ?dry_run: bool,
80
+ ?network_interface_id: ::String,
81
+ ?private_ip_address: ::String,
82
+ ?allow_reassociation: bool
83
+ ) -> Types::AssociateAddressResult
84
+ | (?Hash[Symbol, untyped]) -> Types::AssociateAddressResult
85
+
86
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#disassociate-instance_method
87
+ def disassociate: (
88
+ ?association_id: ::String,
89
+ ?dry_run: bool
90
+ ) -> ::Aws::EmptyStructure
91
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
92
+
93
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#release-instance_method
94
+ def release: (
95
+ ?allocation_id: ::String,
96
+ ?network_border_group: ::String,
97
+ ?dry_run: bool
98
+ ) -> ::Aws::EmptyStructure
99
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
100
+
101
+ class Collection < ::Aws::Resources::Collection[ClassicAddress]
102
+ end
103
+ end
104
+ end
105
+ end