aws-sdk-ec2 1.5.0 → 1.6.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.
- checksums.yaml +4 -4
- data/lib/aws-sdk-ec2.rb +1 -1
- data/lib/aws-sdk-ec2/classic_address.rb +104 -9
- data/lib/aws-sdk-ec2/client.rb +1 -1
- data/lib/aws-sdk-ec2/dhcp_options.rb +97 -2
- data/lib/aws-sdk-ec2/image.rb +118 -23
- data/lib/aws-sdk-ec2/instance.rb +147 -52
- data/lib/aws-sdk-ec2/internet_gateway.rb +97 -2
- data/lib/aws-sdk-ec2/key_pair.rb +97 -2
- data/lib/aws-sdk-ec2/key_pair_info.rb +96 -1
- data/lib/aws-sdk-ec2/network_acl.rb +102 -7
- data/lib/aws-sdk-ec2/network_interface.rb +121 -26
- data/lib/aws-sdk-ec2/network_interface_association.rb +100 -5
- data/lib/aws-sdk-ec2/placement_group.rb +97 -2
- data/lib/aws-sdk-ec2/route.rb +106 -11
- data/lib/aws-sdk-ec2/route_table.rb +106 -11
- data/lib/aws-sdk-ec2/route_table_association.rb +102 -7
- data/lib/aws-sdk-ec2/security_group.rb +102 -7
- data/lib/aws-sdk-ec2/snapshot.rb +110 -15
- data/lib/aws-sdk-ec2/subnet.rb +107 -12
- data/lib/aws-sdk-ec2/tag.rb +96 -1
- data/lib/aws-sdk-ec2/volume.rb +106 -11
- data/lib/aws-sdk-ec2/vpc.rb +105 -10
- data/lib/aws-sdk-ec2/vpc_address.rb +105 -10
- data/lib/aws-sdk-ec2/vpc_peering_connection.rb +104 -9
- metadata +2 -2
@@ -33,45 +33,45 @@ module Aws::EC2
|
|
33
33
|
# The ID of the instance that the address is associated with (if any).
|
34
34
|
# @return [String]
|
35
35
|
def instance_id
|
36
|
-
data
|
36
|
+
data[:instance_id]
|
37
37
|
end
|
38
38
|
|
39
39
|
# The Elastic IP address.
|
40
40
|
# @return [String]
|
41
41
|
def public_ip
|
42
|
-
data
|
42
|
+
data[:public_ip]
|
43
43
|
end
|
44
44
|
|
45
45
|
# The ID representing the association of the address with an instance in
|
46
46
|
# a VPC.
|
47
47
|
# @return [String]
|
48
48
|
def association_id
|
49
|
-
data
|
49
|
+
data[:association_id]
|
50
50
|
end
|
51
51
|
|
52
52
|
# Indicates whether this Elastic IP address is for use with instances in
|
53
53
|
# EC2-Classic (`standard`) or instances in a VPC (`vpc`).
|
54
54
|
# @return [String]
|
55
55
|
def domain
|
56
|
-
data
|
56
|
+
data[:domain]
|
57
57
|
end
|
58
58
|
|
59
59
|
# The ID of the network interface.
|
60
60
|
# @return [String]
|
61
61
|
def network_interface_id
|
62
|
-
data
|
62
|
+
data[:network_interface_id]
|
63
63
|
end
|
64
64
|
|
65
65
|
# The ID of the AWS account that owns the network interface.
|
66
66
|
# @return [String]
|
67
67
|
def network_interface_owner_id
|
68
|
-
data
|
68
|
+
data[:network_interface_owner_id]
|
69
69
|
end
|
70
70
|
|
71
71
|
# The private IP address associated with the Elastic IP address.
|
72
72
|
# @return [String]
|
73
73
|
def private_ip_address
|
74
|
-
data
|
74
|
+
data[:private_ip_address]
|
75
75
|
end
|
76
76
|
|
77
77
|
# @!endgroup
|
@@ -109,6 +109,101 @@ module Aws::EC2
|
|
109
109
|
!!@data
|
110
110
|
end
|
111
111
|
|
112
|
+
# @deprecated Use [Aws::EC2::Client] #wait_until instead
|
113
|
+
#
|
114
|
+
# Waiter polls an API operation until a resource enters a desired
|
115
|
+
# state.
|
116
|
+
#
|
117
|
+
# @note The waiting operation is performed on a copy. The original resource remains unchanged
|
118
|
+
#
|
119
|
+
# ## Basic Usage
|
120
|
+
#
|
121
|
+
# Waiter will polls until it is successful, it fails by
|
122
|
+
# entering a terminal state, or until a maximum number of attempts
|
123
|
+
# are made.
|
124
|
+
#
|
125
|
+
# # polls in a loop until condition is true
|
126
|
+
# resource.wait_until(options) {|resource| condition}
|
127
|
+
#
|
128
|
+
# ## Example
|
129
|
+
#
|
130
|
+
# instance.wait_until(max_attempts:10, delay:5) {|instance| instance.state.name == 'running' }
|
131
|
+
#
|
132
|
+
# ## Configuration
|
133
|
+
#
|
134
|
+
# You can configure the maximum number of polling attempts, and the
|
135
|
+
# delay (in seconds) between each polling attempt. The waiting condition is set
|
136
|
+
# by passing a block to {#wait_until}:
|
137
|
+
#
|
138
|
+
# # poll for ~25 seconds
|
139
|
+
# resource.wait_until(max_attempts:5,delay:5) {|resource|...}
|
140
|
+
#
|
141
|
+
# ## Callbacks
|
142
|
+
#
|
143
|
+
# You can be notified before each polling attempt and before each
|
144
|
+
# delay. If you throw `:success` or `:failure` from these callbacks,
|
145
|
+
# it will terminate the waiter.
|
146
|
+
#
|
147
|
+
# started_at = Time.now
|
148
|
+
# # poll for 1 hour, instead of a number of attempts
|
149
|
+
# proc = Proc.new do |attempts, response|
|
150
|
+
# throw :failure if Time.now - started_at > 3600
|
151
|
+
# end
|
152
|
+
#
|
153
|
+
# # disable max attempts
|
154
|
+
# instance.wait_until(before_wait:proc, max_attempts:nil) {...}
|
155
|
+
#
|
156
|
+
# ## Handling Errors
|
157
|
+
#
|
158
|
+
# When a waiter is successful, it returns the Resource. When a waiter
|
159
|
+
# fails, it raises an error.
|
160
|
+
#
|
161
|
+
# begin
|
162
|
+
# resource.wait_until(...)
|
163
|
+
# rescue Aws::Waiters::Errors::WaiterFailed
|
164
|
+
# # resource did not enter the desired state in time
|
165
|
+
# end
|
166
|
+
#
|
167
|
+
#
|
168
|
+
# @yield param [Resource] resource to be used in the waiting condition
|
169
|
+
#
|
170
|
+
# @raise [Aws::Waiters::Errors::FailureStateError] Raised when the waiter terminates
|
171
|
+
# because the waiter has entered a state that it will not transition
|
172
|
+
# out of, preventing success.
|
173
|
+
#
|
174
|
+
# yet successful.
|
175
|
+
#
|
176
|
+
# @raise [Aws::Waiters::Errors::UnexpectedError] Raised when an error is encountered
|
177
|
+
# while polling for a resource that is not expected.
|
178
|
+
#
|
179
|
+
# @raise [NotImplementedError] Raised when the resource does not
|
180
|
+
#
|
181
|
+
# @option options [Integer] :max_attempts (10) Maximum number of
|
182
|
+
# attempts
|
183
|
+
# @option options [Integer] :delay (10) Delay between each
|
184
|
+
# attempt in seconds
|
185
|
+
# @option options [Proc] :before_attempt (nil) Callback
|
186
|
+
# invoked before each attempt
|
187
|
+
# @option options [Proc] :before_wait (nil) Callback
|
188
|
+
# invoked before each wait
|
189
|
+
# @return [Resource] if the waiter was successful
|
190
|
+
def wait_until(options = {}, &block)
|
191
|
+
self_copy = self.dup
|
192
|
+
attempts = 0
|
193
|
+
options[:max_attempts] = 10 unless options.key?(:max_attempts)
|
194
|
+
options[:delay] ||= 10
|
195
|
+
options[:poller] = Proc.new do
|
196
|
+
attempts += 1
|
197
|
+
if block.call(self_copy)
|
198
|
+
[:success, self_copy]
|
199
|
+
else
|
200
|
+
self_copy.reload unless attempts == options[:max_attempts]
|
201
|
+
:retry
|
202
|
+
end
|
203
|
+
end
|
204
|
+
Aws::Waiters::Waiter.new(options).wait({})
|
205
|
+
end
|
206
|
+
|
112
207
|
# @!group Actions
|
113
208
|
|
114
209
|
# @example Request syntax with placeholder values
|
@@ -173,7 +268,7 @@ module Aws::EC2
|
|
173
268
|
# `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
|
174
269
|
# @return [EmptyStructure]
|
175
270
|
def release(options = {})
|
176
|
-
options = options.merge(allocation_id: data
|
271
|
+
options = options.merge(allocation_id: data[:allocation_id])
|
177
272
|
resp = @client.release_address(options)
|
178
273
|
resp.data
|
179
274
|
end
|
@@ -182,9 +277,9 @@ module Aws::EC2
|
|
182
277
|
|
183
278
|
# @return [NetworkInterfaceAssociation, nil]
|
184
279
|
def association
|
185
|
-
if data
|
280
|
+
if data[:association_id]
|
186
281
|
NetworkInterfaceAssociation.new(
|
187
|
-
id: data
|
282
|
+
id: data[:association_id],
|
188
283
|
client: @client
|
189
284
|
)
|
190
285
|
else
|
@@ -35,32 +35,32 @@ module Aws::EC2
|
|
35
35
|
# returned when describing an active VPC peering connection.
|
36
36
|
# @return [Types::VpcPeeringConnectionVpcInfo]
|
37
37
|
def accepter_vpc_info
|
38
|
-
data
|
38
|
+
data[:accepter_vpc_info]
|
39
39
|
end
|
40
40
|
|
41
41
|
# The time that an unaccepted VPC peering connection will expire.
|
42
42
|
# @return [Time]
|
43
43
|
def expiration_time
|
44
|
-
data
|
44
|
+
data[:expiration_time]
|
45
45
|
end
|
46
46
|
|
47
47
|
# Information about the requester VPC. CIDR block information is only
|
48
48
|
# returned when describing an active VPC peering connection.
|
49
49
|
# @return [Types::VpcPeeringConnectionVpcInfo]
|
50
50
|
def requester_vpc_info
|
51
|
-
data
|
51
|
+
data[:requester_vpc_info]
|
52
52
|
end
|
53
53
|
|
54
54
|
# The status of the VPC peering connection.
|
55
55
|
# @return [Types::VpcPeeringConnectionStateReason]
|
56
56
|
def status
|
57
|
-
data
|
57
|
+
data[:status]
|
58
58
|
end
|
59
59
|
|
60
60
|
# Any tags assigned to the resource.
|
61
61
|
# @return [Array<Types::Tag>]
|
62
62
|
def tags
|
63
|
-
data
|
63
|
+
data[:tags]
|
64
64
|
end
|
65
65
|
|
66
66
|
# @!endgroup
|
@@ -130,6 +130,101 @@ module Aws::EC2
|
|
130
130
|
})
|
131
131
|
end
|
132
132
|
|
133
|
+
# @deprecated Use [Aws::EC2::Client] #wait_until instead
|
134
|
+
#
|
135
|
+
# Waiter polls an API operation until a resource enters a desired
|
136
|
+
# state.
|
137
|
+
#
|
138
|
+
# @note The waiting operation is performed on a copy. The original resource remains unchanged
|
139
|
+
#
|
140
|
+
# ## Basic Usage
|
141
|
+
#
|
142
|
+
# Waiter will polls until it is successful, it fails by
|
143
|
+
# entering a terminal state, or until a maximum number of attempts
|
144
|
+
# are made.
|
145
|
+
#
|
146
|
+
# # polls in a loop until condition is true
|
147
|
+
# resource.wait_until(options) {|resource| condition}
|
148
|
+
#
|
149
|
+
# ## Example
|
150
|
+
#
|
151
|
+
# instance.wait_until(max_attempts:10, delay:5) {|instance| instance.state.name == 'running' }
|
152
|
+
#
|
153
|
+
# ## Configuration
|
154
|
+
#
|
155
|
+
# You can configure the maximum number of polling attempts, and the
|
156
|
+
# delay (in seconds) between each polling attempt. The waiting condition is set
|
157
|
+
# by passing a block to {#wait_until}:
|
158
|
+
#
|
159
|
+
# # poll for ~25 seconds
|
160
|
+
# resource.wait_until(max_attempts:5,delay:5) {|resource|...}
|
161
|
+
#
|
162
|
+
# ## Callbacks
|
163
|
+
#
|
164
|
+
# You can be notified before each polling attempt and before each
|
165
|
+
# delay. If you throw `:success` or `:failure` from these callbacks,
|
166
|
+
# it will terminate the waiter.
|
167
|
+
#
|
168
|
+
# started_at = Time.now
|
169
|
+
# # poll for 1 hour, instead of a number of attempts
|
170
|
+
# proc = Proc.new do |attempts, response|
|
171
|
+
# throw :failure if Time.now - started_at > 3600
|
172
|
+
# end
|
173
|
+
#
|
174
|
+
# # disable max attempts
|
175
|
+
# instance.wait_until(before_wait:proc, max_attempts:nil) {...}
|
176
|
+
#
|
177
|
+
# ## Handling Errors
|
178
|
+
#
|
179
|
+
# When a waiter is successful, it returns the Resource. When a waiter
|
180
|
+
# fails, it raises an error.
|
181
|
+
#
|
182
|
+
# begin
|
183
|
+
# resource.wait_until(...)
|
184
|
+
# rescue Aws::Waiters::Errors::WaiterFailed
|
185
|
+
# # resource did not enter the desired state in time
|
186
|
+
# end
|
187
|
+
#
|
188
|
+
#
|
189
|
+
# @yield param [Resource] resource to be used in the waiting condition
|
190
|
+
#
|
191
|
+
# @raise [Aws::Waiters::Errors::FailureStateError] Raised when the waiter terminates
|
192
|
+
# because the waiter has entered a state that it will not transition
|
193
|
+
# out of, preventing success.
|
194
|
+
#
|
195
|
+
# yet successful.
|
196
|
+
#
|
197
|
+
# @raise [Aws::Waiters::Errors::UnexpectedError] Raised when an error is encountered
|
198
|
+
# while polling for a resource that is not expected.
|
199
|
+
#
|
200
|
+
# @raise [NotImplementedError] Raised when the resource does not
|
201
|
+
#
|
202
|
+
# @option options [Integer] :max_attempts (10) Maximum number of
|
203
|
+
# attempts
|
204
|
+
# @option options [Integer] :delay (10) Delay between each
|
205
|
+
# attempt in seconds
|
206
|
+
# @option options [Proc] :before_attempt (nil) Callback
|
207
|
+
# invoked before each attempt
|
208
|
+
# @option options [Proc] :before_wait (nil) Callback
|
209
|
+
# invoked before each wait
|
210
|
+
# @return [Resource] if the waiter was successful
|
211
|
+
def wait_until(options = {}, &block)
|
212
|
+
self_copy = self.dup
|
213
|
+
attempts = 0
|
214
|
+
options[:max_attempts] = 10 unless options.key?(:max_attempts)
|
215
|
+
options[:delay] ||= 10
|
216
|
+
options[:poller] = Proc.new do
|
217
|
+
attempts += 1
|
218
|
+
if block.call(self_copy)
|
219
|
+
[:success, self_copy]
|
220
|
+
else
|
221
|
+
self_copy.reload unless attempts == options[:max_attempts]
|
222
|
+
:retry
|
223
|
+
end
|
224
|
+
end
|
225
|
+
Aws::Waiters::Waiter.new(options).wait({})
|
226
|
+
end
|
227
|
+
|
133
228
|
# @!group Actions
|
134
229
|
|
135
230
|
# @example Request syntax with placeholder values
|
@@ -190,9 +285,9 @@ module Aws::EC2
|
|
190
285
|
|
191
286
|
# @return [Vpc, nil]
|
192
287
|
def accepter_vpc
|
193
|
-
if data
|
288
|
+
if data[:accepter_vpc_info][:vpc_id]
|
194
289
|
Vpc.new(
|
195
|
-
id: data
|
290
|
+
id: data[:accepter_vpc_info][:vpc_id],
|
196
291
|
client: @client
|
197
292
|
)
|
198
293
|
else
|
@@ -202,9 +297,9 @@ module Aws::EC2
|
|
202
297
|
|
203
298
|
# @return [Vpc, nil]
|
204
299
|
def requester_vpc
|
205
|
-
if data
|
300
|
+
if data[:requester_vpc_info][:vpc_id]
|
206
301
|
Vpc.new(
|
207
|
-
id: data
|
302
|
+
id: data[:requester_vpc_info][:vpc_id],
|
208
303
|
client: @client
|
209
304
|
)
|
210
305
|
else
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-ec2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Amazon Web Services
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-09-
|
11
|
+
date: 2017-09-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sigv4
|