elevage 0.1.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 +7 -0
- data/.coveralls.yml +1 -0
- data/.gitignore +21 -0
- data/.rubocop.yml +8 -0
- data/.ruby-version +1 -0
- data/.simplecov +8 -0
- data/.travis.yml +3 -0
- data/.yardoc/checksums +12 -0
- data/.yardoc/object_types +0 -0
- data/.yardoc/objects/root.dat +0 -0
- data/.yardoc/proxy_types +0 -0
- data/Gemfile +4 -0
- data/Guardfile +10 -0
- data/LICENSE.txt +203 -0
- data/README.md +112 -0
- data/Rakefile +20 -0
- data/bin/elevage +4 -0
- data/coverage/.resultset.json.lock +0 -0
- data/doc/Elevage/Build.html +435 -0
- data/doc/Elevage/CLI.html +282 -0
- data/doc/Elevage/Environment.html +950 -0
- data/doc/Elevage/Generate.html +346 -0
- data/doc/Elevage/Health.html +359 -0
- data/doc/Elevage/New.html +411 -0
- data/doc/Elevage/Platform.html +1119 -0
- data/doc/Elevage/Provisioner.html +804 -0
- data/doc/Elevage/ProvisionerRunQueue.html +765 -0
- data/doc/Elevage/Runner.html +319 -0
- data/doc/Elevage.html +501 -0
- data/doc/_index.html +239 -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 +187 -0
- data/doc/file_list.html +60 -0
- data/doc/frames.html +26 -0
- data/doc/index.html +187 -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 +369 -0
- data/doc/top-level-namespace.html +112 -0
- data/elevage.gemspec +39 -0
- data/features/archive +314 -0
- data/features/build.feature +237 -0
- data/features/elevage.feature +24 -0
- data/features/generate.feature +235 -0
- data/features/health_env_failure.feature +292 -0
- data/features/health_failure.feature +291 -0
- data/features/health_success.feature +279 -0
- data/features/list.feature +315 -0
- data/features/new.feature +68 -0
- data/features/step_definitions/elevage_steps.rb +27 -0
- data/features/support/env.rb +9 -0
- data/lib/elevage/build.rb +109 -0
- data/lib/elevage/constants.rb +113 -0
- data/lib/elevage/environment.rb +223 -0
- data/lib/elevage/generate.rb +48 -0
- data/lib/elevage/health.rb +27 -0
- data/lib/elevage/new.rb +30 -0
- data/lib/elevage/platform.rb +105 -0
- data/lib/elevage/provisioner.rb +169 -0
- data/lib/elevage/provisionerrunqueue.rb +114 -0
- data/lib/elevage/runner.rb +39 -0
- data/lib/elevage/templates/compute.yml.tt +18 -0
- data/lib/elevage/templates/environment.yml.tt +20 -0
- data/lib/elevage/templates/network.yml.tt +16 -0
- data/lib/elevage/templates/platform.yml.tt +110 -0
- data/lib/elevage/templates/vcenter.yml.tt +77 -0
- data/lib/elevage/version.rb +4 -0
- data/lib/elevage.rb +45 -0
- data/spec/spec_helper.rb +4 -0
- metadata +357 -0
@@ -0,0 +1,950 @@
|
|
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::Environment
|
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#!Elevage/Environment.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 (E)</a> »
|
35
|
+
<span class='title'><span class='object_link'><a href="../Elevage.html" title="Elevage (module)">Elevage</a></span></span>
|
36
|
+
»
|
37
|
+
<span class="title">Environment</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::Environment
|
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">Elevage::Environment</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/elevage/environment.rb</dd>
|
98
|
+
|
99
|
+
</dl>
|
100
|
+
<div class="clear"></div>
|
101
|
+
|
102
|
+
<h2>Overview</h2><div class="docstring">
|
103
|
+
<div class="discussion">
|
104
|
+
|
105
|
+
<p>Environment class</p>
|
106
|
+
|
107
|
+
|
108
|
+
</div>
|
109
|
+
</div>
|
110
|
+
<div class="tags">
|
111
|
+
|
112
|
+
|
113
|
+
</div>
|
114
|
+
|
115
|
+
|
116
|
+
|
117
|
+
<h2>Instance Attribute Summary <small>(<a href="#" class="summary_toggle">collapse</a>)</small></h2>
|
118
|
+
<ul class="summary">
|
119
|
+
|
120
|
+
<li class="public ">
|
121
|
+
<span class="summary_signature">
|
122
|
+
|
123
|
+
<a href="#components-instance_method" title="#components (instance method)">- (Object) <strong>components</strong> </a>
|
124
|
+
|
125
|
+
|
126
|
+
|
127
|
+
</span>
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
|
136
|
+
|
137
|
+
|
138
|
+
|
139
|
+
|
140
|
+
<span class="summary_desc"><div class='inline'>
|
141
|
+
<p>Returns the value of attribute components.</p>
|
142
|
+
</div></span>
|
143
|
+
|
144
|
+
</li>
|
145
|
+
|
146
|
+
|
147
|
+
<li class="public ">
|
148
|
+
<span class="summary_signature">
|
149
|
+
|
150
|
+
<a href="#name-instance_method" title="#name (instance method)">- (Object) <strong>name</strong> </a>
|
151
|
+
|
152
|
+
|
153
|
+
|
154
|
+
</span>
|
155
|
+
|
156
|
+
|
157
|
+
|
158
|
+
|
159
|
+
|
160
|
+
|
161
|
+
|
162
|
+
|
163
|
+
|
164
|
+
|
165
|
+
|
166
|
+
|
167
|
+
<span class="summary_desc"><div class='inline'>
|
168
|
+
<p>Returns the value of attribute name.</p>
|
169
|
+
</div></span>
|
170
|
+
|
171
|
+
</li>
|
172
|
+
|
173
|
+
|
174
|
+
<li class="public ">
|
175
|
+
<span class="summary_signature">
|
176
|
+
|
177
|
+
<a href="#nodenameconvention-instance_method" title="#nodenameconvention (instance method)">- (Object) <strong>nodenameconvention</strong> </a>
|
178
|
+
|
179
|
+
|
180
|
+
|
181
|
+
</span>
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
|
186
|
+
|
187
|
+
|
188
|
+
|
189
|
+
|
190
|
+
|
191
|
+
|
192
|
+
|
193
|
+
|
194
|
+
<span class="summary_desc"><div class='inline'>
|
195
|
+
<p>Returns the value of attribute nodenameconvention.</p>
|
196
|
+
</div></span>
|
197
|
+
|
198
|
+
</li>
|
199
|
+
|
200
|
+
|
201
|
+
<li class="public ">
|
202
|
+
<span class="summary_signature">
|
203
|
+
|
204
|
+
<a href="#vcenter-instance_method" title="#vcenter (instance method)">- (Object) <strong>vcenter</strong> </a>
|
205
|
+
|
206
|
+
|
207
|
+
|
208
|
+
</span>
|
209
|
+
|
210
|
+
|
211
|
+
|
212
|
+
|
213
|
+
|
214
|
+
|
215
|
+
|
216
|
+
|
217
|
+
|
218
|
+
|
219
|
+
|
220
|
+
|
221
|
+
<span class="summary_desc"><div class='inline'>
|
222
|
+
<p>Returns the value of attribute vcenter.</p>
|
223
|
+
</div></span>
|
224
|
+
|
225
|
+
</li>
|
226
|
+
|
227
|
+
|
228
|
+
</ul>
|
229
|
+
|
230
|
+
|
231
|
+
|
232
|
+
|
233
|
+
|
234
|
+
<h2>
|
235
|
+
Instance Method Summary
|
236
|
+
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
|
237
|
+
</h2>
|
238
|
+
|
239
|
+
<ul class="summary">
|
240
|
+
|
241
|
+
<li class="public ">
|
242
|
+
<span class="summary_signature">
|
243
|
+
|
244
|
+
<a href="#healthy%3F-instance_method" title="#healthy? (instance method)">- (Boolean) <strong>healthy?</strong> </a>
|
245
|
+
|
246
|
+
|
247
|
+
|
248
|
+
</span>
|
249
|
+
|
250
|
+
|
251
|
+
|
252
|
+
|
253
|
+
|
254
|
+
|
255
|
+
|
256
|
+
|
257
|
+
|
258
|
+
<span class="summary_desc"><div class='inline'>
|
259
|
+
<p>rubocop:disable MethodLength, LineLength, CyclomaticComplexity,
|
260
|
+
PerceivedComplexity.</p>
|
261
|
+
</div></span>
|
262
|
+
|
263
|
+
</li>
|
264
|
+
|
265
|
+
|
266
|
+
<li class="public ">
|
267
|
+
<span class="summary_signature">
|
268
|
+
|
269
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">- (Environment) <strong>initialize</strong>(env) </a>
|
270
|
+
|
271
|
+
|
272
|
+
|
273
|
+
</span>
|
274
|
+
|
275
|
+
|
276
|
+
<span class="note title constructor">constructor</span>
|
277
|
+
|
278
|
+
|
279
|
+
|
280
|
+
|
281
|
+
|
282
|
+
|
283
|
+
|
284
|
+
|
285
|
+
<span class="summary_desc"><div class='inline'>
|
286
|
+
<p>rubocop:disable LineLength.</p>
|
287
|
+
</div></span>
|
288
|
+
|
289
|
+
</li>
|
290
|
+
|
291
|
+
|
292
|
+
<li class="public ">
|
293
|
+
<span class="summary_signature">
|
294
|
+
|
295
|
+
<a href="#list_nodes-instance_method" title="#list_nodes (instance method)">- (Object) <strong>list_nodes</strong> </a>
|
296
|
+
|
297
|
+
|
298
|
+
|
299
|
+
</span>
|
300
|
+
|
301
|
+
|
302
|
+
|
303
|
+
|
304
|
+
|
305
|
+
|
306
|
+
|
307
|
+
|
308
|
+
|
309
|
+
<span class="summary_desc"><div class='inline'>
|
310
|
+
<p>Public: Environment class method Returns multiline string = IP, fqdn,
|
311
|
+
runlist.</p>
|
312
|
+
</div></span>
|
313
|
+
|
314
|
+
</li>
|
315
|
+
|
316
|
+
|
317
|
+
<li class="public ">
|
318
|
+
<span class="summary_signature">
|
319
|
+
|
320
|
+
<a href="#provision-instance_method" title="#provision (instance method)">- (Object) <strong>provision</strong>(type: all, tier: nil, component: nil, instance: nil, options: nil) </a>
|
321
|
+
|
322
|
+
|
323
|
+
|
324
|
+
</span>
|
325
|
+
|
326
|
+
|
327
|
+
|
328
|
+
|
329
|
+
|
330
|
+
|
331
|
+
|
332
|
+
|
333
|
+
|
334
|
+
<span class="summary_desc"><div class='inline'>
|
335
|
+
<p>Public: method to request provisioning of all or a portion of the
|
336
|
+
environment rubocop:disable MethodLength, LineLength, CyclomaticComplexity,
|
337
|
+
PerceivedComplexity.</p>
|
338
|
+
</div></span>
|
339
|
+
|
340
|
+
</li>
|
341
|
+
|
342
|
+
|
343
|
+
<li class="public ">
|
344
|
+
<span class="summary_signature">
|
345
|
+
|
346
|
+
<a href="#to_s-instance_method" title="#to_s (instance method)">- (Object) <strong>to_s</strong> </a>
|
347
|
+
|
348
|
+
|
349
|
+
|
350
|
+
</span>
|
351
|
+
|
352
|
+
|
353
|
+
|
354
|
+
|
355
|
+
|
356
|
+
|
357
|
+
|
358
|
+
|
359
|
+
|
360
|
+
<span class="summary_desc"><div class='inline'>
|
361
|
+
<p>Public: basic class puts string output.</p>
|
362
|
+
</div></span>
|
363
|
+
|
364
|
+
</li>
|
365
|
+
|
366
|
+
|
367
|
+
</ul>
|
368
|
+
|
369
|
+
|
370
|
+
<div id="constructor_details" class="method_details_list">
|
371
|
+
<h2>Constructor Details</h2>
|
372
|
+
|
373
|
+
<div class="method_details first">
|
374
|
+
<h3 class="signature first" id="initialize-instance_method">
|
375
|
+
|
376
|
+
- (<tt><span class='object_link'><a href="" title="Elevage::Environment (class)">Environment</a></span></tt>) <strong>initialize</strong>(env)
|
377
|
+
|
378
|
+
|
379
|
+
|
380
|
+
|
381
|
+
|
382
|
+
</h3><div class="docstring">
|
383
|
+
<div class="discussion">
|
384
|
+
|
385
|
+
<p>rubocop:disable LineLength</p>
|
386
|
+
|
387
|
+
|
388
|
+
</div>
|
389
|
+
</div>
|
390
|
+
<div class="tags">
|
391
|
+
|
392
|
+
|
393
|
+
</div><table class="source_code">
|
394
|
+
<tr>
|
395
|
+
<td>
|
396
|
+
<pre class="lines">
|
397
|
+
|
398
|
+
|
399
|
+
18
|
400
|
+
19
|
401
|
+
20
|
402
|
+
21
|
403
|
+
22
|
404
|
+
23
|
405
|
+
24
|
406
|
+
25
|
407
|
+
26
|
408
|
+
27
|
409
|
+
28
|
410
|
+
29
|
411
|
+
30
|
412
|
+
31
|
413
|
+
32</pre>
|
414
|
+
</td>
|
415
|
+
<td>
|
416
|
+
<pre class="code"><span class="info file"># File 'lib/elevage/environment.rb', line 18</span>
|
417
|
+
|
418
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_env'>env</span><span class='rparen'>)</span>
|
419
|
+
<span class='comment'># Confirm environment has been defined in the platform
|
420
|
+
</span> <span class='id identifier rubyid_platform'>platform</span> <span class='op'>=</span> <span class='const'>Elevage</span><span class='op'>::</span><span class='const'>Platform</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
|
421
|
+
<span class='id identifier rubyid_fail'>fail</span><span class='lparen'>(</span><span class='const'>IOError</span><span class='comma'>,</span> <span class='const'>ERR</span><span class='lbracket'>[</span><span class='symbol'>:env_not_defined</span><span class='rbracket'>]</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_platform'>platform</span><span class='period'>.</span><span class='id identifier rubyid_environments'>environments</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_env'>env</span><span class='rparen'>)</span>
|
422
|
+
<span class='comment'># Confirm environment file exists
|
423
|
+
</span> <span class='id identifier rubyid_envfile'>envfile</span> <span class='op'>=</span> <span class='const'>ENV_FOLDER</span> <span class='op'>+</span> <span class='id identifier rubyid_env'>env</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>.yml</span><span class='tstring_end'>'</span></span>
|
424
|
+
<span class='id identifier rubyid_fail'>fail</span><span class='lparen'>(</span><span class='const'>IOError</span><span class='comma'>,</span> <span class='const'>ERR</span><span class='lbracket'>[</span><span class='symbol'>:no_env_file</span><span class='rbracket'>]</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_env_file_exists?'>env_file_exists?</span><span class='lparen'>(</span><span class='id identifier rubyid_envfile'>envfile</span><span class='rparen'>)</span>
|
425
|
+
<span class='comment'># Build environment hash from environment and platform defintion files
|
426
|
+
</span> <span class='id identifier rubyid_environment'>environment</span> <span class='op'>=</span> <span class='id identifier rubyid_build_env'>build_env</span><span class='lparen'>(</span><span class='id identifier rubyid_env'>env</span><span class='comma'>,</span> <span class='const'>YAML</span><span class='period'>.</span><span class='id identifier rubyid_load_file'>load_file</span><span class='lparen'>(</span><span class='id identifier rubyid_envfile'>envfile</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>environment</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_platform'>platform</span><span class='rparen'>)</span>
|
427
|
+
<span class='comment'># Populate class variables
|
428
|
+
</span> <span class='ivar'>@name</span> <span class='op'>=</span> <span class='id identifier rubyid_env'>env</span>
|
429
|
+
<span class='ivar'>@vcenter</span> <span class='op'>=</span> <span class='id identifier rubyid_environment'>environment</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>vcenter</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span>
|
430
|
+
<span class='ivar'>@components</span> <span class='op'>=</span> <span class='id identifier rubyid_environment'>environment</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>components</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span>
|
431
|
+
<span class='ivar'>@nodenameconvention</span> <span class='op'>=</span> <span class='id identifier rubyid_platform'>platform</span><span class='period'>.</span><span class='id identifier rubyid_nodenameconvention'>nodenameconvention</span>
|
432
|
+
<span class='kw'>end</span></pre>
|
433
|
+
</td>
|
434
|
+
</tr>
|
435
|
+
</table>
|
436
|
+
</div>
|
437
|
+
|
438
|
+
</div>
|
439
|
+
|
440
|
+
<div id="instance_attr_details" class="attr_details">
|
441
|
+
<h2>Instance Attribute Details</h2>
|
442
|
+
|
443
|
+
|
444
|
+
<span id="components=-instance_method"></span>
|
445
|
+
<div class="method_details first">
|
446
|
+
<h3 class="signature first" id="components-instance_method">
|
447
|
+
|
448
|
+
- (<tt>Object</tt>) <strong>components</strong>
|
449
|
+
|
450
|
+
|
451
|
+
|
452
|
+
|
453
|
+
|
454
|
+
</h3><div class="docstring">
|
455
|
+
<div class="discussion">
|
456
|
+
|
457
|
+
<p>Returns the value of attribute components</p>
|
458
|
+
|
459
|
+
|
460
|
+
</div>
|
461
|
+
</div>
|
462
|
+
<div class="tags">
|
463
|
+
|
464
|
+
|
465
|
+
</div><table class="source_code">
|
466
|
+
<tr>
|
467
|
+
<td>
|
468
|
+
<pre class="lines">
|
469
|
+
|
470
|
+
|
471
|
+
14
|
472
|
+
15
|
473
|
+
16</pre>
|
474
|
+
</td>
|
475
|
+
<td>
|
476
|
+
<pre class="code"><span class="info file"># File 'lib/elevage/environment.rb', line 14</span>
|
477
|
+
|
478
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_components'>components</span>
|
479
|
+
<span class='ivar'>@components</span>
|
480
|
+
<span class='kw'>end</span></pre>
|
481
|
+
</td>
|
482
|
+
</tr>
|
483
|
+
</table>
|
484
|
+
</div>
|
485
|
+
|
486
|
+
|
487
|
+
<span id="name=-instance_method"></span>
|
488
|
+
<div class="method_details ">
|
489
|
+
<h3 class="signature " id="name-instance_method">
|
490
|
+
|
491
|
+
- (<tt>Object</tt>) <strong>name</strong>
|
492
|
+
|
493
|
+
|
494
|
+
|
495
|
+
|
496
|
+
|
497
|
+
</h3><div class="docstring">
|
498
|
+
<div class="discussion">
|
499
|
+
|
500
|
+
<p>Returns the value of attribute name</p>
|
501
|
+
|
502
|
+
|
503
|
+
</div>
|
504
|
+
</div>
|
505
|
+
<div class="tags">
|
506
|
+
|
507
|
+
|
508
|
+
</div><table class="source_code">
|
509
|
+
<tr>
|
510
|
+
<td>
|
511
|
+
<pre class="lines">
|
512
|
+
|
513
|
+
|
514
|
+
12
|
515
|
+
13
|
516
|
+
14</pre>
|
517
|
+
</td>
|
518
|
+
<td>
|
519
|
+
<pre class="code"><span class="info file"># File 'lib/elevage/environment.rb', line 12</span>
|
520
|
+
|
521
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_name'>name</span>
|
522
|
+
<span class='ivar'>@name</span>
|
523
|
+
<span class='kw'>end</span></pre>
|
524
|
+
</td>
|
525
|
+
</tr>
|
526
|
+
</table>
|
527
|
+
</div>
|
528
|
+
|
529
|
+
|
530
|
+
<span id="nodenameconvention=-instance_method"></span>
|
531
|
+
<div class="method_details ">
|
532
|
+
<h3 class="signature " id="nodenameconvention-instance_method">
|
533
|
+
|
534
|
+
- (<tt>Object</tt>) <strong>nodenameconvention</strong>
|
535
|
+
|
536
|
+
|
537
|
+
|
538
|
+
|
539
|
+
|
540
|
+
</h3><div class="docstring">
|
541
|
+
<div class="discussion">
|
542
|
+
|
543
|
+
<p>Returns the value of attribute nodenameconvention</p>
|
544
|
+
|
545
|
+
|
546
|
+
</div>
|
547
|
+
</div>
|
548
|
+
<div class="tags">
|
549
|
+
|
550
|
+
|
551
|
+
</div><table class="source_code">
|
552
|
+
<tr>
|
553
|
+
<td>
|
554
|
+
<pre class="lines">
|
555
|
+
|
556
|
+
|
557
|
+
15
|
558
|
+
16
|
559
|
+
17</pre>
|
560
|
+
</td>
|
561
|
+
<td>
|
562
|
+
<pre class="code"><span class="info file"># File 'lib/elevage/environment.rb', line 15</span>
|
563
|
+
|
564
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_nodenameconvention'>nodenameconvention</span>
|
565
|
+
<span class='ivar'>@nodenameconvention</span>
|
566
|
+
<span class='kw'>end</span></pre>
|
567
|
+
</td>
|
568
|
+
</tr>
|
569
|
+
</table>
|
570
|
+
</div>
|
571
|
+
|
572
|
+
|
573
|
+
<span id="vcenter=-instance_method"></span>
|
574
|
+
<div class="method_details ">
|
575
|
+
<h3 class="signature " id="vcenter-instance_method">
|
576
|
+
|
577
|
+
- (<tt>Object</tt>) <strong>vcenter</strong>
|
578
|
+
|
579
|
+
|
580
|
+
|
581
|
+
|
582
|
+
|
583
|
+
</h3><div class="docstring">
|
584
|
+
<div class="discussion">
|
585
|
+
|
586
|
+
<p>Returns the value of attribute vcenter</p>
|
587
|
+
|
588
|
+
|
589
|
+
</div>
|
590
|
+
</div>
|
591
|
+
<div class="tags">
|
592
|
+
|
593
|
+
|
594
|
+
</div><table class="source_code">
|
595
|
+
<tr>
|
596
|
+
<td>
|
597
|
+
<pre class="lines">
|
598
|
+
|
599
|
+
|
600
|
+
13
|
601
|
+
14
|
602
|
+
15</pre>
|
603
|
+
</td>
|
604
|
+
<td>
|
605
|
+
<pre class="code"><span class="info file"># File 'lib/elevage/environment.rb', line 13</span>
|
606
|
+
|
607
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_vcenter'>vcenter</span>
|
608
|
+
<span class='ivar'>@vcenter</span>
|
609
|
+
<span class='kw'>end</span></pre>
|
610
|
+
</td>
|
611
|
+
</tr>
|
612
|
+
</table>
|
613
|
+
</div>
|
614
|
+
|
615
|
+
</div>
|
616
|
+
|
617
|
+
|
618
|
+
<div id="instance_method_details" class="method_details_list">
|
619
|
+
<h2>Instance Method Details</h2>
|
620
|
+
|
621
|
+
|
622
|
+
<div class="method_details first">
|
623
|
+
<h3 class="signature first" id="healthy?-instance_method">
|
624
|
+
|
625
|
+
- (<tt>Boolean</tt>) <strong>healthy?</strong>
|
626
|
+
|
627
|
+
|
628
|
+
|
629
|
+
|
630
|
+
|
631
|
+
</h3><div class="docstring">
|
632
|
+
<div class="discussion">
|
633
|
+
|
634
|
+
<p>rubocop:disable MethodLength, LineLength, CyclomaticComplexity,
|
635
|
+
PerceivedComplexity</p>
|
636
|
+
|
637
|
+
|
638
|
+
</div>
|
639
|
+
</div>
|
640
|
+
<div class="tags">
|
641
|
+
|
642
|
+
<p class="tag_title">Returns:</p>
|
643
|
+
<ul class="return">
|
644
|
+
|
645
|
+
<li>
|
646
|
+
|
647
|
+
|
648
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
649
|
+
|
650
|
+
|
651
|
+
|
652
|
+
</li>
|
653
|
+
|
654
|
+
</ul>
|
655
|
+
|
656
|
+
</div><table class="source_code">
|
657
|
+
<tr>
|
658
|
+
<td>
|
659
|
+
<pre class="lines">
|
660
|
+
|
661
|
+
|
662
|
+
50
|
663
|
+
51
|
664
|
+
52
|
665
|
+
53
|
666
|
+
54
|
667
|
+
55
|
668
|
+
56
|
669
|
+
57
|
670
|
+
58
|
671
|
+
59
|
672
|
+
60
|
673
|
+
61
|
674
|
+
62
|
675
|
+
63
|
676
|
+
64
|
677
|
+
65
|
678
|
+
66
|
679
|
+
67
|
680
|
+
68
|
681
|
+
69
|
682
|
+
70
|
683
|
+
71
|
684
|
+
72
|
685
|
+
73
|
686
|
+
74
|
687
|
+
75
|
688
|
+
76
|
689
|
+
77
|
690
|
+
78</pre>
|
691
|
+
</td>
|
692
|
+
<td>
|
693
|
+
<pre class="code"><span class="info file"># File 'lib/elevage/environment.rb', line 50</span>
|
694
|
+
|
695
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_healthy?'>healthy?</span>
|
696
|
+
<span class='id identifier rubyid_platform'>platform</span> <span class='op'>=</span> <span class='const'>Elevage</span><span class='op'>::</span><span class='const'>Platform</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
|
697
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span>
|
698
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:invalid_env_vcenter</span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='ivar'>@vcenter</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
699
|
+
<span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_component'>component</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span>
|
700
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:invalid_env_network</span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>network</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
701
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:invalid_env_count</span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='lparen'>(</span><span class='int'>0</span><span class='op'>..</span><span class='const'>POOL_LIMIT</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_member?'>member?</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>count</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
702
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:invalid_env_compute</span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>compute</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
703
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:invalid_env_ip</span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>count</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span> <span class='op'>!=</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>addresses</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span>
|
704
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>addresses</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
705
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:invalid_env_ip</span><span class='rbracket'>]</span>
|
706
|
+
<span class='kw'>else</span>
|
707
|
+
<span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>addresses</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_ip'>ip</span><span class='op'>|</span> <span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:invalid_env_ip</span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='const'>Resolv</span><span class='op'>::</span><span class='const'>IPv4</span><span class='op'>::</span><span class='const'>Regex</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid_ip'>ip</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
|
708
|
+
<span class='kw'>end</span>
|
709
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:invalid_env_tier</span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='id identifier rubyid_platform'>platform</span><span class='period'>.</span><span class='id identifier rubyid_tiers'>tiers</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>tier</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
710
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:invalid_env_image</span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>image</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
711
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:invalid_env_port</span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>port</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Integer</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>port</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
712
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:invalid_env_runlist</span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>runlist</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>||</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>runlist</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
|
713
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:invalid_env_componentrole</span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>componentrole</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>#</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>componentrole</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span>
|
714
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:env_component_mismatch</span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='id identifier rubyid_platform'>platform</span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_component'>component</span><span class='rparen'>)</span>
|
715
|
+
<span class='kw'>end</span>
|
716
|
+
<span class='id identifier rubyid_health'>health</span> <span class='op'>+=</span> <span class='const'>MSG</span><span class='lbracket'>[</span><span class='symbol'>:env_component_mismatch</span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='id identifier rubyid_platform'>platform</span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span> <span class='op'>==</span> <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span>
|
717
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_health'>health</span><span class='period'>.</span><span class='id identifier rubyid_length'>length</span> <span class='op'>></span> <span class='int'>0</span>
|
718
|
+
<span class='id identifier rubyid_puts'>puts</span> <span class='id identifier rubyid_health'>health</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>\n</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_health'>health</span><span class='period'>.</span><span class='id identifier rubyid_lines'>lines</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span><span class='embexpr_end'>}</span><span class='tstring_content'> environment offense(s) detected</span><span class='tstring_end'>"</span></span>
|
719
|
+
<span class='kw'>false</span>
|
720
|
+
<span class='kw'>else</span>
|
721
|
+
<span class='kw'>true</span>
|
722
|
+
<span class='kw'>end</span>
|
723
|
+
<span class='kw'>end</span></pre>
|
724
|
+
</td>
|
725
|
+
</tr>
|
726
|
+
</table>
|
727
|
+
</div>
|
728
|
+
|
729
|
+
<div class="method_details ">
|
730
|
+
<h3 class="signature " id="list_nodes-instance_method">
|
731
|
+
|
732
|
+
- (<tt>Object</tt>) <strong>list_nodes</strong>
|
733
|
+
|
734
|
+
|
735
|
+
|
736
|
+
|
737
|
+
|
738
|
+
</h3><div class="docstring">
|
739
|
+
<div class="discussion">
|
740
|
+
|
741
|
+
<p>Public: Environment class method Returns multiline string = IP, fqdn,
|
742
|
+
runlist</p>
|
743
|
+
|
744
|
+
|
745
|
+
</div>
|
746
|
+
</div>
|
747
|
+
<div class="tags">
|
748
|
+
|
749
|
+
|
750
|
+
</div><table class="source_code">
|
751
|
+
<tr>
|
752
|
+
<td>
|
753
|
+
<pre class="lines">
|
754
|
+
|
755
|
+
|
756
|
+
37
|
757
|
+
38
|
758
|
+
39
|
759
|
+
40
|
760
|
+
41
|
761
|
+
42
|
762
|
+
43
|
763
|
+
44
|
764
|
+
45
|
765
|
+
46
|
766
|
+
47</pre>
|
767
|
+
</td>
|
768
|
+
<td>
|
769
|
+
<pre class="code"><span class="info file"># File 'lib/elevage/environment.rb', line 37</span>
|
770
|
+
|
771
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_list_nodes'>list_nodes</span>
|
772
|
+
<span class='id identifier rubyid_nodes'>nodes</span> <span class='op'>=</span> <span class='ivar'>@vcenter</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>destfolder</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>\n</span><span class='tstring_end'>"</span></span>
|
773
|
+
<span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_component'>component</span><span class='comma'>,</span> <span class='id identifier rubyid__config'>_config</span><span class='op'>|</span>
|
774
|
+
<span class='lparen'>(</span><span class='int'>1</span><span class='op'>..</span><span class='ivar'>@components</span><span class='lbracket'>[</span><span class='id identifier rubyid_component'>component</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>count</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_i'>i</span><span class='op'>|</span>
|
775
|
+
<span class='id identifier rubyid_nodes'>nodes</span> <span class='op'>+=</span> <span class='ivar'>@components</span><span class='lbracket'>[</span><span class='id identifier rubyid_component'>component</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>addresses</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='id identifier rubyid_i'>i</span> <span class='op'>-</span> <span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_ljust'>ljust</span><span class='lparen'>(</span><span class='int'>18</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'> </span><span class='tstring_end'>'</span></span><span class='rparen'>)</span> <span class='op'>+</span>
|
776
|
+
<span class='id identifier rubyid_node_name'>node_name</span><span class='lparen'>(</span><span class='id identifier rubyid_component'>component</span><span class='comma'>,</span> <span class='id identifier rubyid_i'>i</span><span class='rparen'>)</span> <span class='op'>+</span> <span class='ivar'>@vcenter</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>domain</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'> </span><span class='tstring_end'>'</span></span> <span class='op'>+</span>
|
777
|
+
<span class='ivar'>@components</span><span class='lbracket'>[</span><span class='id identifier rubyid_component'>component</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>runlist</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>\n</span><span class='tstring_end'>"</span></span>
|
778
|
+
<span class='kw'>end</span>
|
779
|
+
<span class='kw'>end</span>
|
780
|
+
<span class='id identifier rubyid_nodes'>nodes</span>
|
781
|
+
<span class='kw'>end</span></pre>
|
782
|
+
</td>
|
783
|
+
</tr>
|
784
|
+
</table>
|
785
|
+
</div>
|
786
|
+
|
787
|
+
<div class="method_details ">
|
788
|
+
<h3 class="signature " id="provision-instance_method">
|
789
|
+
|
790
|
+
- (<tt>Object</tt>) <strong>provision</strong>(type: all, tier: nil, component: nil, instance: nil, options: nil)
|
791
|
+
|
792
|
+
|
793
|
+
|
794
|
+
|
795
|
+
|
796
|
+
</h3><div class="docstring">
|
797
|
+
<div class="discussion">
|
798
|
+
|
799
|
+
<p>Public: method to request provisioning of all or a portion of the
|
800
|
+
environment rubocop:disable MethodLength, LineLength, CyclomaticComplexity,
|
801
|
+
PerceivedComplexity</p>
|
802
|
+
|
803
|
+
|
804
|
+
</div>
|
805
|
+
</div>
|
806
|
+
<div class="tags">
|
807
|
+
|
808
|
+
|
809
|
+
</div><table class="source_code">
|
810
|
+
<tr>
|
811
|
+
<td>
|
812
|
+
<pre class="lines">
|
813
|
+
|
814
|
+
|
815
|
+
92
|
816
|
+
93
|
817
|
+
94
|
818
|
+
95
|
819
|
+
96
|
820
|
+
97
|
821
|
+
98
|
822
|
+
99
|
823
|
+
100
|
824
|
+
101
|
825
|
+
102
|
826
|
+
103
|
827
|
+
104
|
828
|
+
105
|
829
|
+
106
|
830
|
+
107
|
831
|
+
108
|
832
|
+
109
|
833
|
+
110
|
834
|
+
111
|
835
|
+
112
|
836
|
+
113
|
837
|
+
114
|
838
|
+
115
|
839
|
+
116
|
840
|
+
117
|
841
|
+
118
|
842
|
+
119
|
843
|
+
120
|
844
|
+
121
|
845
|
+
122
|
846
|
+
123
|
847
|
+
124
|
848
|
+
125</pre>
|
849
|
+
</td>
|
850
|
+
<td>
|
851
|
+
<pre class="code"><span class="info file"># File 'lib/elevage/environment.rb', line 92</span>
|
852
|
+
|
853
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_provision'>provision</span><span class='lparen'>(</span><span class='label'>type:</span> <span class='id identifier rubyid_all'>all</span><span class='comma'>,</span> <span class='label'>tier:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>component:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>instance:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>options:</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
854
|
+
<span class='comment'># Create the ProvisionerRunQueue to batch up our tasks
|
855
|
+
</span> <span class='id identifier rubyid_runner'>runner</span> <span class='op'>=</span> <span class='const'>ProvisionerRunQueue</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
|
856
|
+
|
857
|
+
<span class='comment'># Modify behavior for dry-run (no concurrency)
|
858
|
+
</span> <span class='kw'>if</span> <span class='op'>!</span><span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>dry-run</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span>
|
859
|
+
<span class='id identifier rubyid_runner'>runner</span><span class='period'>.</span><span class='id identifier rubyid_max_concurrent'>max_concurrent</span> <span class='op'>=</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:concurrency</span><span class='rbracket'>]</span>
|
860
|
+
<span class='kw'>else</span>
|
861
|
+
<span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Dry run requested, forcing concurrency to '1'.</span><span class='tstring_end'>"</span></span>
|
862
|
+
<span class='id identifier rubyid_runner'>runner</span><span class='period'>.</span><span class='id identifier rubyid_max_concurrent'>max_concurrent</span> <span class='op'>=</span> <span class='int'>1</span>
|
863
|
+
<span class='kw'>end</span>
|
864
|
+
|
865
|
+
<span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_component_name'>component_name</span><span class='comma'>,</span> <span class='id identifier rubyid_component_data'>component_data</span><span class='op'>|</span>
|
866
|
+
<span class='kw'>next</span> <span class='kw'>unless</span> <span class='id identifier rubyid_type'>type</span><span class='period'>.</span><span class='id identifier rubyid_eql?'>eql?</span><span class='lparen'>(</span><span class='symbol'>:all</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='id identifier rubyid_component_data'>component_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>tier</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_tier'>tier</span><span class='embexpr_end'>}</span><span class='regexp_end'>/i</span></span><span class='rparen'>)</span> <span class='op'>&&</span> <span class='id identifier rubyid_component_name'>component_name</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_component'>component</span><span class='embexpr_end'>}</span><span class='regexp_end'>/i</span></span><span class='rparen'>)</span>
|
867
|
+
|
868
|
+
<span class='int'>1</span><span class='period'>.</span><span class='id identifier rubyid_upto'>upto</span><span class='lparen'>(</span><span class='id identifier rubyid_component_data'>component_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>addresses</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_component_instance'>component_instance</span><span class='op'>|</span>
|
869
|
+
<span class='kw'>next</span> <span class='kw'>unless</span> <span class='id identifier rubyid_instance'>instance</span> <span class='op'>==</span> <span class='id identifier rubyid_component_instance'>component_instance</span> <span class='op'>||</span> <span class='id identifier rubyid_instance'>instance</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
870
|
+
|
871
|
+
<span class='id identifier rubyid_instance_name'>instance_name</span> <span class='op'>=</span> <span class='id identifier rubyid_node_name'>node_name</span><span class='lparen'>(</span><span class='id identifier rubyid_component_name'>component_name</span><span class='comma'>,</span> <span class='id identifier rubyid_component_instance'>component_instance</span><span class='rparen'>)</span>
|
872
|
+
|
873
|
+
<span class='comment'># Create the Provisioner
|
874
|
+
</span> <span class='id identifier rubyid_provisioner'>provisioner</span> <span class='op'>=</span> <span class='const'>Elevage</span><span class='op'>::</span><span class='const'>Provisioner</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_instance_name'>instance_name</span><span class='comma'>,</span> <span class='id identifier rubyid_component_data'>component_data</span><span class='comma'>,</span> <span class='id identifier rubyid_component_instance'>component_instance</span><span class='comma'>,</span> <span class='kw'>self</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
875
|
+
|
876
|
+
<span class='comment'># Add it to the queue
|
877
|
+
</span> <span class='id identifier rubyid_runner'>runner</span><span class='period'>.</span><span class='id identifier rubyid_provisioners'>provisioners</span> <span class='op'><<</span> <span class='id identifier rubyid_provisioner'>provisioner</span>
|
878
|
+
|
879
|
+
<span class='kw'>end</span>
|
880
|
+
<span class='kw'>end</span>
|
881
|
+
|
882
|
+
<span class='id identifier rubyid_runner'>runner</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='kw'>if</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>dry-run</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span>
|
883
|
+
|
884
|
+
<span class='comment'># Process the queue
|
885
|
+
</span> <span class='id identifier rubyid_runner'>runner</span><span class='period'>.</span><span class='id identifier rubyid_run'>run</span>
|
886
|
+
<span class='kw'>end</span></pre>
|
887
|
+
</td>
|
888
|
+
</tr>
|
889
|
+
</table>
|
890
|
+
</div>
|
891
|
+
|
892
|
+
<div class="method_details ">
|
893
|
+
<h3 class="signature " id="to_s-instance_method">
|
894
|
+
|
895
|
+
- (<tt>Object</tt>) <strong>to_s</strong>
|
896
|
+
|
897
|
+
|
898
|
+
|
899
|
+
|
900
|
+
|
901
|
+
</h3><div class="docstring">
|
902
|
+
<div class="discussion">
|
903
|
+
|
904
|
+
<p>Public: basic class puts string output</p>
|
905
|
+
|
906
|
+
|
907
|
+
</div>
|
908
|
+
</div>
|
909
|
+
<div class="tags">
|
910
|
+
|
911
|
+
|
912
|
+
</div><table class="source_code">
|
913
|
+
<tr>
|
914
|
+
<td>
|
915
|
+
<pre class="lines">
|
916
|
+
|
917
|
+
|
918
|
+
82
|
919
|
+
83
|
920
|
+
84
|
921
|
+
85
|
922
|
+
86
|
923
|
+
87</pre>
|
924
|
+
</td>
|
925
|
+
<td>
|
926
|
+
<pre class="code"><span class="info file"># File 'lib/elevage/environment.rb', line 82</span>
|
927
|
+
|
928
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_to_s'>to_s</span>
|
929
|
+
<span class='id identifier rubyid_puts'>puts</span> <span class='ivar'>@name</span>
|
930
|
+
<span class='id identifier rubyid_puts'>puts</span> <span class='ivar'>@vcenter</span><span class='period'>.</span><span class='id identifier rubyid_to_yaml'>to_yaml</span>
|
931
|
+
<span class='id identifier rubyid_puts'>puts</span> <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_to_yaml'>to_yaml</span>
|
932
|
+
<span class='id identifier rubyid_puts'>puts</span> <span class='ivar'>@nodenameconvention</span><span class='period'>.</span><span class='id identifier rubyid_to_yaml'>to_yaml</span>
|
933
|
+
<span class='kw'>end</span></pre>
|
934
|
+
</td>
|
935
|
+
</tr>
|
936
|
+
</table>
|
937
|
+
</div>
|
938
|
+
|
939
|
+
</div>
|
940
|
+
|
941
|
+
</div>
|
942
|
+
|
943
|
+
<div id="footer">
|
944
|
+
Generated on Tue Nov 11 17:39:23 2014 by
|
945
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
946
|
+
0.8.7.6 (ruby-2.1.2).
|
947
|
+
</div>
|
948
|
+
|
949
|
+
</body>
|
950
|
+
</html>
|