marathon_deploy 0.1.6 → 0.1.7
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/.gitignore +0 -1
- data/bin/expand_macros +0 -0
- data/bin/json2yaml +0 -0
- data/doc/MarathonDeploy/Application.html +906 -0
- data/doc/MarathonDeploy/Deployment.html +1348 -0
- data/doc/MarathonDeploy/Environment.html +480 -0
- data/doc/MarathonDeploy/Error/BadFormatError.html +131 -0
- data/doc/MarathonDeploy/Error/BadURLError.html +131 -0
- data/doc/MarathonDeploy/Error/DeploymentError.html +131 -0
- data/doc/MarathonDeploy/Error/IOError.html +131 -0
- data/doc/MarathonDeploy/Error/MarathonError.html +127 -0
- data/doc/MarathonDeploy/Error/MissingMarathonAttributesError.html +131 -0
- data/doc/MarathonDeploy/Error/TimeoutError.html +131 -0
- data/doc/MarathonDeploy/Error/UndefinedMacroError.html +131 -0
- data/doc/MarathonDeploy/Error/UnsupportedFileExtension.html +131 -0
- data/doc/MarathonDeploy/Error.html +115 -0
- data/doc/MarathonDeploy/HttpUtil.html +664 -0
- data/doc/MarathonDeploy/Macro.html +192 -0
- data/doc/MarathonDeploy/MarathonClient.html +615 -0
- data/doc/MarathonDeploy/MarathonDefaults.html +460 -0
- data/doc/MarathonDeploy/Utils.html +354 -0
- data/doc/MarathonDeploy/YamlJson.html +374 -0
- data/doc/MarathonDeploy.html +156 -0
- data/doc/_index.html +318 -0
- data/doc/class_list.html +58 -0
- data/doc/css/common.css +1 -0
- data/doc/css/full_list.css +57 -0
- data/doc/css/style.css +339 -0
- data/doc/file.README.html +223 -0
- data/doc/file_list.html +60 -0
- data/doc/frames.html +26 -0
- data/doc/index.html +223 -0
- data/doc/js/app.js +219 -0
- data/doc/js/full_list.js +181 -0
- data/doc/js/jquery.js +4 -0
- data/doc/method_list.html +393 -0
- data/doc/top-level-namespace.html +112 -0
- data/lib/marathon_deploy/application.rb +7 -7
- data/lib/marathon_deploy/version.rb +1 -1
- data/lib/marathon_deploy.rb +1 -0
- data/marathon_deploy.gemspec +1 -0
- metadata +52 -3
@@ -0,0 +1,615 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
4
|
+
<head>
|
5
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
6
|
+
<title>
|
7
|
+
Class: MarathonDeploy::MarathonClient
|
8
|
+
|
9
|
+
— Documentation by YARD 0.8.7.6
|
10
|
+
|
11
|
+
</title>
|
12
|
+
|
13
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
|
14
|
+
|
15
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
|
16
|
+
|
17
|
+
<script type="text/javascript" charset="utf-8">
|
18
|
+
hasFrames = window.top.frames.main ? true : false;
|
19
|
+
relpath = '../';
|
20
|
+
framesUrl = "../frames.html#!MarathonDeploy/MarathonClient.html";
|
21
|
+
</script>
|
22
|
+
|
23
|
+
|
24
|
+
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
25
|
+
|
26
|
+
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
|
27
|
+
|
28
|
+
|
29
|
+
</head>
|
30
|
+
<body>
|
31
|
+
<div id="header">
|
32
|
+
<div id="menu">
|
33
|
+
|
34
|
+
<a href="../_index.html">Index (M)</a> »
|
35
|
+
<span class='title'><span class='object_link'><a href="../MarathonDeploy.html" title="MarathonDeploy (module)">MarathonDeploy</a></span></span>
|
36
|
+
»
|
37
|
+
<span class="title">MarathonClient</span>
|
38
|
+
|
39
|
+
|
40
|
+
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
|
41
|
+
</div>
|
42
|
+
|
43
|
+
<div id="search">
|
44
|
+
|
45
|
+
<a class="full_list_link" id="class_list_link"
|
46
|
+
href="../class_list.html">
|
47
|
+
Class List
|
48
|
+
</a>
|
49
|
+
|
50
|
+
<a class="full_list_link" id="method_list_link"
|
51
|
+
href="../method_list.html">
|
52
|
+
Method List
|
53
|
+
</a>
|
54
|
+
|
55
|
+
<a class="full_list_link" id="file_list_link"
|
56
|
+
href="../file_list.html">
|
57
|
+
File List
|
58
|
+
</a>
|
59
|
+
|
60
|
+
</div>
|
61
|
+
<div class="clear"></div>
|
62
|
+
</div>
|
63
|
+
|
64
|
+
<iframe id="search_frame"></iframe>
|
65
|
+
|
66
|
+
<div id="content"><h1>Class: MarathonDeploy::MarathonClient
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
</h1>
|
71
|
+
|
72
|
+
<dl class="box">
|
73
|
+
|
74
|
+
<dt class="r1">Inherits:</dt>
|
75
|
+
<dd class="r1">
|
76
|
+
<span class="inheritName">Object</span>
|
77
|
+
|
78
|
+
<ul class="fullTree">
|
79
|
+
<li>Object</li>
|
80
|
+
|
81
|
+
<li class="next">MarathonDeploy::MarathonClient</li>
|
82
|
+
|
83
|
+
</ul>
|
84
|
+
<a href="#" class="inheritanceTree">show all</a>
|
85
|
+
|
86
|
+
</dd>
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
<dt class="r2 last">Defined in:</dt>
|
97
|
+
<dd class="r2 last">lib/marathon_deploy/marathon_client.rb</dd>
|
98
|
+
|
99
|
+
</dl>
|
100
|
+
<div class="clear"></div>
|
101
|
+
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
|
106
|
+
<h2>Instance Attribute Summary <small>(<a href="#" class="summary_toggle">collapse</a>)</small></h2>
|
107
|
+
<ul class="summary">
|
108
|
+
|
109
|
+
<li class="public ">
|
110
|
+
<span class="summary_signature">
|
111
|
+
|
112
|
+
<a href="#application-instance_method" title="#application (instance method)">- (Object) <strong>application</strong> </a>
|
113
|
+
|
114
|
+
|
115
|
+
|
116
|
+
</span>
|
117
|
+
|
118
|
+
|
119
|
+
|
120
|
+
|
121
|
+
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
<span class="summary_desc"><div class='inline'>
|
130
|
+
<p>Returns the value of attribute application.</p>
|
131
|
+
</div></span>
|
132
|
+
|
133
|
+
</li>
|
134
|
+
|
135
|
+
|
136
|
+
<li class="public ">
|
137
|
+
<span class="summary_signature">
|
138
|
+
|
139
|
+
<a href="#marathon_url-instance_method" title="#marathon_url (instance method)">- (Object) <strong>marathon_url</strong> </a>
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
</span>
|
144
|
+
|
145
|
+
|
146
|
+
|
147
|
+
|
148
|
+
<span class="note title readonly">readonly</span>
|
149
|
+
|
150
|
+
|
151
|
+
|
152
|
+
|
153
|
+
|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
|
158
|
+
<span class="summary_desc"><div class='inline'>
|
159
|
+
<p>Returns the value of attribute marathon_url.</p>
|
160
|
+
</div></span>
|
161
|
+
|
162
|
+
</li>
|
163
|
+
|
164
|
+
|
165
|
+
<li class="public ">
|
166
|
+
<span class="summary_signature">
|
167
|
+
|
168
|
+
<a href="#options-instance_method" title="#options (instance method)">- (Object) <strong>options</strong> </a>
|
169
|
+
|
170
|
+
|
171
|
+
|
172
|
+
</span>
|
173
|
+
|
174
|
+
|
175
|
+
|
176
|
+
|
177
|
+
<span class="note title readonly">readonly</span>
|
178
|
+
|
179
|
+
|
180
|
+
|
181
|
+
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
|
186
|
+
|
187
|
+
<span class="summary_desc"><div class='inline'>
|
188
|
+
<p>Returns the value of attribute options.</p>
|
189
|
+
</div></span>
|
190
|
+
|
191
|
+
</li>
|
192
|
+
|
193
|
+
|
194
|
+
</ul>
|
195
|
+
|
196
|
+
|
197
|
+
|
198
|
+
|
199
|
+
|
200
|
+
<h2>
|
201
|
+
Instance Method Summary
|
202
|
+
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
|
203
|
+
</h2>
|
204
|
+
|
205
|
+
<ul class="summary">
|
206
|
+
|
207
|
+
<li class="public ">
|
208
|
+
<span class="summary_signature">
|
209
|
+
|
210
|
+
<a href="#deploy-instance_method" title="#deploy (instance method)">- (Object) <strong>deploy</strong> </a>
|
211
|
+
|
212
|
+
|
213
|
+
|
214
|
+
</span>
|
215
|
+
|
216
|
+
|
217
|
+
|
218
|
+
|
219
|
+
|
220
|
+
|
221
|
+
|
222
|
+
|
223
|
+
|
224
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
225
|
+
|
226
|
+
</li>
|
227
|
+
|
228
|
+
|
229
|
+
<li class="public ">
|
230
|
+
<span class="summary_signature">
|
231
|
+
|
232
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">- (MarathonClient) <strong>initialize</strong>(url, options = {}) </a>
|
233
|
+
|
234
|
+
|
235
|
+
|
236
|
+
</span>
|
237
|
+
|
238
|
+
|
239
|
+
<span class="note title constructor">constructor</span>
|
240
|
+
|
241
|
+
|
242
|
+
|
243
|
+
|
244
|
+
|
245
|
+
|
246
|
+
|
247
|
+
|
248
|
+
<span class="summary_desc"><div class='inline'>
|
249
|
+
<p>TODO: Options will contain environment, datacenter.</p>
|
250
|
+
</div></span>
|
251
|
+
|
252
|
+
</li>
|
253
|
+
|
254
|
+
|
255
|
+
</ul>
|
256
|
+
|
257
|
+
|
258
|
+
<div id="constructor_details" class="method_details_list">
|
259
|
+
<h2>Constructor Details</h2>
|
260
|
+
|
261
|
+
<div class="method_details first">
|
262
|
+
<h3 class="signature first" id="initialize-instance_method">
|
263
|
+
|
264
|
+
- (<tt><span class='object_link'><a href="" title="MarathonDeploy::MarathonClient (class)">MarathonClient</a></span></tt>) <strong>initialize</strong>(url, options = {})
|
265
|
+
|
266
|
+
|
267
|
+
|
268
|
+
|
269
|
+
|
270
|
+
</h3><div class="docstring">
|
271
|
+
<div class="discussion">
|
272
|
+
|
273
|
+
<p>TODO: Options will contain environment, datacenter</p>
|
274
|
+
|
275
|
+
|
276
|
+
</div>
|
277
|
+
</div>
|
278
|
+
<div class="tags">
|
279
|
+
|
280
|
+
<p class="tag_title">Raises:</p>
|
281
|
+
<ul class="raise">
|
282
|
+
|
283
|
+
<li>
|
284
|
+
|
285
|
+
|
286
|
+
<span class='type'>(<tt><span class='object_link'><a href="Error/BadURLError.html" title="MarathonDeploy::Error::BadURLError (class)">Error::BadURLError</a></span></tt>)</span>
|
287
|
+
|
288
|
+
|
289
|
+
|
290
|
+
</li>
|
291
|
+
|
292
|
+
</ul>
|
293
|
+
|
294
|
+
</div><table class="source_code">
|
295
|
+
<tr>
|
296
|
+
<td>
|
297
|
+
<pre class="lines">
|
298
|
+
|
299
|
+
|
300
|
+
13
|
301
|
+
14
|
302
|
+
15
|
303
|
+
16
|
304
|
+
17
|
305
|
+
18
|
306
|
+
19
|
307
|
+
20
|
308
|
+
21
|
309
|
+
22
|
310
|
+
23
|
311
|
+
24
|
312
|
+
25
|
313
|
+
26
|
314
|
+
27</pre>
|
315
|
+
</td>
|
316
|
+
<td>
|
317
|
+
<pre class="code"><span class="info file"># File 'lib/marathon_deploy/marathon_client.rb', line 13</span>
|
318
|
+
|
319
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
320
|
+
|
321
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'>Error</span><span class='op'>::</span><span class='const'>BadURLError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>invalid url => </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_url'>url</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='id identifier rubyid_caller'>caller</span> <span class='kw'>if</span> <span class='lparen'>(</span><span class='op'>!</span><span class='const'>HttpUtil</span><span class='period'>.</span><span class='id identifier rubyid_valid_url'>valid_url</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
322
|
+
|
323
|
+
<span class='ivar'>@marathon_url</span> <span class='op'>=</span> <span class='const'>HttpUtil</span><span class='period'>.</span><span class='id identifier rubyid_clean_url'>clean_url</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='rparen'>)</span>
|
324
|
+
<span class='ivar'>@options</span> <span class='op'>=</span> <span class='id identifier rubyid_options'>options</span>
|
325
|
+
<span class='kw'>if</span> <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:username</span><span class='rbracket'>]</span> <span class='kw'>and</span> <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:password</span><span class='rbracket'>]</span>
|
326
|
+
<span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:basic_auth</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='lbrace'>{</span>
|
327
|
+
<span class='symbol'>:username</span> <span class='op'>=></span> <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:username</span><span class='rbracket'>]</span><span class='comma'>,</span>
|
328
|
+
<span class='symbol'>:password</span> <span class='op'>=></span> <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:password</span><span class='rbracket'>]</span>
|
329
|
+
<span class='rbrace'>}</span>
|
330
|
+
<span class='ivar'>@options</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:username</span><span class='rparen'>)</span>
|
331
|
+
<span class='ivar'>@options</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:password</span><span class='rparen'>)</span>
|
332
|
+
<span class='kw'>end</span>
|
333
|
+
<span class='kw'>end</span></pre>
|
334
|
+
</td>
|
335
|
+
</tr>
|
336
|
+
</table>
|
337
|
+
</div>
|
338
|
+
|
339
|
+
</div>
|
340
|
+
|
341
|
+
<div id="instance_attr_details" class="attr_details">
|
342
|
+
<h2>Instance Attribute Details</h2>
|
343
|
+
|
344
|
+
|
345
|
+
<span id="application=-instance_method"></span>
|
346
|
+
<div class="method_details first">
|
347
|
+
<h3 class="signature first" id="application-instance_method">
|
348
|
+
|
349
|
+
- (<tt>Object</tt>) <strong>application</strong>
|
350
|
+
|
351
|
+
|
352
|
+
|
353
|
+
|
354
|
+
|
355
|
+
</h3><div class="docstring">
|
356
|
+
<div class="discussion">
|
357
|
+
|
358
|
+
<p>Returns the value of attribute application</p>
|
359
|
+
|
360
|
+
|
361
|
+
</div>
|
362
|
+
</div>
|
363
|
+
<div class="tags">
|
364
|
+
|
365
|
+
|
366
|
+
</div><table class="source_code">
|
367
|
+
<tr>
|
368
|
+
<td>
|
369
|
+
<pre class="lines">
|
370
|
+
|
371
|
+
|
372
|
+
10
|
373
|
+
11
|
374
|
+
12</pre>
|
375
|
+
</td>
|
376
|
+
<td>
|
377
|
+
<pre class="code"><span class="info file"># File 'lib/marathon_deploy/marathon_client.rb', line 10</span>
|
378
|
+
|
379
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_application'>application</span>
|
380
|
+
<span class='ivar'>@application</span>
|
381
|
+
<span class='kw'>end</span></pre>
|
382
|
+
</td>
|
383
|
+
</tr>
|
384
|
+
</table>
|
385
|
+
</div>
|
386
|
+
|
387
|
+
|
388
|
+
<span id=""></span>
|
389
|
+
<div class="method_details ">
|
390
|
+
<h3 class="signature " id="marathon_url-instance_method">
|
391
|
+
|
392
|
+
- (<tt>Object</tt>) <strong>marathon_url</strong> <span class="extras">(readonly)</span>
|
393
|
+
|
394
|
+
|
395
|
+
|
396
|
+
|
397
|
+
|
398
|
+
</h3><div class="docstring">
|
399
|
+
<div class="discussion">
|
400
|
+
|
401
|
+
<p>Returns the value of attribute marathon_url</p>
|
402
|
+
|
403
|
+
|
404
|
+
</div>
|
405
|
+
</div>
|
406
|
+
<div class="tags">
|
407
|
+
|
408
|
+
|
409
|
+
</div><table class="source_code">
|
410
|
+
<tr>
|
411
|
+
<td>
|
412
|
+
<pre class="lines">
|
413
|
+
|
414
|
+
|
415
|
+
9
|
416
|
+
10
|
417
|
+
11</pre>
|
418
|
+
</td>
|
419
|
+
<td>
|
420
|
+
<pre class="code"><span class="info file"># File 'lib/marathon_deploy/marathon_client.rb', line 9</span>
|
421
|
+
|
422
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_marathon_url'>marathon_url</span>
|
423
|
+
<span class='ivar'>@marathon_url</span>
|
424
|
+
<span class='kw'>end</span></pre>
|
425
|
+
</td>
|
426
|
+
</tr>
|
427
|
+
</table>
|
428
|
+
</div>
|
429
|
+
|
430
|
+
|
431
|
+
<span id=""></span>
|
432
|
+
<div class="method_details ">
|
433
|
+
<h3 class="signature " id="options-instance_method">
|
434
|
+
|
435
|
+
- (<tt>Object</tt>) <strong>options</strong> <span class="extras">(readonly)</span>
|
436
|
+
|
437
|
+
|
438
|
+
|
439
|
+
|
440
|
+
|
441
|
+
</h3><div class="docstring">
|
442
|
+
<div class="discussion">
|
443
|
+
|
444
|
+
<p>Returns the value of attribute options</p>
|
445
|
+
|
446
|
+
|
447
|
+
</div>
|
448
|
+
</div>
|
449
|
+
<div class="tags">
|
450
|
+
|
451
|
+
|
452
|
+
</div><table class="source_code">
|
453
|
+
<tr>
|
454
|
+
<td>
|
455
|
+
<pre class="lines">
|
456
|
+
|
457
|
+
|
458
|
+
9
|
459
|
+
10
|
460
|
+
11</pre>
|
461
|
+
</td>
|
462
|
+
<td>
|
463
|
+
<pre class="code"><span class="info file"># File 'lib/marathon_deploy/marathon_client.rb', line 9</span>
|
464
|
+
|
465
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_options'>options</span>
|
466
|
+
<span class='ivar'>@options</span>
|
467
|
+
<span class='kw'>end</span></pre>
|
468
|
+
</td>
|
469
|
+
</tr>
|
470
|
+
</table>
|
471
|
+
</div>
|
472
|
+
|
473
|
+
</div>
|
474
|
+
|
475
|
+
|
476
|
+
<div id="instance_method_details" class="method_details_list">
|
477
|
+
<h2>Instance Method Details</h2>
|
478
|
+
|
479
|
+
|
480
|
+
<div class="method_details first">
|
481
|
+
<h3 class="signature first" id="deploy-instance_method">
|
482
|
+
|
483
|
+
- (<tt>Object</tt>) <strong>deploy</strong>
|
484
|
+
|
485
|
+
|
486
|
+
|
487
|
+
|
488
|
+
|
489
|
+
</h3><table class="source_code">
|
490
|
+
<tr>
|
491
|
+
<td>
|
492
|
+
<pre class="lines">
|
493
|
+
|
494
|
+
|
495
|
+
29
|
496
|
+
30
|
497
|
+
31
|
498
|
+
32
|
499
|
+
33
|
500
|
+
34
|
501
|
+
35
|
502
|
+
36
|
503
|
+
37
|
504
|
+
38
|
505
|
+
39
|
506
|
+
40
|
507
|
+
41
|
508
|
+
42
|
509
|
+
43
|
510
|
+
44
|
511
|
+
45
|
512
|
+
46
|
513
|
+
47
|
514
|
+
48
|
515
|
+
49
|
516
|
+
50
|
517
|
+
51
|
518
|
+
52
|
519
|
+
53
|
520
|
+
54
|
521
|
+
55
|
522
|
+
56
|
523
|
+
57
|
524
|
+
58
|
525
|
+
59
|
526
|
+
60
|
527
|
+
61
|
528
|
+
62
|
529
|
+
63
|
530
|
+
64
|
531
|
+
65
|
532
|
+
66
|
533
|
+
67
|
534
|
+
68
|
535
|
+
69
|
536
|
+
70
|
537
|
+
71
|
538
|
+
72
|
539
|
+
73
|
540
|
+
74
|
541
|
+
75
|
542
|
+
76
|
543
|
+
77
|
544
|
+
78</pre>
|
545
|
+
</td>
|
546
|
+
<td>
|
547
|
+
<pre class="code"><span class="info file"># File 'lib/marathon_deploy/marathon_client.rb', line 29</span>
|
548
|
+
|
549
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_deploy'>deploy</span>
|
550
|
+
|
551
|
+
<span class='id identifier rubyid_deployment'>deployment</span> <span class='op'>=</span> <span class='const'>Deployment</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='ivar'>@marathon_url</span><span class='comma'>,</span><span class='id identifier rubyid_application'>application</span><span class='rparen'>)</span>
|
552
|
+
|
553
|
+
<span class='gvar'>$LOG</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Checking if any deployments are already running for application </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_application'>application</span><span class='period'>.</span><span class='id identifier rubyid_id'>id</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
554
|
+
<span class='kw'>begin</span>
|
555
|
+
<span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_wait_for_application'>wait_for_application</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Deployment already running for application </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_application'>application</span><span class='period'>.</span><span class='id identifier rubyid_id'>id</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
556
|
+
<span class='kw'>rescue</span> <span class='const'>Timeout</span><span class='op'>::</span><span class='const'>Error</span> <span class='op'>=></span> <span class='id identifier rubyid_e'>e</span>
|
557
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'>Timeout</span><span class='op'>::</span><span class='const'>Error</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Timed out after </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_timeout'>timeout</span><span class='embexpr_end'>}</span><span class='tstring_content'>s waiting for existing deployment of </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_application'>application</span><span class='period'>.</span><span class='id identifier rubyid_id'>id</span><span class='embexpr_end'>}</span><span class='tstring_content'> to finish. Check marathon ui </span><span class='embexpr_beg'>#{</span><span class='ivar'>@marathon_url</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>/#deployments</span><span class='tstring_end'>'</span></span><span class='embexpr_end'>}</span><span class='tstring_content'> for stuck deployments!</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='id identifier rubyid_caller'>caller</span>
|
558
|
+
<span class='kw'>end</span>
|
559
|
+
|
560
|
+
<span class='gvar'>$LOG</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Starting deployment of </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_application'>application</span><span class='period'>.</span><span class='id identifier rubyid_id'>id</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
561
|
+
|
562
|
+
<span class='comment'># if application with this ID already exists
|
563
|
+
</span> <span class='kw'>if</span> <span class='lparen'>(</span><span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_applicationExists?'>applicationExists?</span><span class='rparen'>)</span>
|
564
|
+
<span class='gvar'>$LOG</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_application'>application</span><span class='period'>.</span><span class='id identifier rubyid_id'>id</span><span class='embexpr_end'>}</span><span class='tstring_content'> already exists. Performing update.</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
565
|
+
<span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_update_app'>update_app</span>
|
566
|
+
|
567
|
+
<span class='comment'># if no application with this ID is seen in marathon
|
568
|
+
</span> <span class='kw'>else</span>
|
569
|
+
<span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_create_app'>create_app</span>
|
570
|
+
<span class='kw'>end</span>
|
571
|
+
|
572
|
+
<span class='kw'>if</span> <span class='lparen'>(</span><span class='lparen'>(</span><span class='int'>300</span><span class='op'>..</span><span class='int'>999</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_code'>code</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
573
|
+
<span class='gvar'>$LOG</span><span class='period'>.</span><span class='id identifier rubyid_error'>error</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Deployment response body => </span><span class='tstring_end'>"</span></span> <span class='op'>+</span> <span class='const'>JSON</span><span class='period'>.</span><span class='id identifier rubyid_pretty_generate'>pretty_generate</span><span class='lparen'>(</span><span class='const'>JSON</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
574
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'>Error</span><span class='op'>::</span><span class='const'>DeploymentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Deployment returned response code </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_code'>code</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='id identifier rubyid_caller'>caller</span>
|
575
|
+
<span class='kw'>end</span>
|
576
|
+
|
577
|
+
<span class='gvar'>$LOG</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Deployment started for </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_application'>application</span><span class='period'>.</span><span class='id identifier rubyid_id'>id</span><span class='embexpr_end'>}</span><span class='tstring_content'> with deployment id </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_deploymentId'>deploymentId</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='lparen'>(</span><span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_deploymentId'>deploymentId</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span><span class='rparen'>)</span>
|
578
|
+
|
579
|
+
<span class='comment'># wait for deployment to finish, according to marathon deployment API call
|
580
|
+
</span> <span class='kw'>begin</span>
|
581
|
+
<span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_wait_for_deployment_id'>wait_for_deployment_id</span>
|
582
|
+
<span class='kw'>rescue</span> <span class='const'>Timeout</span><span class='op'>::</span><span class='const'>Error</span> <span class='op'>=></span> <span class='id identifier rubyid_e'>e</span>
|
583
|
+
<span class='gvar'>$LOG</span><span class='period'>.</span><span class='id identifier rubyid_error'>error</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Timed out waiting for deployment of </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_application'>application</span><span class='period'>.</span><span class='id identifier rubyid_id'>id</span><span class='embexpr_end'>}</span><span class='tstring_content'> to complete. Canceling deploymentId </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_deploymentId'>deploymentId</span><span class='embexpr_end'>}</span><span class='tstring_content'> and rolling back!</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
584
|
+
<span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_cancel'>cancel</span><span class='lparen'>(</span><span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_deploymentId'>deploymentId</span><span class='rparen'>)</span>
|
585
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'>Timeout</span><span class='op'>::</span><span class='const'>Error</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Deployment of </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_application'>application</span><span class='period'>.</span><span class='id identifier rubyid_id'>id</span><span class='embexpr_end'>}</span><span class='tstring_content'> timed out after </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_timeout'>timeout</span><span class='embexpr_end'>}</span><span class='tstring_content'> seconds</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='id identifier rubyid_caller'>caller</span>
|
586
|
+
<span class='kw'>end</span>
|
587
|
+
|
588
|
+
<span class='comment'># wait for all instances with defined health checks to be healthy
|
589
|
+
</span> <span class='kw'>if</span> <span class='lparen'>(</span><span class='op'>!</span><span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_health_checks_defined?'>health_checks_defined?</span><span class='rparen'>)</span>
|
590
|
+
<span class='gvar'>$LOG</span><span class='period'>.</span><span class='id identifier rubyid_warn'>warn</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>No health checks were defined for application </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_application'>application</span><span class='period'>.</span><span class='id identifier rubyid_id'>id</span><span class='embexpr_end'>}</span><span class='tstring_content'>. No health checking will be performed.</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
591
|
+
<span class='kw'>end</span>
|
592
|
+
|
593
|
+
<span class='kw'>begin</span>
|
594
|
+
<span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_wait_until_healthy'>wait_until_healthy</span>
|
595
|
+
<span class='kw'>rescue</span> <span class='const'>Timeout</span><span class='op'>::</span><span class='const'>Error</span> <span class='op'>=></span> <span class='id identifier rubyid_e'>e</span>
|
596
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'>Timeout</span><span class='op'>::</span><span class='const'>Error</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Timed out after </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_deployment'>deployment</span><span class='period'>.</span><span class='id identifier rubyid_healthcheck_timeout'>healthcheck_timeout</span><span class='embexpr_end'>}</span><span class='tstring_content'>s waiting for </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_application'>application</span><span class='period'>.</span><span class='id identifier rubyid_instances'>instances</span><span class='embexpr_end'>}</span><span class='tstring_content'> instances of </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_application'>application</span><span class='period'>.</span><span class='id identifier rubyid_id'>id</span><span class='embexpr_end'>}</span><span class='tstring_content'> to become healthy. Check marathon ui </span><span class='embexpr_beg'>#{</span><span class='ivar'>@marathon_url</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>/#deployments</span><span class='tstring_end'>'</span></span><span class='embexpr_end'>}</span><span class='tstring_content'> for more information.</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='id identifier rubyid_caller'>caller</span>
|
597
|
+
<span class='kw'>end</span>
|
598
|
+
<span class='kw'>end</span></pre>
|
599
|
+
</td>
|
600
|
+
</tr>
|
601
|
+
</table>
|
602
|
+
</div>
|
603
|
+
|
604
|
+
</div>
|
605
|
+
|
606
|
+
</div>
|
607
|
+
|
608
|
+
<div id="footer">
|
609
|
+
Generated on Thu Aug 6 12:50:37 2015 by
|
610
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
611
|
+
0.8.7.6 (ruby-2.2.0).
|
612
|
+
</div>
|
613
|
+
|
614
|
+
</body>
|
615
|
+
</html>
|