zergrush_cf 0.0.9 → 0.0.10
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 +8 -8
- data/lib/zergrush_cf/init.rb +31 -8
- data/lib/zergrush_cf/version.rb +1 -1
- data/zergrush_cf.gemspec +2 -1
- metadata +18 -4
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZTkyNGMzNzAzMzM0MzVmYzA3ZDJkNDY2ZmQ5ZDZhMDZjNDlhMjFjZA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
NmQxMjRhNjAzMWI2MzgyYjM2YjgxZTY5OTQxMzcyNDViMTRkYzA3ZQ==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
MjQ1MGMwOWQ5ZTExMDAwMGQ5NTI1MzYwNjI4YWNlYzg3N2FkYmFmNGEyYmI4
|
10
|
+
YjM5ODQzNGE1ZGJjNGYyNzNlYWQyZTI3ZDQ3MWIwYWUxZmI2NDc0ZDI3MTk0
|
11
|
+
OGQ4NzEzZTQzODYwNDA4NjE0ZWQxMzkyNGE4MTczNWJjNGJkMTc=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MDlmMDNkYzNlMDk2ZWFiZThlNWU0M2E2Y2QyNTZkYTQ1ZGZmNzYyNmU5YTcx
|
14
|
+
ZjYwODQ4OTc5NTk2ZmRiZWI5ODg0ZjA1N2RkYTc3MWMxMjFjZDA3MDQ3YWM4
|
15
|
+
OTA0MTc5YjM3MmM5OGUwMGViY2M1YTM4YTY2MWJmMTcwZTgxYjc=
|
data/lib/zergrush_cf/init.rb
CHANGED
@@ -29,6 +29,7 @@ require 'awesome_print'
|
|
29
29
|
require 'securerandom'
|
30
30
|
require 'bunny'
|
31
31
|
require 'time'
|
32
|
+
require 'retries'
|
32
33
|
require_relative 'renderer'
|
33
34
|
|
34
35
|
class CloudFormation < ZergGemPlugin::Plugin "/driver"
|
@@ -85,6 +86,10 @@ class CloudFormation < ZergGemPlugin::Plugin "/driver"
|
|
85
86
|
end
|
86
87
|
end
|
87
88
|
|
89
|
+
Excon.defaults[:connect_timeout] = 600
|
90
|
+
Excon.defaults[:read_timeout] = 600
|
91
|
+
Excon.defaults[:write_timeout] = 600
|
92
|
+
|
88
93
|
cf = Fog::AWS::CloudFormation.new(
|
89
94
|
:aws_access_key_id => aws_key_id,
|
90
95
|
:aws_secret_access_key => aws_secret,
|
@@ -112,10 +117,15 @@ class CloudFormation < ZergGemPlugin::Plugin "/driver"
|
|
112
117
|
outputs_info = cf.describe_stacks({ 'StackName' => stack_name })
|
113
118
|
end
|
114
119
|
|
115
|
-
events =
|
116
|
-
|
117
|
-
sleep 1
|
120
|
+
events = nil
|
121
|
+
with_retries(:max_tries => 10, :base_sleep_seconds => 3, :max_sleep_seconds => 20, :rescue => Fog::AWS::CloudFormation::Error) {
|
118
122
|
events = cf.describe_stack_events(stack_name).body['StackEvents']
|
123
|
+
}
|
124
|
+
while events == nil do
|
125
|
+
sleep 3
|
126
|
+
with_retries(:max_tries => 10, :base_sleep_seconds => 3, :max_sleep_seconds => 20, :rescue => Fog::AWS::CloudFormation::Error) {
|
127
|
+
events = cf.describe_stack_events(stack_name).body['StackEvents']
|
128
|
+
}
|
119
129
|
end
|
120
130
|
|
121
131
|
event_counter = 0
|
@@ -124,7 +134,9 @@ class CloudFormation < ZergGemPlugin::Plugin "/driver"
|
|
124
134
|
logRabbitEvents(events.first(events.length - event_counter), rabbit_objects, eval_params(task_hash["vm"]["driver"]["driveroptions"][0]["rabbit"]))
|
125
135
|
event_counter = events.length
|
126
136
|
|
127
|
-
|
137
|
+
with_retries(:max_tries => 10, :base_sleep_seconds => 3, :max_sleep_seconds => 20, :rescue => Fog::AWS::CloudFormation::Error) {
|
138
|
+
events = cf.describe_stack_events(stack_name).body['StackEvents']
|
139
|
+
}
|
128
140
|
outputs_info = cf.describe_stacks({ 'StackName' => stack_name })
|
129
141
|
if outputs_info.body["Stacks"][0]["StackStatus"] == "CREATE_COMPLETE"
|
130
142
|
logEvents(events.first(events.length - event_counter))
|
@@ -172,6 +184,10 @@ class CloudFormation < ZergGemPlugin::Plugin "/driver"
|
|
172
184
|
# run fog cleanup on the stack.
|
173
185
|
stack_name = "#{task_name}"
|
174
186
|
|
187
|
+
Excon.defaults[:connect_timeout] = 600
|
188
|
+
Excon.defaults[:read_timeout] = 600
|
189
|
+
Excon.defaults[:write_timeout] = 600
|
190
|
+
|
175
191
|
cf = Fog::AWS::CloudFormation.new(
|
176
192
|
:aws_access_key_id => aws_key_id,
|
177
193
|
:aws_secret_access_key => aws_secret,
|
@@ -196,11 +212,16 @@ class CloudFormation < ZergGemPlugin::Plugin "/driver"
|
|
196
212
|
end
|
197
213
|
end
|
198
214
|
|
199
|
-
events =
|
215
|
+
events = nil
|
216
|
+
with_retries(:max_tries => 10, :base_sleep_seconds => 3, :max_sleep_seconds => 20, :rescue => Fog::AWS::CloudFormation::Error) {
|
217
|
+
events = cf.describe_stack_events(stack_name).body['StackEvents']
|
218
|
+
}
|
200
219
|
while events == nil do
|
201
|
-
sleep
|
220
|
+
sleep 3
|
202
221
|
begin
|
203
|
-
|
222
|
+
with_retries(:max_tries => 10, :base_sleep_seconds => 3, :max_sleep_seconds => 20, :rescue => Fog::AWS::CloudFormation::Error) {
|
223
|
+
events = cf.describe_stack_events(stack_name).body['StackEvents']
|
224
|
+
}
|
204
225
|
rescue Fog::AWS::CloudFormation::NotFound
|
205
226
|
rabbit_objects[:connection].close unless rabbit_objects == nil
|
206
227
|
return 0
|
@@ -214,7 +235,9 @@ class CloudFormation < ZergGemPlugin::Plugin "/driver"
|
|
214
235
|
|
215
236
|
event_counter = events.length
|
216
237
|
begin
|
217
|
-
|
238
|
+
with_retries(:max_tries => 10, :base_sleep_seconds => 3, :max_sleep_seconds => 20, :rescue => Fog::AWS::CloudFormation::Error) {
|
239
|
+
events = cf.describe_stack_events(stack_name).body['StackEvents']
|
240
|
+
}
|
218
241
|
outputs_info = cf.describe_stacks({ 'StackName' => stack_name })
|
219
242
|
rescue Fog::AWS::CloudFormation::NotFound
|
220
243
|
logEvents(events.first(events.length - event_counter))
|
data/lib/zergrush_cf/version.rb
CHANGED
data/zergrush_cf.gemspec
CHANGED
@@ -17,10 +17,11 @@ Gem::Specification.new do |s|
|
|
17
17
|
|
18
18
|
s.add_development_dependency "bundler", ">= 1.0.0"
|
19
19
|
s.add_development_dependency "rake"
|
20
|
-
s.add_development_dependency "zergrush", ">= 0.0.
|
20
|
+
s.add_development_dependency "zergrush", ">= 0.0.17"
|
21
21
|
|
22
22
|
s.add_dependency "fog", ">=1.20.0"
|
23
23
|
s.add_dependency "bunny", ">=1.2.1"
|
24
|
+
s.add_dependency "retries", ">=0.0.5"
|
24
25
|
|
25
26
|
s.files = `git ls-files`.split("\n")
|
26
27
|
s.executables = `git ls-files`.split("\n").map{|f| f =~ /^bin\/(.*)/ ? $1 : nil}.compact
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zergrush_cf
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- MTN Satellite Communications
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-06-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - ! '>='
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.0.
|
47
|
+
version: 0.0.17
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.0.
|
54
|
+
version: 0.0.17
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: fog
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -80,6 +80,20 @@ dependencies:
|
|
80
80
|
- - ! '>='
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: 1.2.1
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: retries
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ! '>='
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 0.0.5
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ! '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 0.0.5
|
83
97
|
description: Amazon Cloud Formation driver for zergrush
|
84
98
|
email:
|
85
99
|
- Marat.Garafutdinov@mtnsat.com
|