aws-sdk-ec2 1.402.0 → 1.547.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 (69) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +735 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-ec2/classic_address.rb +32 -20
  5. data/lib/aws-sdk-ec2/client.rb +14212 -4429
  6. data/lib/aws-sdk-ec2/client_api.rb +4004 -515
  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 +16 -20
  14. data/lib/aws-sdk-ec2/endpoints.rb +2 -8314
  15. data/lib/aws-sdk-ec2/image.rb +207 -98
  16. data/lib/aws-sdk-ec2/instance.rb +514 -348
  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 +150 -78
  23. data/lib/aws-sdk-ec2/network_interface_association.rb +3 -3
  24. data/lib/aws-sdk-ec2/placement_group.rb +123 -42
  25. data/lib/aws-sdk-ec2/plugins/endpoints.rb +23 -1202
  26. data/lib/aws-sdk-ec2/resource.rb +1118 -864
  27. data/lib/aws-sdk-ec2/route.rb +50 -34
  28. data/lib/aws-sdk-ec2/route_table.rb +47 -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 +534 -406
  33. data/lib/aws-sdk-ec2/tag.rb +7 -4
  34. data/lib/aws-sdk-ec2/types.rb +18252 -4766
  35. data/lib/aws-sdk-ec2/volume.rb +160 -116
  36. data/lib/aws-sdk-ec2/vpc.rb +387 -262
  37. data/lib/aws-sdk-ec2/vpc_address.rb +37 -25
  38. data/lib/aws-sdk-ec2/vpc_peering_connection.rb +6 -6
  39. data/lib/aws-sdk-ec2/waiters.rb +146 -38
  40. data/lib/aws-sdk-ec2.rb +40 -36
  41. data/sig/classic_address.rbs +108 -0
  42. data/sig/client.rbs +14833 -0
  43. data/sig/dhcp_options.rbs +84 -0
  44. data/sig/errors.rbs +16 -0
  45. data/sig/image.rbs +232 -0
  46. data/sig/instance.rbs +576 -0
  47. data/sig/internet_gateway.rbs +91 -0
  48. data/sig/key_pair.rbs +54 -0
  49. data/sig/key_pair_info.rbs +63 -0
  50. data/sig/nat_gateway.rbs +107 -0
  51. data/sig/network_acl.rbs +144 -0
  52. data/sig/network_interface.rbs +249 -0
  53. data/sig/network_interface_association.rbs +62 -0
  54. data/sig/placement_group.rbs +78 -0
  55. data/sig/resource.rbs +1049 -0
  56. data/sig/route.rbs +120 -0
  57. data/sig/route_table.rbs +118 -0
  58. data/sig/route_table_association.rbs +69 -0
  59. data/sig/security_group.rbs +311 -0
  60. data/sig/snapshot.rbs +204 -0
  61. data/sig/subnet.rbs +442 -0
  62. data/sig/tag.rbs +63 -0
  63. data/sig/types.rbs +17078 -0
  64. data/sig/volume.rbs +213 -0
  65. data/sig/vpc.rbs +404 -0
  66. data/sig/vpc_address.rbs +104 -0
  67. data/sig/vpc_peering_connection.rbs +84 -0
  68. data/sig/waiters.rbs +700 -0
  69. metadata +45 -19
@@ -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,34 @@ module Aws::EC2
117
105
  data[:carrier_ip]
118
106
  end
119
107
 
108
+ # The ID of the subnet where the IP address is allocated.
109
+ # @return [String]
110
+ def subnet_id
111
+ data[:subnet_id]
112
+ end
113
+
114
+ # The service that manages the elastic IP address.
115
+ #
116
+ # <note markdown="1"> The only option supported today is `alb`.
117
+ #
118
+ # </note>
119
+ # @return [String]
120
+ def service_managed
121
+ data[:service_managed]
122
+ end
123
+
124
+ # The ID of the instance that the address is associated with (if any).
125
+ # @return [String]
126
+ def instance_id
127
+ data[:instance_id]
128
+ end
129
+
130
+ # The Elastic IP address.
131
+ # @return [String]
132
+ def public_ip
133
+ data[:public_ip]
134
+ end
135
+
120
136
  # @!endgroup
121
137
 
122
138
  # @return [Client]
@@ -131,7 +147,7 @@ module Aws::EC2
131
147
  #
132
148
  # @return [self]
133
149
  def load
134
- resp = Aws::Plugins::UserAgent.feature('resource') do
150
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
135
151
  @client.describe_addresses(allocation_ids: [@allocation_id])
136
152
  end
137
153
  @data = resp.addresses[0]
@@ -248,7 +264,7 @@ module Aws::EC2
248
264
  :retry
249
265
  end
250
266
  end
251
- Aws::Plugins::UserAgent.feature('resource') do
267
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
252
268
  Aws::Waiters::Waiter.new(options).wait({})
253
269
  end
254
270
  end
@@ -260,10 +276,10 @@ module Aws::EC2
260
276
  # vpc_address.associate({
261
277
  # instance_id: "InstanceId",
262
278
  # public_ip: "EipAllocationPublicIp",
263
- # allow_reassociation: false,
264
279
  # dry_run: false,
265
280
  # network_interface_id: "NetworkInterfaceId",
266
281
  # private_ip_address: "String",
282
+ # allow_reassociation: false,
267
283
  # })
268
284
  # @param [Hash] options ({})
269
285
  # @option options [String] :instance_id
@@ -272,10 +288,6 @@ module Aws::EC2
272
288
  # network interface ID, but not both.
273
289
  # @option options [String] :public_ip
274
290
  # 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
291
  # @option options [Boolean] :dry_run
280
292
  # Checks whether you have the required permissions for the action,
281
293
  # without actually making the request, and provides an error response.
@@ -291,10 +303,14 @@ module Aws::EC2
291
303
  # The primary or secondary private IP address to associate with the
292
304
  # Elastic IP address. If no private IP address is specified, the Elastic
293
305
  # IP address is associated with the primary private IP address.
306
+ # @option options [Boolean] :allow_reassociation
307
+ # Reassociation is automatic, but you can specify false to ensure the
308
+ # operation fails if the Elastic IP address is already associated with
309
+ # another resource.
294
310
  # @return [Types::AssociateAddressResult]
295
311
  def associate(options = {})
296
312
  options = options.merge(allocation_id: @allocation_id)
297
- resp = Aws::Plugins::UserAgent.feature('resource') do
313
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
298
314
  @client.associate_address(options)
299
315
  end
300
316
  resp.data
@@ -316,10 +332,6 @@ module Aws::EC2
316
332
  #
317
333
  # If you provide an incorrect network border group, you receive an
318
334
  # `InvalidAddress.NotFound` error.
319
- #
320
- # You cannot use a network border group with EC2 Classic. If you attempt
321
- # this operation on EC2 classic, you receive an
322
- # `InvalidParameterCombination` error.
323
335
  # @option options [Boolean] :dry_run
324
336
  # Checks whether you have the required permissions for the action,
325
337
  # without actually making the request, and provides an error response.
@@ -328,7 +340,7 @@ module Aws::EC2
328
340
  # @return [EmptyStructure]
329
341
  def release(options = {})
330
342
  options = options.merge(allocation_id: data[:allocation_id])
331
- resp = Aws::Plugins::UserAgent.feature('resource') do
343
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
332
344
  @client.release_address(options)
333
345
  end
334
346
  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
@@ -67,44 +67,46 @@ module Aws::EC2
67
67
  # The following table lists the valid waiter names, the operations they call,
68
68
  # and the default `:delay` and `:max_attempts` values.
69
69
  #
70
- # | waiter_name | params | :delay | :max_attempts |
71
- # | ------------------------------- | ----------------------------------------- | -------- | ------------- |
72
- # | bundle_task_complete | {Client#describe_bundle_tasks} | 15 | 40 |
73
- # | conversion_task_cancelled | {Client#describe_conversion_tasks} | 15 | 40 |
74
- # | conversion_task_completed | {Client#describe_conversion_tasks} | 15 | 40 |
75
- # | conversion_task_deleted | {Client#describe_conversion_tasks} | 15 | 40 |
76
- # | customer_gateway_available | {Client#describe_customer_gateways} | 15 | 40 |
77
- # | export_task_cancelled | {Client#describe_export_tasks} | 15 | 40 |
78
- # | export_task_completed | {Client#describe_export_tasks} | 15 | 40 |
79
- # | image_available | {Client#describe_images} | 15 | 40 |
80
- # | image_exists | {Client#describe_images} | 15 | 40 |
81
- # | instance_exists | {Client#describe_instances} | 5 | 40 |
82
- # | instance_running | {Client#describe_instances} | 15 | 40 |
83
- # | instance_status_ok | {Client#describe_instance_status} | 15 | 40 |
84
- # | instance_stopped | {Client#describe_instances} | 15 | 40 |
85
- # | instance_terminated | {Client#describe_instances} | 15 | 40 |
86
- # | internet_gateway_exists | {Client#describe_internet_gateways} | 5 | 6 |
87
- # | key_pair_exists | {Client#describe_key_pairs} | 5 | 6 |
88
- # | nat_gateway_available | {Client#describe_nat_gateways} | 15 | 40 |
89
- # | nat_gateway_deleted | {Client#describe_nat_gateways} | 15 | 40 |
90
- # | network_interface_available | {Client#describe_network_interfaces} | 20 | 10 |
91
- # | password_data_available | {Client#get_password_data} | 15 | 40 |
92
- # | security_group_exists | {Client#describe_security_groups} | 5 | 6 |
93
- # | snapshot_completed | {Client#describe_snapshots} | 15 | 40 |
94
- # | snapshot_imported | {Client#describe_import_snapshot_tasks} | 15 | 40 |
95
- # | spot_instance_request_fulfilled | {Client#describe_spot_instance_requests} | 15 | 40 |
96
- # | store_image_task_complete | {Client#describe_store_image_tasks} | 5 | 40 |
97
- # | subnet_available | {Client#describe_subnets} | 15 | 40 |
98
- # | system_status_ok | {Client#describe_instance_status} | 15 | 40 |
99
- # | volume_available | {Client#describe_volumes} | 15 | 40 |
100
- # | volume_deleted | {Client#describe_volumes} | 15 | 40 |
101
- # | volume_in_use | {Client#describe_volumes} | 15 | 40 |
102
- # | vpc_available | {Client#describe_vpcs} | 15 | 40 |
103
- # | vpc_exists | {Client#describe_vpcs} | 1 | 5 |
104
- # | vpc_peering_connection_deleted | {Client#describe_vpc_peering_connections} | 15 | 40 |
105
- # | vpc_peering_connection_exists | {Client#describe_vpc_peering_connections} | 15 | 40 |
106
- # | vpn_connection_available | {Client#describe_vpn_connections} | 15 | 40 |
107
- # | vpn_connection_deleted | {Client#describe_vpn_connections} | 15 | 40 |
70
+ # | waiter_name | params | :delay | :max_attempts |
71
+ # | -------------------------------------------- | ------------------------------------------------- | -------- | ------------- |
72
+ # | bundle_task_complete | {Client#describe_bundle_tasks} | 15 | 40 |
73
+ # | conversion_task_cancelled | {Client#describe_conversion_tasks} | 15 | 40 |
74
+ # | conversion_task_completed | {Client#describe_conversion_tasks} | 15 | 40 |
75
+ # | conversion_task_deleted | {Client#describe_conversion_tasks} | 15 | 40 |
76
+ # | customer_gateway_available | {Client#describe_customer_gateways} | 15 | 40 |
77
+ # | export_task_cancelled | {Client#describe_export_tasks} | 15 | 40 |
78
+ # | export_task_completed | {Client#describe_export_tasks} | 15 | 40 |
79
+ # | image_available | {Client#describe_images} | 15 | 40 |
80
+ # | image_exists | {Client#describe_images} | 15 | 40 |
81
+ # | instance_exists | {Client#describe_instances} | 5 | 40 |
82
+ # | instance_running | {Client#describe_instances} | 15 | 40 |
83
+ # | instance_status_ok | {Client#describe_instance_status} | 15 | 40 |
84
+ # | instance_stopped | {Client#describe_instances} | 15 | 40 |
85
+ # | instance_terminated | {Client#describe_instances} | 15 | 40 |
86
+ # | internet_gateway_exists | {Client#describe_internet_gateways} | 5 | 6 |
87
+ # | key_pair_exists | {Client#describe_key_pairs} | 5 | 6 |
88
+ # | nat_gateway_available | {Client#describe_nat_gateways} | 15 | 40 |
89
+ # | nat_gateway_deleted | {Client#describe_nat_gateways} | 15 | 40 |
90
+ # | network_interface_available | {Client#describe_network_interfaces} | 20 | 10 |
91
+ # | password_data_available | {Client#get_password_data} | 15 | 40 |
92
+ # | security_group_exists | {Client#describe_security_groups} | 5 | 6 |
93
+ # | security_group_vpc_association_associated | {Client#describe_security_group_vpc_associations} | 10 | 7 |
94
+ # | security_group_vpc_association_disassociated | {Client#describe_security_group_vpc_associations} | 10 | 7 |
95
+ # | snapshot_completed | {Client#describe_snapshots} | 15 | 40 |
96
+ # | snapshot_imported | {Client#describe_import_snapshot_tasks} | 15 | 40 |
97
+ # | spot_instance_request_fulfilled | {Client#describe_spot_instance_requests} | 15 | 40 |
98
+ # | store_image_task_complete | {Client#describe_store_image_tasks} | 5 | 40 |
99
+ # | subnet_available | {Client#describe_subnets} | 15 | 40 |
100
+ # | system_status_ok | {Client#describe_instance_status} | 15 | 40 |
101
+ # | volume_available | {Client#describe_volumes} | 15 | 40 |
102
+ # | volume_deleted | {Client#describe_volumes} | 15 | 40 |
103
+ # | volume_in_use | {Client#describe_volumes} | 15 | 40 |
104
+ # | vpc_available | {Client#describe_vpcs} | 15 | 40 |
105
+ # | vpc_exists | {Client#describe_vpcs} | 1 | 5 |
106
+ # | vpc_peering_connection_deleted | {Client#describe_vpc_peering_connections} | 15 | 40 |
107
+ # | vpc_peering_connection_exists | {Client#describe_vpc_peering_connections} | 15 | 40 |
108
+ # | vpn_connection_available | {Client#describe_vpn_connections} | 15 | 40 |
109
+ # | vpn_connection_deleted | {Client#describe_vpn_connections} | 15 | 40 |
108
110
  #
109
111
  module Waiters
110
112
 
@@ -1042,6 +1044,112 @@ module Aws::EC2
1042
1044
 
1043
1045
  end
1044
1046
 
1047
+ class SecurityGroupVpcAssociationAssociated
1048
+
1049
+ # @param [Hash] options
1050
+ # @option options [required, Client] :client
1051
+ # @option options [Integer] :max_attempts (7)
1052
+ # @option options [Integer] :delay (10)
1053
+ # @option options [Proc] :before_attempt
1054
+ # @option options [Proc] :before_wait
1055
+ def initialize(options)
1056
+ @client = options.fetch(:client)
1057
+ @waiter = Aws::Waiters::Waiter.new({
1058
+ max_attempts: 7,
1059
+ delay: 10,
1060
+ poller: Aws::Waiters::Poller.new(
1061
+ operation_name: :describe_security_group_vpc_associations,
1062
+ acceptors: [
1063
+ {
1064
+ "expected" => "associated",
1065
+ "matcher" => "pathAll",
1066
+ "state" => "success",
1067
+ "argument" => "security_group_vpc_associations[].state"
1068
+ },
1069
+ {
1070
+ "expected" => "associating",
1071
+ "matcher" => "pathAny",
1072
+ "state" => "retry",
1073
+ "argument" => "security_group_vpc_associations[].state"
1074
+ },
1075
+ {
1076
+ "expected" => "association-failed",
1077
+ "matcher" => "pathAny",
1078
+ "state" => "failure",
1079
+ "argument" => "security_group_vpc_associations[].state"
1080
+ }
1081
+ ]
1082
+ )
1083
+ }.merge(options))
1084
+ end
1085
+
1086
+ # @option (see Client#describe_security_group_vpc_associations)
1087
+ # @return (see Client#describe_security_group_vpc_associations)
1088
+ def wait(params = {})
1089
+ @waiter.wait(client: @client, params: params)
1090
+ end
1091
+
1092
+ # @api private
1093
+ attr_reader :waiter
1094
+
1095
+ end
1096
+
1097
+ class SecurityGroupVpcAssociationDisassociated
1098
+
1099
+ # @param [Hash] options
1100
+ # @option options [required, Client] :client
1101
+ # @option options [Integer] :max_attempts (7)
1102
+ # @option options [Integer] :delay (10)
1103
+ # @option options [Proc] :before_attempt
1104
+ # @option options [Proc] :before_wait
1105
+ def initialize(options)
1106
+ @client = options.fetch(:client)
1107
+ @waiter = Aws::Waiters::Waiter.new({
1108
+ max_attempts: 7,
1109
+ delay: 10,
1110
+ poller: Aws::Waiters::Poller.new(
1111
+ operation_name: :describe_security_group_vpc_associations,
1112
+ acceptors: [
1113
+ {
1114
+ "expected" => "disassociated",
1115
+ "matcher" => "pathAll",
1116
+ "state" => "success",
1117
+ "argument" => "security_group_vpc_associations[].state"
1118
+ },
1119
+ {
1120
+ "expected" => "disassociating",
1121
+ "matcher" => "pathAny",
1122
+ "state" => "retry",
1123
+ "argument" => "security_group_vpc_associations[].state"
1124
+ },
1125
+ {
1126
+ "expected" => "disassociation-failed",
1127
+ "matcher" => "pathAny",
1128
+ "state" => "failure",
1129
+ "argument" => "security_group_vpc_associations[].state"
1130
+ },
1131
+ {
1132
+ "expected" => true,
1133
+ "matcher" => "path",
1134
+ "state" => "success",
1135
+ "argument" => "length(security_group_vpc_associations[]) == `0`"
1136
+ }
1137
+ ]
1138
+ )
1139
+ }.merge(options))
1140
+ end
1141
+
1142
+ # @option (see Client#describe_security_group_vpc_associations)
1143
+ # @return (see Client#describe_security_group_vpc_associations)
1144
+ def wait(params = {})
1145
+ @waiter.wait(client: @client, params: params)
1146
+ end
1147
+
1148
+ # @api private
1149
+ attr_reader :waiter
1150
+
1151
+ end
1152
+
1045
1153
  class SnapshotCompleted
1046
1154
 
1047
1155
  # @param [Hash] options
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.402.0'
81
+ GEM_VERSION = '1.547.0'
80
82
 
81
83
  end
84
+
85
+ require_relative 'aws-sdk-ec2/customizations'
@@ -0,0 +1,108 @@
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#subnet_id-instance_method
57
+ def subnet_id: () -> ::String
58
+
59
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#service_managed-instance_method
60
+ def service_managed: () -> ("alb" | "nlb" | "rnat")
61
+
62
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#instance_id-instance_method
63
+ def instance_id: () -> ::String
64
+
65
+ def client: () -> Client
66
+
67
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#load-instance_method
68
+ def load: () -> self
69
+ alias reload load
70
+
71
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#data-instance_method
72
+ def data: () -> Types::Address
73
+
74
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#data_loaded?-instance_method
75
+ def data_loaded?: () -> bool
76
+
77
+
78
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#associate-instance_method
79
+ def associate: (
80
+ ?allocation_id: ::String,
81
+ ?instance_id: ::String,
82
+ ?dry_run: bool,
83
+ ?network_interface_id: ::String,
84
+ ?private_ip_address: ::String,
85
+ ?allow_reassociation: bool
86
+ ) -> Types::AssociateAddressResult
87
+ | (?Hash[Symbol, untyped]) -> Types::AssociateAddressResult
88
+
89
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#disassociate-instance_method
90
+ def disassociate: (
91
+ ?association_id: ::String,
92
+ ?dry_run: bool
93
+ ) -> ::Aws::EmptyStructure
94
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
95
+
96
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/ClassicAddress.html#release-instance_method
97
+ def release: (
98
+ ?allocation_id: ::String,
99
+ ?network_border_group: ::String,
100
+ ?dry_run: bool
101
+ ) -> ::Aws::EmptyStructure
102
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
103
+
104
+ class Collection < ::Aws::Resources::Collection[ClassicAddress]
105
+ end
106
+ end
107
+ end
108
+ end