forklift_etl 1.0.8 → 1.0.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. checksums.yaml +8 -8
  2. data/forklift.jpg +0 -0
  3. data/lib/forklift/transports/mysql.rb +3 -2
  4. data/lib/forklift/version.rb +1 -1
  5. metadata +1 -58
  6. data/doc/EmailSuffix.html +0 -228
  7. data/doc/Forklift/Base/Connection.html +0 -590
  8. data/doc/Forklift/Base/Logger.html +0 -453
  9. data/doc/Forklift/Base/Mailer/ERBBinding.html +0 -256
  10. data/doc/Forklift/Base/Mailer.html +0 -399
  11. data/doc/Forklift/Base/Pid.html +0 -489
  12. data/doc/Forklift/Base/Utils.html +0 -252
  13. data/doc/Forklift/Base.html +0 -167
  14. data/doc/Forklift/Connection/Elasticsearch.html +0 -419
  15. data/doc/Forklift/Connection/Mysql.html +0 -939
  16. data/doc/Forklift/Connection.html +0 -164
  17. data/doc/Forklift/Patterns/Elasticsearch.html +0 -169
  18. data/doc/Forklift/Patterns/Mysql.html +0 -402
  19. data/doc/Forklift/Patterns.html +0 -164
  20. data/doc/Forklift/Plan.html +0 -704
  21. data/doc/Forklift.html +0 -187
  22. data/doc/Gemfile.html +0 -132
  23. data/doc/Object.html +0 -326
  24. data/doc/Rakefile.html +0 -138
  25. data/doc/SpecClient.html +0 -291
  26. data/doc/SpecPlan.html +0 -253
  27. data/doc/SpecSeeds.html +0 -303
  28. data/doc/created.rid +0 -35
  29. data/doc/example/Gemfile.html +0 -129
  30. data/doc/images/add.png +0 -0
  31. data/doc/images/brick.png +0 -0
  32. data/doc/images/brick_link.png +0 -0
  33. data/doc/images/bug.png +0 -0
  34. data/doc/images/bullet_black.png +0 -0
  35. data/doc/images/bullet_toggle_minus.png +0 -0
  36. data/doc/images/bullet_toggle_plus.png +0 -0
  37. data/doc/images/date.png +0 -0
  38. data/doc/images/delete.png +0 -0
  39. data/doc/images/find.png +0 -0
  40. data/doc/images/loadingAnimation.gif +0 -0
  41. data/doc/images/macFFBgHack.png +0 -0
  42. data/doc/images/package.png +0 -0
  43. data/doc/images/page_green.png +0 -0
  44. data/doc/images/page_white_text.png +0 -0
  45. data/doc/images/page_white_width.png +0 -0
  46. data/doc/images/plugin.png +0 -0
  47. data/doc/images/ruby.png +0 -0
  48. data/doc/images/tag_blue.png +0 -0
  49. data/doc/images/tag_green.png +0 -0
  50. data/doc/images/transparent.png +0 -0
  51. data/doc/images/wrench.png +0 -0
  52. data/doc/images/wrench_orange.png +0 -0
  53. data/doc/images/zoom.png +0 -0
  54. data/doc/index.html +0 -122
  55. data/doc/js/darkfish.js +0 -155
  56. data/doc/js/jquery.js +0 -18
  57. data/doc/js/navigation.js +0 -142
  58. data/doc/js/search.js +0 -94
  59. data/doc/js/search_index.js +0 -1
  60. data/doc/js/searcher.js +0 -228
  61. data/doc/rdoc.css +0 -543
  62. data/doc/table_of_contents.html +0 -309
@@ -1,704 +0,0 @@
1
- <!DOCTYPE html>
2
-
3
- <html>
4
- <head>
5
- <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
6
-
7
- <title>class Forklift::Plan - RDoc Documentation</title>
8
-
9
- <link type="text/css" media="screen" href="../rdoc.css" rel="stylesheet">
10
-
11
- <script type="text/javascript">
12
- var rdoc_rel_prefix = "../";
13
- </script>
14
-
15
- <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
16
- <script type="text/javascript" charset="utf-8" src="../js/navigation.js"></script>
17
- <script type="text/javascript" charset="utf-8" src="../js/search_index.js"></script>
18
- <script type="text/javascript" charset="utf-8" src="../js/search.js"></script>
19
- <script type="text/javascript" charset="utf-8" src="../js/searcher.js"></script>
20
- <script type="text/javascript" charset="utf-8" src="../js/darkfish.js"></script>
21
-
22
-
23
- <body id="top" class="class">
24
- <nav id="metadata">
25
- <nav id="home-section" class="section">
26
- <h3 class="section-header">
27
- <a href="../index.html">Home</a>
28
- <a href="../table_of_contents.html#classes">Classes</a>
29
- <a href="../table_of_contents.html#methods">Methods</a>
30
- </h3>
31
- </nav>
32
-
33
-
34
- <nav id="search-section" class="section project-section" class="initially-hidden">
35
- <form action="#" method="get" accept-charset="utf-8">
36
- <h3 class="section-header">
37
- <input type="text" name="search" placeholder="Search" id="search-field"
38
- title="Type to search, Up and Down to navigate, Enter to load">
39
- </h3>
40
- </form>
41
-
42
- <ul id="search-results" class="initially-hidden"></ul>
43
- </nav>
44
-
45
-
46
- <div id="file-metadata">
47
- <nav id="file-list-section" class="section">
48
- <h3 class="section-header">Defined In</h3>
49
- <ul>
50
- <li>lib/forklift/plan.rb
51
- </ul>
52
- </nav>
53
-
54
-
55
- </div>
56
-
57
- <div id="class-metadata">
58
-
59
- <nav id="parent-class-section" class="section">
60
- <h3 class="section-header">Parent</h3>
61
-
62
- <p class="link"><a href="../Object.html">Object</a>
63
-
64
- </nav>
65
-
66
-
67
- <!-- Method Quickref -->
68
- <nav id="method-list-section" class="section">
69
- <h3 class="section-header">Methods</h3>
70
-
71
- <ul class="link-list">
72
-
73
- <li><a href="#method-c-new">::new</a>
74
-
75
- <li><a href="#method-i-activate_steps">#activate_steps</a>
76
-
77
- <li><a href="#method-i-argv">#argv</a>
78
-
79
- <li><a href="#method-i-config">#config</a>
80
-
81
- <li><a href="#method-i-connect-21">#connect!</a>
82
-
83
- <li><a href="#method-i-connections">#connections</a>
84
-
85
- <li><a href="#method-i-do-21">#do!</a>
86
-
87
- <li><a href="#method-i-do_step-21">#do_step!</a>
88
-
89
- <li><a href="#method-i-logger">#logger</a>
90
-
91
- <li><a href="#method-i-mailer">#mailer</a>
92
-
93
- <li><a href="#method-i-pid">#pid</a>
94
-
95
- <li><a href="#method-i-step">#step</a>
96
-
97
- <li><a href="#method-i-steps">#steps</a>
98
-
99
- <li><a href="#method-i-utils">#utils</a>
100
-
101
- </ul>
102
- </nav>
103
-
104
- </div>
105
-
106
- <div id="project-metadata">
107
- <nav id="fileindex-section" class="section project-section">
108
- <h3 class="section-header">Pages</h3>
109
-
110
- <ul>
111
-
112
- <li class="file"><a href="../Gemfile.html">Gemfile</a>
113
-
114
- <li class="file"><a href="../Rakefile.html">Rakefile</a>
115
-
116
- <li class="file"><a href="../example/Gemfile.html">Gemfile</a>
117
-
118
- <li class="file"><a href="../spec/pid/pidfile.html">pidfile</a>
119
-
120
- </ul>
121
- </nav>
122
-
123
- <nav id="classindex-section" class="section project-section">
124
- <h3 class="section-header">Class and Module Index</h3>
125
-
126
- <ul class="link-list">
127
-
128
- <li><a href="../Forklift.html">Forklift</a>
129
-
130
- <li><a href="../Forklift/Base.html">Forklift::Base</a>
131
-
132
- <li><a href="../Forklift/Base/Connection.html">Forklift::Base::Connection</a>
133
-
134
- <li><a href="../Forklift/Base/Logger.html">Forklift::Base::Logger</a>
135
-
136
- <li><a href="../Forklift/Base/Mailer.html">Forklift::Base::Mailer</a>
137
-
138
- <li><a href="../Forklift/Base/Mailer/ERBBinding.html">Forklift::Base::Mailer::ERBBinding</a>
139
-
140
- <li><a href="../Forklift/Base/Pid.html">Forklift::Base::Pid</a>
141
-
142
- <li><a href="../Forklift/Base/Utils.html">Forklift::Base::Utils</a>
143
-
144
- <li><a href="../Forklift/Connection.html">Forklift::Connection</a>
145
-
146
- <li><a href="../Forklift/Connection/Elasticsearch.html">Forklift::Connection::Elasticsearch</a>
147
-
148
- <li><a href="../Forklift/Connection/Mysql.html">Forklift::Connection::Mysql</a>
149
-
150
- <li><a href="../Forklift/Patterns.html">Forklift::Patterns</a>
151
-
152
- <li><a href="../Forklift/Patterns/Elasticsearch.html">Forklift::Patterns::Elasticsearch</a>
153
-
154
- <li><a href="../Forklift/Patterns/Mysql.html">Forklift::Patterns::Mysql</a>
155
-
156
- <li><a href="../Forklift/Plan.html">Forklift::Plan</a>
157
-
158
- <li><a href="../EmailSuffix.html">EmailSuffix</a>
159
-
160
- <li><a href="../Object.html">Object</a>
161
-
162
- <li><a href="../SpecClient.html">SpecClient</a>
163
-
164
- <li><a href="../SpecPlan.html">SpecPlan</a>
165
-
166
- <li><a href="../SpecSeeds.html">SpecSeeds</a>
167
-
168
- </ul>
169
- </nav>
170
-
171
- </div>
172
- </nav>
173
-
174
- <div id="documentation">
175
- <h1 class="class">class Forklift::Plan</h1>
176
-
177
- <div id="description" class="description">
178
-
179
- </div><!-- description -->
180
-
181
-
182
-
183
-
184
- <section id="5Buntitled-5D" class="documentation-section">
185
-
186
-
187
-
188
-
189
-
190
-
191
-
192
-
193
- <!-- Methods -->
194
-
195
- <section id="public-class-5Buntitled-5D-method-details" class="method-section section">
196
- <h3 class="section-header">Public Class Methods</h3>
197
-
198
-
199
- <div id="method-c-new" class="method-detail ">
200
-
201
- <div class="method-heading">
202
- <span class="method-name">new</span><span
203
- class="method-args">(config={})</span>
204
- <span class="method-click-advice">click to toggle source</span>
205
- </div>
206
-
207
-
208
- <div class="method-description">
209
-
210
-
211
-
212
-
213
-
214
- <div class="method-source-code" id="new-source">
215
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 6</span>
216
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">config</span>={})
217
- <span class="ruby-ivar">@config</span> = <span class="ruby-identifier">default_config</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">config</span>)
218
- <span class="ruby-ivar">@utils</span> = <span class="ruby-constant">Forklift</span><span class="ruby-operator">::</span><span class="ruby-constant">Base</span><span class="ruby-operator">::</span><span class="ruby-constant">Utils</span>.<span class="ruby-identifier">new</span>
219
- <span class="ruby-ivar">@pid</span> = <span class="ruby-constant">Forklift</span><span class="ruby-operator">::</span><span class="ruby-constant">Base</span><span class="ruby-operator">::</span><span class="ruby-constant">Pid</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>)
220
- <span class="ruby-ivar">@logger</span> = <span class="ruby-constant">Forklift</span><span class="ruby-operator">::</span><span class="ruby-constant">Base</span><span class="ruby-operator">::</span><span class="ruby-constant">Logger</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>)
221
- <span class="ruby-ivar">@mailer</span> = <span class="ruby-constant">Forklift</span><span class="ruby-operator">::</span><span class="ruby-constant">Base</span><span class="ruby-operator">::</span><span class="ruby-constant">Mailer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>)
222
- <span class="ruby-ivar">@connections</span> = {}
223
- <span class="ruby-ivar">@steps</span> = {}
224
- <span class="ruby-keyword">end</span></pre>
225
- </div><!-- new-source -->
226
-
227
- </div>
228
-
229
-
230
-
231
-
232
- </div><!-- new-method -->
233
-
234
-
235
- </section><!-- public-class-method-details -->
236
-
237
- <section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
238
- <h3 class="section-header">Public Instance Methods</h3>
239
-
240
-
241
- <div id="method-i-activate_steps" class="method-detail ">
242
-
243
- <div class="method-heading">
244
- <span class="method-name">activate_steps</span><span
245
- class="method-args">()</span>
246
- <span class="method-click-advice">click to toggle source</span>
247
- </div>
248
-
249
-
250
- <div class="method-description">
251
-
252
-
253
-
254
-
255
-
256
- <div class="method-source-code" id="activate_steps-source">
257
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 76</span>
258
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">activate_steps</span>
259
- <span class="ruby-comment"># all steps are run by default</span>
260
- <span class="ruby-comment"># step names are passed as ARGV</span>
261
- <span class="ruby-comment"># `forklift plan.rb` runs everything and `forklift plan.rb send_email` only sends the email</span>
262
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">argv</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">2</span> <span class="ruby-operator">||</span> <span class="ruby-constant">ENV</span>[<span class="ruby-string">'FORKLIFT_RUN_ALL_STEPS'</span>] <span class="ruby-operator">==</span> <span class="ruby-string">'true'</span>
263
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">steps</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span>
264
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">steps</span>[<span class="ruby-identifier">k</span>][<span class="ruby-value">:to_run</span>] = <span class="ruby-keyword">true</span>
265
- <span class="ruby-keyword">end</span>
266
- <span class="ruby-keyword">else</span>
267
- <span class="ruby-identifier">i</span> = <span class="ruby-value">1</span>
268
- <span class="ruby-keyword">while</span> <span class="ruby-identifier">i</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">argv</span>.<span class="ruby-identifier">length</span>
269
- <span class="ruby-identifier">name</span> = <span class="ruby-identifier">argv</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">to_sym</span>
270
- <span class="ruby-keyword">unless</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">steps</span>[<span class="ruby-identifier">name</span>].<span class="ruby-identifier">nil?</span>
271
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">steps</span>[<span class="ruby-identifier">name</span>][<span class="ruby-value">:to_run</span>] = <span class="ruby-keyword">true</span>
272
- <span class="ruby-keyword">else</span>
273
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">log</span> <span class="ruby-node">&quot;[error] step `#{name}` not found&quot;</span>
274
- <span class="ruby-identifier">exit</span>(<span class="ruby-value">1</span>)
275
- <span class="ruby-keyword">end</span>
276
- <span class="ruby-identifier">i</span> = <span class="ruby-identifier">i</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
277
- <span class="ruby-keyword">end</span>
278
- <span class="ruby-keyword">end</span>
279
- <span class="ruby-keyword">end</span></pre>
280
- </div><!-- activate_steps-source -->
281
-
282
- </div>
283
-
284
-
285
-
286
-
287
- </div><!-- activate_steps-method -->
288
-
289
-
290
- <div id="method-i-argv" class="method-detail ">
291
-
292
- <div class="method-heading">
293
- <span class="method-name">argv</span><span
294
- class="method-args">()</span>
295
- <span class="method-click-advice">click to toggle source</span>
296
- </div>
297
-
298
-
299
- <div class="method-description">
300
-
301
-
302
-
303
-
304
-
305
- <div class="method-source-code" id="argv-source">
306
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 72</span>
307
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">argv</span>
308
- <span class="ruby-constant">ARGV</span>
309
- <span class="ruby-keyword">end</span></pre>
310
- </div><!-- argv-source -->
311
-
312
- </div>
313
-
314
-
315
-
316
-
317
- </div><!-- argv-method -->
318
-
319
-
320
- <div id="method-i-config" class="method-detail ">
321
-
322
- <div class="method-heading">
323
- <span class="method-name">config</span><span
324
- class="method-args">()</span>
325
- <span class="method-click-advice">click to toggle source</span>
326
- </div>
327
-
328
-
329
- <div class="method-description">
330
-
331
-
332
-
333
-
334
-
335
- <div class="method-source-code" id="config-source">
336
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 18</span>
337
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">config</span>; <span class="ruby-ivar">@config</span> <span class="ruby-keyword">end</span></pre>
338
- </div><!-- config-source -->
339
-
340
- </div>
341
-
342
-
343
-
344
-
345
- </div><!-- config-method -->
346
-
347
-
348
- <div id="method-i-connect-21" class="method-detail ">
349
-
350
- <div class="method-heading">
351
- <span class="method-name">connect!</span><span
352
- class="method-args">()</span>
353
- <span class="method-click-advice">click to toggle source</span>
354
- </div>
355
-
356
-
357
- <div class="method-description">
358
-
359
-
360
-
361
-
362
-
363
- <div class="method-source-code" id="connect-21-source">
364
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 24</span>
365
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">connect!</span>
366
- <span class="ruby-identifier">files</span> = <span class="ruby-constant">Dir</span>[<span class="ruby-node">&quot;#{config[:project_root]}/config/connections/**/*.yml&quot;</span>]
367
- <span class="ruby-identifier">files</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
368
- <span class="ruby-keyword">next</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">f</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">'example.yml'</span>)
369
- <span class="ruby-identifier">name</span> = <span class="ruby-identifier">f</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">&quot;/&quot;</span>)[<span class="ruby-value">-1</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">'.'</span>)[<span class="ruby-value">0</span>]
370
- <span class="ruby-identifier">type</span> = <span class="ruby-identifier">f</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">&quot;/&quot;</span>)[<span class="ruby-value">-2</span>]
371
- <span class="ruby-identifier">connections</span>[<span class="ruby-identifier">type</span>.<span class="ruby-identifier">to_sym</span>] = {} <span class="ruby-keyword">if</span> <span class="ruby-identifier">connections</span>[<span class="ruby-identifier">type</span>.<span class="ruby-identifier">to_sym</span>].<span class="ruby-identifier">nil?</span>
372
- <span class="ruby-identifier">db_config</span> = <span class="ruby-identifier">utils</span>.<span class="ruby-identifier">load_yml</span>(<span class="ruby-identifier">f</span>)
373
-
374
- <span class="ruby-keyword">begin</span>
375
- <span class="ruby-identifier">loader</span> = <span class="ruby-node">&quot;Forklift::Connection::#{type.camelcase}.new(db_config, self)&quot;</span>
376
- <span class="ruby-identifier">connection</span> = <span class="ruby-identifier">eval</span>(<span class="ruby-identifier">loader</span>)
377
- <span class="ruby-identifier">connections</span>[<span class="ruby-identifier">type</span>.<span class="ruby-identifier">to_sym</span>][<span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_sym</span>] = <span class="ruby-identifier">connection</span>
378
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-node">&quot;loaded a #{type.camelcase} connection from #{f}&quot;</span>
379
- <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
380
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">fatal</span> <span class="ruby-node">&quot;cannot create a class type of #{loader} from #{f} | #{e}&quot;</span>
381
- <span class="ruby-identifier">raise</span> <span class="ruby-identifier">e</span>
382
- <span class="ruby-keyword">end</span>
383
- <span class="ruby-keyword">end</span>
384
- <span class="ruby-keyword">end</span></pre>
385
- </div><!-- connect-21-source -->
386
-
387
- </div>
388
-
389
-
390
-
391
-
392
- </div><!-- connect-21-method -->
393
-
394
-
395
- <div id="method-i-connections" class="method-detail ">
396
-
397
- <div class="method-heading">
398
- <span class="method-name">connections</span><span
399
- class="method-args">()</span>
400
- <span class="method-click-advice">click to toggle source</span>
401
- </div>
402
-
403
-
404
- <div class="method-description">
405
-
406
-
407
-
408
-
409
-
410
- <div class="method-source-code" id="connections-source">
411
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 16</span>
412
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">connections</span>; <span class="ruby-ivar">@connections</span> <span class="ruby-keyword">end</span></pre>
413
- </div><!-- connections-source -->
414
-
415
- </div>
416
-
417
-
418
-
419
-
420
- </div><!-- connections-method -->
421
-
422
-
423
- <div id="method-i-do-21" class="method-detail ">
424
-
425
- <div class="method-heading">
426
- <span class="method-name">do!</span><span
427
- class="method-args">() { || ... }</span>
428
- <span class="method-click-advice">click to toggle source</span>
429
- </div>
430
-
431
-
432
- <div class="method-description">
433
-
434
-
435
-
436
-
437
-
438
- <div class="method-source-code" id="do-21-source">
439
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 99</span>
440
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">do!</span>
441
- <span class="ruby-comment"># you can use `plan.logger.log` in your plan for logging</span>
442
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">log</span> <span class="ruby-string">&quot;Starting forklift&quot;</span>
443
-
444
- <span class="ruby-comment"># use a pidfile to ensure that only one instance of forklift is running at a time; store the file if OK</span>
445
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">pid</span>.<span class="ruby-identifier">safe_to_run?</span>
446
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">pid</span>.<span class="ruby-identifier">store!</span>
447
-
448
- <span class="ruby-comment"># this will load all connections in /config/connections/#{type}/#{name}.yml into the plan.connections hash</span>
449
- <span class="ruby-comment"># and build all the connection objects (and try to connect in some cases)</span>
450
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">connect!</span>
451
-
452
- <span class="ruby-keyword">yield</span> <span class="ruby-comment"># your stuff here!</span>
453
-
454
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">activate_steps</span>
455
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">steps</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>, <span class="ruby-identifier">v</span><span class="ruby-operator">|</span>
456
- <span class="ruby-identifier">do_step!</span>(<span class="ruby-identifier">k</span>)
457
- <span class="ruby-keyword">end</span>
458
-
459
- <span class="ruby-comment"># remove the pidfile</span>
460
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">log</span> <span class="ruby-string">&quot;Completed forklift&quot;</span>
461
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">pid</span>.<span class="ruby-identifier">delete!</span>
462
- <span class="ruby-keyword">end</span></pre>
463
- </div><!-- do-21-source -->
464
-
465
- </div>
466
-
467
-
468
-
469
-
470
- </div><!-- do-21-method -->
471
-
472
-
473
- <div id="method-i-do_step-21" class="method-detail ">
474
-
475
- <div class="method-heading">
476
- <span class="method-name">do_step!</span><span
477
- class="method-args">(name)</span>
478
- <span class="method-click-advice">click to toggle source</span>
479
- </div>
480
-
481
-
482
- <div class="method-description">
483
-
484
-
485
-
486
-
487
-
488
- <div class="method-source-code" id="do_step-21-source">
489
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 54</span>
490
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">do_step!</span>(<span class="ruby-identifier">name</span>)
491
- <span class="ruby-identifier">name</span> = <span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_sym</span>
492
- <span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">steps</span>[<span class="ruby-identifier">name</span>].<span class="ruby-identifier">nil?</span>
493
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">log</span> <span class="ruby-node">&quot;[error] step `#{name}` not found&quot;</span>
494
- <span class="ruby-keyword">else</span>
495
- <span class="ruby-identifier">step</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">steps</span>[<span class="ruby-identifier">name</span>]
496
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">step</span>[<span class="ruby-value">:ran</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
497
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">log</span> <span class="ruby-node">&quot;step `#{name}` already ran&quot;</span>
498
- <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">step</span>[<span class="ruby-value">:to_run</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
499
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">log</span> <span class="ruby-node">&quot;skipping step `#{name}`&quot;</span>
500
- <span class="ruby-keyword">else</span>
501
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">log</span> <span class="ruby-node">&quot;*** step: #{name} ***&quot;</span>
502
- <span class="ruby-identifier">step</span>[<span class="ruby-value">:block</span>].<span class="ruby-identifier">call</span>
503
- <span class="ruby-identifier">step</span>[<span class="ruby-value">:ran</span>] = <span class="ruby-keyword">true</span>
504
- <span class="ruby-keyword">end</span>
505
- <span class="ruby-keyword">end</span>
506
- <span class="ruby-keyword">end</span></pre>
507
- </div><!-- do_step-21-source -->
508
-
509
- </div>
510
-
511
-
512
-
513
-
514
- </div><!-- do_step-21-method -->
515
-
516
-
517
- <div id="method-i-logger" class="method-detail ">
518
-
519
- <div class="method-heading">
520
- <span class="method-name">logger</span><span
521
- class="method-args">()</span>
522
- <span class="method-click-advice">click to toggle source</span>
523
- </div>
524
-
525
-
526
- <div class="method-description">
527
-
528
-
529
-
530
-
531
-
532
- <div class="method-source-code" id="logger-source">
533
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 19</span>
534
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">logger</span>; <span class="ruby-ivar">@logger</span> <span class="ruby-keyword">end</span></pre>
535
- </div><!-- logger-source -->
536
-
537
- </div>
538
-
539
-
540
-
541
-
542
- </div><!-- logger-method -->
543
-
544
-
545
- <div id="method-i-mailer" class="method-detail ">
546
-
547
- <div class="method-heading">
548
- <span class="method-name">mailer</span><span
549
- class="method-args">()</span>
550
- <span class="method-click-advice">click to toggle source</span>
551
- </div>
552
-
553
-
554
- <div class="method-description">
555
-
556
-
557
-
558
-
559
-
560
- <div class="method-source-code" id="mailer-source">
561
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 20</span>
562
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">mailer</span>; <span class="ruby-ivar">@mailer</span> <span class="ruby-keyword">end</span></pre>
563
- </div><!-- mailer-source -->
564
-
565
- </div>
566
-
567
-
568
-
569
-
570
- </div><!-- mailer-method -->
571
-
572
-
573
- <div id="method-i-pid" class="method-detail ">
574
-
575
- <div class="method-heading">
576
- <span class="method-name">pid</span><span
577
- class="method-args">()</span>
578
- <span class="method-click-advice">click to toggle source</span>
579
- </div>
580
-
581
-
582
- <div class="method-description">
583
-
584
-
585
-
586
-
587
-
588
- <div class="method-source-code" id="pid-source">
589
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 22</span>
590
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">pid</span>; <span class="ruby-ivar">@pid</span> <span class="ruby-keyword">end</span></pre>
591
- </div><!-- pid-source -->
592
-
593
- </div>
594
-
595
-
596
-
597
-
598
- </div><!-- pid-method -->
599
-
600
-
601
- <div id="method-i-step" class="method-detail ">
602
-
603
- <div class="method-heading">
604
- <span class="method-name">step</span><span
605
- class="method-args">(*args, &block)</span>
606
- <span class="method-click-advice">click to toggle source</span>
607
- </div>
608
-
609
-
610
- <div class="method-description">
611
-
612
-
613
-
614
-
615
-
616
- <div class="method-source-code" id="step-source">
617
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 45</span>
618
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">step</span>(*<span class="ruby-identifier">args</span>, &amp;<span class="ruby-identifier">block</span>)
619
- <span class="ruby-identifier">name</span> = <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_sym</span>
620
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">steps</span>[<span class="ruby-identifier">name</span>] = {
621
- <span class="ruby-value">:ran</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>,
622
- <span class="ruby-value">:to_run</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>,
623
- <span class="ruby-value">:block</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">block</span>
624
- }
625
- <span class="ruby-keyword">end</span></pre>
626
- </div><!-- step-source -->
627
-
628
- </div>
629
-
630
-
631
-
632
-
633
- </div><!-- step-method -->
634
-
635
-
636
- <div id="method-i-steps" class="method-detail ">
637
-
638
- <div class="method-heading">
639
- <span class="method-name">steps</span><span
640
- class="method-args">()</span>
641
- <span class="method-click-advice">click to toggle source</span>
642
- </div>
643
-
644
-
645
- <div class="method-description">
646
-
647
-
648
-
649
-
650
-
651
- <div class="method-source-code" id="steps-source">
652
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 17</span>
653
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">steps</span>; <span class="ruby-ivar">@steps</span> <span class="ruby-keyword">end</span></pre>
654
- </div><!-- steps-source -->
655
-
656
- </div>
657
-
658
-
659
-
660
-
661
- </div><!-- steps-method -->
662
-
663
-
664
- <div id="method-i-utils" class="method-detail ">
665
-
666
- <div class="method-heading">
667
- <span class="method-name">utils</span><span
668
- class="method-args">()</span>
669
- <span class="method-click-advice">click to toggle source</span>
670
- </div>
671
-
672
-
673
- <div class="method-description">
674
-
675
-
676
-
677
-
678
-
679
- <div class="method-source-code" id="utils-source">
680
- <pre><span class="ruby-comment"># File lib/forklift/plan.rb, line 21</span>
681
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">utils</span>; <span class="ruby-ivar">@utils</span> <span class="ruby-keyword">end</span></pre>
682
- </div><!-- utils-source -->
683
-
684
- </div>
685
-
686
-
687
-
688
-
689
- </div><!-- utils-method -->
690
-
691
-
692
- </section><!-- public-instance-method-details -->
693
-
694
- </section><!-- 5Buntitled-5D -->
695
-
696
- </div><!-- documentation -->
697
-
698
-
699
- <footer id="validator-badges">
700
- <p><a href="http://validator.w3.org/check/referer">[Validate]</a>
701
- <p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.2.
702
- <p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
703
- </footer>
704
-