elevage 0.1.0 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -1
  3. data/README.md +33 -11
  4. data/elevage.gemspec +15 -15
  5. data/features/archive +3 -22
  6. data/features/build.feature +2 -1
  7. data/features/generate.feature +3 -9
  8. data/features/health_env_failure.feature +2 -8
  9. data/features/health_failure.feature +1 -2
  10. data/features/health_success.feature +3 -9
  11. data/features/list.feature +3 -9
  12. data/features/step_definitions/elevage_steps.rb +2 -2
  13. data/lib/elevage/build.rb +4 -1
  14. data/lib/elevage/constants.rb +2 -2
  15. data/lib/elevage/environment.rb +66 -39
  16. data/lib/elevage/generate.rb +4 -3
  17. data/lib/elevage/health.rb +4 -0
  18. data/lib/elevage/new.rb +4 -2
  19. data/lib/elevage/platform.rb +11 -3
  20. data/lib/elevage/provisioner.rb +61 -21
  21. data/lib/elevage/provisionerrunqueue.rb +25 -10
  22. data/lib/elevage/templates/vcenter.yml.tt +7 -12
  23. data/lib/elevage/version.rb +1 -1
  24. data/lib/elevage.rb +5 -0
  25. metadata +58 -88
  26. data/.ruby-version +0 -1
  27. data/.yardoc/checksums +0 -12
  28. data/.yardoc/object_types +0 -0
  29. data/.yardoc/objects/root.dat +0 -0
  30. data/.yardoc/proxy_types +0 -0
  31. data/doc/Elevage/Build.html +0 -435
  32. data/doc/Elevage/CLI.html +0 -282
  33. data/doc/Elevage/Environment.html +0 -950
  34. data/doc/Elevage/Generate.html +0 -346
  35. data/doc/Elevage/Health.html +0 -359
  36. data/doc/Elevage/New.html +0 -411
  37. data/doc/Elevage/Platform.html +0 -1119
  38. data/doc/Elevage/Provisioner.html +0 -804
  39. data/doc/Elevage/ProvisionerRunQueue.html +0 -765
  40. data/doc/Elevage/Runner.html +0 -319
  41. data/doc/Elevage.html +0 -501
  42. data/doc/_index.html +0 -239
  43. data/doc/class_list.html +0 -58
  44. data/doc/css/common.css +0 -1
  45. data/doc/css/full_list.css +0 -57
  46. data/doc/css/style.css +0 -339
  47. data/doc/file.README.html +0 -187
  48. data/doc/file_list.html +0 -60
  49. data/doc/frames.html +0 -26
  50. data/doc/index.html +0 -187
  51. data/doc/js/app.js +0 -219
  52. data/doc/js/full_list.js +0 -181
  53. data/doc/js/jquery.js +0 -4
  54. data/doc/method_list.html +0 -369
  55. data/doc/top-level-namespace.html +0 -112
@@ -1,435 +0,0 @@
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: Elevage::Build
8
-
9
- &mdash; 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#!Elevage/Build.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 (B)</a> &raquo;
35
- <span class='title'><span class='object_link'><a href="../Elevage.html" title="Elevage (module)">Elevage</a></span></span>
36
- &raquo;
37
- <span class="title">Build</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: Elevage::Build
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">Thor::Group</span>
77
-
78
- <ul class="fullTree">
79
- <li>Object</li>
80
-
81
- <li class="next">Thor::Group</li>
82
-
83
- <li class="next">Elevage::Build</li>
84
-
85
- </ul>
86
- <a href="#" class="inheritanceTree">show all</a>
87
-
88
- </dd>
89
-
90
-
91
-
92
-
93
-
94
-
95
- <dt class="r2">Includes:</dt>
96
- <dd class="r2">Thor::Actions</dd>
97
-
98
-
99
-
100
-
101
-
102
- <dt class="r1 last">Defined in:</dt>
103
- <dd class="r1 last">lib/elevage/build.rb</dd>
104
-
105
- </dl>
106
- <div class="clear"></div>
107
-
108
- <h2>Overview</h2><div class="docstring">
109
- <div class="discussion">
110
-
111
- <p>Create new platform definition files and environments folder structure</p>
112
-
113
-
114
- </div>
115
- </div>
116
- <div class="tags">
117
-
118
-
119
- </div>
120
-
121
-
122
-
123
-
124
-
125
-
126
-
127
- <h2>
128
- Class Method Summary
129
- <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
130
- </h2>
131
-
132
- <ul class="summary">
133
-
134
- <li class="public ">
135
- <span class="summary_signature">
136
-
137
- <a href="#source_root-class_method" title="source_root (class method)">+ (Object) <strong>source_root</strong> </a>
138
-
139
-
140
-
141
- </span>
142
-
143
-
144
-
145
-
146
-
147
-
148
-
149
-
150
-
151
- <span class="summary_desc"><div class='inline'>
152
- <p>rubocop:enable LineLength.</p>
153
- </div></span>
154
-
155
- </li>
156
-
157
-
158
- </ul>
159
-
160
- <h2>
161
- Instance Method Summary
162
- <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
163
- </h2>
164
-
165
- <ul class="summary">
166
-
167
- <li class="public ">
168
- <span class="summary_signature">
169
-
170
- <a href="#build-instance_method" title="#build (instance method)">- (Object) <strong>build</strong> </a>
171
-
172
-
173
-
174
- </span>
175
-
176
-
177
-
178
-
179
-
180
-
181
-
182
-
183
-
184
- <span class="summary_desc"><div class='inline'>
185
- <p>rubocop:disable MethodLength, LineLength, CyclomaticComplexity,
186
- PerceivedComplexity.</p>
187
- </div></span>
188
-
189
- </li>
190
-
191
-
192
- </ul>
193
-
194
-
195
-
196
-
197
-
198
-
199
- <div id="class_method_details" class="method_details_list">
200
- <h2>Class Method Details</h2>
201
-
202
-
203
- <div class="method_details first">
204
- <h3 class="signature first" id="source_root-class_method">
205
-
206
- + (<tt>Object</tt>) <strong>source_root</strong>
207
-
208
-
209
-
210
-
211
-
212
- </h3><div class="docstring">
213
- <div class="discussion">
214
-
215
- <p>rubocop:enable LineLength</p>
216
-
217
-
218
- </div>
219
- </div>
220
- <div class="tags">
221
-
222
-
223
- </div><table class="source_code">
224
- <tr>
225
- <td>
226
- <pre class="lines">
227
-
228
-
229
- 33
230
- 34
231
- 35</pre>
232
- </td>
233
- <td>
234
- <pre class="code"><span class="info file"># File 'lib/elevage/build.rb', line 33</span>
235
-
236
- <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_source_root'>source_root</span>
237
- <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_dirname'>dirname</span><span class='lparen'>(</span><span class='kw'>__FILE__</span><span class='rparen'>)</span>
238
- <span class='kw'>end</span></pre>
239
- </td>
240
- </tr>
241
- </table>
242
- </div>
243
-
244
- </div>
245
-
246
- <div id="instance_method_details" class="method_details_list">
247
- <h2>Instance Method Details</h2>
248
-
249
-
250
- <div class="method_details first">
251
- <h3 class="signature first" id="build-instance_method">
252
-
253
- - (<tt>Object</tt>) <strong>build</strong>
254
-
255
-
256
-
257
-
258
-
259
- </h3><div class="docstring">
260
- <div class="discussion">
261
-
262
- <p>rubocop:disable MethodLength, LineLength, CyclomaticComplexity,
263
- PerceivedComplexity</p>
264
-
265
-
266
- </div>
267
- </div>
268
- <div class="tags">
269
-
270
-
271
- </div><table class="source_code">
272
- <tr>
273
- <td>
274
- <pre class="lines">
275
-
276
-
277
- 38
278
- 39
279
- 40
280
- 41
281
- 42
282
- 43
283
- 44
284
- 45
285
- 46
286
- 47
287
- 48
288
- 49
289
- 50
290
- 51
291
- 52
292
- 53
293
- 54
294
- 55
295
- 56
296
- 57
297
- 58
298
- 59
299
- 60
300
- 61
301
- 62
302
- 63
303
- 64
304
- 65
305
- 66
306
- 67
307
- 68
308
- 69
309
- 70
310
- 71
311
- 72
312
- 73
313
- 74
314
- 75
315
- 76
316
- 77
317
- 78
318
- 79
319
- 80
320
- 81
321
- 82
322
- 83
323
- 84
324
- 85
325
- 86
326
- 87
327
- 88
328
- 89
329
- 90
330
- 91
331
- 92
332
- 93
333
- 94
334
- 95
335
- 96
336
- 97
337
- 98
338
- 99
339
- 100
340
- 101
341
- 102
342
- 103
343
- 104
344
- 105
345
- 106</pre>
346
- </td>
347
- <td>
348
- <pre class="code"><span class="info file"># File 'lib/elevage/build.rb', line 38</span>
349
-
350
- <span class='kw'>def</span> <span class='id identifier rubyid_build'>build</span>
351
- <span class='comment'># Make the logfile directory if it doesn&#39;t exist
352
- </span> <span class='const'>Dir</span><span class='period'>.</span><span class='id identifier rubyid_mkdir'>mkdir</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:logfiles</span><span class='rbracket'>]</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='const'>Dir</span><span class='period'>.</span><span class='id identifier rubyid_exist?'>exist?</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:logfiles</span><span class='rbracket'>]</span><span class='rparen'>)</span>
353
-
354
- <span class='comment'># Fetch the environment and make sure it passes basic health checks
355
- </span> <span class='ivar'>@environment</span> <span class='op'>=</span> <span class='const'>Elevage</span><span class='op'>::</span><span class='const'>Environment</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_env'>env</span><span class='rparen'>)</span>
356
- <span class='id identifier rubyid_fail'>fail</span><span class='lparen'>(</span><span class='const'>IOError</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='ivar'>@environment</span><span class='period'>.</span><span class='id identifier rubyid_healthy?'>healthy?</span>
357
-
358
- <span class='comment'># =============================================================
359
- </span> <span class='comment'># Option sanity checking.
360
- </span> <span class='comment'>#
361
- </span> <span class='comment'># What are we going to reject as invalid options?
362
- </span> <span class='comment'>#
363
- </span> <span class='kw'>if</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:all</span><span class='rbracket'>]</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:tier</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:all</span><span class='rbracket'>]</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:component</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:tier</span><span class='rbracket'>]</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:component</span><span class='rbracket'>]</span>
364
- <span class='id identifier rubyid_warn'>warn</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>The --all, --tier and --component options may not be specified together.</span><span class='tstring_end'>&#39;</span></span>
365
- <span class='id identifier rubyid_exit'>exit</span> <span class='kw'>false</span>
366
- <span class='kw'>end</span>
367
-
368
- <span class='kw'>if</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:node</span><span class='rbracket'>]</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:component</span><span class='rbracket'>]</span>
369
- <span class='id identifier rubyid_warn'>warn</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>When requesting a --node you must specify which --component.</span><span class='tstring_end'>&#39;</span></span>
370
- <span class='id identifier rubyid_exit'>exit</span> <span class='kw'>false</span>
371
- <span class='kw'>end</span>
372
-
373
- <span class='kw'>unless</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:all</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:tier</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:component</span><span class='rbracket'>]</span>
374
- <span class='id identifier rubyid_warn'>warn</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>You must specify one of --all, --tier=&lt;tier&gt;, or --component=&lt;component&gt;</span><span class='tstring_end'>&#39;</span></span>
375
- <span class='id identifier rubyid_exit'>exit</span> <span class='kw'>false</span>
376
- <span class='kw'>end</span>
377
-
378
- <span class='comment'># Determine what, exactly, we&#39;re supposed to build
379
- </span> <span class='kw'>if</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:all</span><span class='rbracket'>]</span>
380
- <span class='comment'># =============================================================
381
- </span> <span class='comment'># Build ALL THE THINGS!
382
- </span> <span class='comment'>#
383
- </span> <span class='ivar'>@environment</span><span class='period'>.</span><span class='id identifier rubyid_provision'>provision</span><span class='lparen'>(</span><span class='label'>type:</span> <span class='symbol'>:all</span><span class='comma'>,</span>
384
- <span class='label'>options:</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
385
-
386
- <span class='kw'>elsif</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:tier</span><span class='rbracket'>]</span>
387
- <span class='comment'># =============================================================
388
- </span> <span class='comment'># Build most of the things...
389
- </span> <span class='comment'>#
390
- </span> <span class='kw'>if</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:tier</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_eql?'>eql?</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>tier</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
391
- <span class='id identifier rubyid_warn'>warn</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Was asked to build a tier, but was not told which one!</span><span class='tstring_end'>&#39;</span></span>
392
- <span class='id identifier rubyid_exit'>exit</span> <span class='kw'>false</span>
393
- <span class='kw'>end</span>
394
- <span class='ivar'>@environment</span><span class='period'>.</span><span class='id identifier rubyid_provision'>provision</span><span class='lparen'>(</span><span class='label'>type:</span> <span class='symbol'>:tier</span><span class='comma'>,</span>
395
- <span class='label'>tier:</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:tier</span><span class='rbracket'>]</span><span class='comma'>,</span>
396
- <span class='label'>options:</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
397
-
398
- <span class='kw'>elsif</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:component</span><span class='rbracket'>]</span>
399
- <span class='comment'># =============================================================
400
- </span> <span class='comment'># Build a few things...
401
- </span> <span class='comment'>#
402
- </span> <span class='kw'>if</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:component</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_eql?'>eql?</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>component</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
403
- <span class='id identifier rubyid_warn'>warn</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Was asked to build a component, but was not told which one!</span><span class='tstring_end'>&#39;</span></span>
404
- <span class='id identifier rubyid_exit'>exit</span> <span class='kw'>false</span>
405
- <span class='kw'>end</span>
406
- <span class='comment'># See if we&#39;re actually only supposed to build just one thing...
407
- </span> <span class='kw'>if</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:node</span><span class='rbracket'>]</span>
408
- <span class='ivar'>@environment</span><span class='period'>.</span><span class='id identifier rubyid_provision'>provision</span><span class='lparen'>(</span><span class='label'>type:</span> <span class='symbol'>:node</span><span class='comma'>,</span>
409
- <span class='label'>component:</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:component</span><span class='rbracket'>]</span><span class='comma'>,</span>
410
- <span class='label'>instance:</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:node</span><span class='rbracket'>]</span><span class='comma'>,</span>
411
- <span class='label'>options:</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
412
- <span class='kw'>else</span>
413
- <span class='ivar'>@environment</span><span class='period'>.</span><span class='id identifier rubyid_provision'>provision</span><span class='lparen'>(</span><span class='label'>type:</span> <span class='symbol'>:component</span><span class='comma'>,</span>
414
- <span class='label'>component:</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:component</span><span class='rbracket'>]</span><span class='comma'>,</span>
415
- <span class='label'>options:</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
416
- <span class='kw'>end</span>
417
- <span class='kw'>end</span>
418
- <span class='kw'>end</span></pre>
419
- </td>
420
- </tr>
421
- </table>
422
- </div>
423
-
424
- </div>
425
-
426
- </div>
427
-
428
- <div id="footer">
429
- Generated on Tue Nov 11 17:39:23 2014 by
430
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
431
- 0.8.7.6 (ruby-2.1.2).
432
- </div>
433
-
434
- </body>
435
- </html>