job_boss 0.2
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.
- data/README.markdown +43 -0
- data/Rakefile +15 -0
- data/bin/job_boss +27 -0
- data/doc/ActiveRecord/Base.html +343 -0
- data/doc/ActiveRecord.html +185 -0
- data/doc/CreateJobs.html +256 -0
- data/doc/JobBoss/Boss.html +413 -0
- data/doc/JobBoss/Config.html +342 -0
- data/doc/JobBoss/Job.html +754 -0
- data/doc/JobBoss/Queuer.html +231 -0
- data/doc/JobBoss.html +480 -0
- data/doc/Mongrel/HttpServer.html +275 -0
- data/doc/Mongrel.html +185 -0
- data/doc/Passenger/Railz/RequestHandler.html +271 -0
- data/doc/Passenger/Railz.html +185 -0
- data/doc/Passenger.html +185 -0
- data/doc/PhusionPassenger/Rack/RequestHandler.html +271 -0
- data/doc/PhusionPassenger/Rack.html +185 -0
- data/doc/PhusionPassenger/Railz/RequestHandler.html +271 -0
- data/doc/PhusionPassenger/Railz.html +185 -0
- data/doc/PhusionPassenger.html +187 -0
- data/doc/Rakefile.html +115 -0
- data/doc/Spawn/SpawnId.html +276 -0
- data/doc/Spawn.html +742 -0
- data/doc/bin/job_boss.html +58 -0
- data/doc/created.rid +9 -0
- data/doc/index.html +126 -0
- data/doc/lib/job_boss/boss_rb.html +64 -0
- data/doc/lib/job_boss/capistrano_rb.html +60 -0
- data/doc/lib/job_boss/configuror_rb.html +54 -0
- data/doc/lib/job_boss/job_rb.html +56 -0
- data/doc/lib/job_boss/queuer_rb.html +56 -0
- data/doc/lib/migrate_rb.html +52 -0
- data/doc/rdoc.css +706 -0
- data/doc/vendor/spawn/CHANGELOG.html +275 -0
- data/doc/vendor/spawn/LICENSE.html +151 -0
- data/doc/vendor/spawn/init_rb.html +54 -0
- data/doc/vendor/spawn/lib/patches_rb.html +56 -0
- data/doc/vendor/spawn/lib/spawn_rb.html +52 -0
- data/job_boss.gemspec +26 -0
- data/lib/job_boss/boss.rb +153 -0
- data/lib/job_boss/capistrano.rb +8 -0
- data/lib/job_boss/configuror.rb +40 -0
- data/lib/job_boss/job.rb +155 -0
- data/lib/job_boss/queuer.rb +37 -0
- data/lib/migrate.rb +27 -0
- metadata +151 -0
data/doc/JobBoss.html
ADDED
@@ -0,0 +1,480 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
3
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
4
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
5
|
+
<head>
|
6
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
|
7
|
+
|
8
|
+
<title>Module: JobBoss</title>
|
9
|
+
|
10
|
+
<link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
|
11
|
+
|
12
|
+
<script src="./js/jquery.js" type="text/javascript"
|
13
|
+
charset="utf-8"></script>
|
14
|
+
<script src="./js/thickbox-compressed.js" type="text/javascript"
|
15
|
+
charset="utf-8"></script>
|
16
|
+
<script src="./js/quicksearch.js" type="text/javascript"
|
17
|
+
charset="utf-8"></script>
|
18
|
+
<script src="./js/darkfish.js" type="text/javascript"
|
19
|
+
charset="utf-8"></script>
|
20
|
+
|
21
|
+
</head>
|
22
|
+
<body class="module">
|
23
|
+
|
24
|
+
<div id="metadata">
|
25
|
+
<div id="home-metadata">
|
26
|
+
<div id="home-section" class="section">
|
27
|
+
<h3 class="section-header">
|
28
|
+
<a href="./index.html">Home</a>
|
29
|
+
<a href="./index.html#classes">Classes</a>
|
30
|
+
<a href="./index.html#methods">Methods</a>
|
31
|
+
</h3>
|
32
|
+
</div>
|
33
|
+
</div>
|
34
|
+
|
35
|
+
<div id="file-metadata">
|
36
|
+
<div id="file-list-section" class="section">
|
37
|
+
<h3 class="section-header">In Files</h3>
|
38
|
+
<div class="section-body">
|
39
|
+
<ul>
|
40
|
+
|
41
|
+
<li><a href="./lib/job_boss/boss_rb.html?TB_iframe=true&height=550&width=785"
|
42
|
+
class="thickbox" title="lib/job_boss/boss.rb">lib/job_boss/boss.rb</a></li>
|
43
|
+
|
44
|
+
<li><a href="./lib/job_boss/configuror_rb.html?TB_iframe=true&height=550&width=785"
|
45
|
+
class="thickbox" title="lib/job_boss/configuror.rb">lib/job_boss/configuror.rb</a></li>
|
46
|
+
|
47
|
+
<li><a href="./lib/job_boss/job_rb.html?TB_iframe=true&height=550&width=785"
|
48
|
+
class="thickbox" title="lib/job_boss/job.rb">lib/job_boss/job.rb</a></li>
|
49
|
+
|
50
|
+
<li><a href="./lib/job_boss/queuer_rb.html?TB_iframe=true&height=550&width=785"
|
51
|
+
class="thickbox" title="lib/job_boss/queuer.rb">lib/job_boss/queuer.rb</a></li>
|
52
|
+
|
53
|
+
</ul>
|
54
|
+
</div>
|
55
|
+
</div>
|
56
|
+
|
57
|
+
|
58
|
+
</div>
|
59
|
+
|
60
|
+
<div id="class-metadata">
|
61
|
+
|
62
|
+
<!-- Parent Class -->
|
63
|
+
|
64
|
+
|
65
|
+
<!-- Namespace Contents -->
|
66
|
+
|
67
|
+
<div id="namespace-list-section" class="section">
|
68
|
+
<h3 class="section-header">Namespace</h3>
|
69
|
+
<ul class="link-list">
|
70
|
+
|
71
|
+
<li><span class="type">CLASS</span> <a href="JobBoss/Boss.html">JobBoss::Boss</a></li>
|
72
|
+
|
73
|
+
<li><span class="type">CLASS</span> <a href="JobBoss/Config.html">JobBoss::Config</a></li>
|
74
|
+
|
75
|
+
<li><span class="type">CLASS</span> <a href="JobBoss/Job.html">JobBoss::Job</a></li>
|
76
|
+
|
77
|
+
<li><span class="type">CLASS</span> <a href="JobBoss/Queuer.html">JobBoss::Queuer</a></li>
|
78
|
+
|
79
|
+
</ul>
|
80
|
+
</div>
|
81
|
+
|
82
|
+
|
83
|
+
<!-- Method Quickref -->
|
84
|
+
|
85
|
+
<div id="method-list-section" class="section">
|
86
|
+
<h3 class="section-header">Methods</h3>
|
87
|
+
<ul class="link-list">
|
88
|
+
|
89
|
+
<li><a href="#method-i-available_employees">#available_employees</a></li>
|
90
|
+
|
91
|
+
<li><a href="#method-i-cleanup_running_jobs">#cleanup_running_jobs</a></li>
|
92
|
+
|
93
|
+
<li><a href="#method-i-connect">#connect</a></li>
|
94
|
+
|
95
|
+
<li><a href="#method-i-kill_job">#kill_job</a></li>
|
96
|
+
|
97
|
+
<li><a href="#method-i-migrate">#migrate</a></li>
|
98
|
+
|
99
|
+
<li><a href="#method-i-require_job_classes">#require_job_classes</a></li>
|
100
|
+
|
101
|
+
<li><a href="#method-i-shutdown_running_jobs">#shutdown_running_jobs</a></li>
|
102
|
+
|
103
|
+
</ul>
|
104
|
+
</div>
|
105
|
+
|
106
|
+
|
107
|
+
<!-- Included Modules -->
|
108
|
+
|
109
|
+
</div>
|
110
|
+
|
111
|
+
<div id="project-metadata">
|
112
|
+
|
113
|
+
|
114
|
+
<div id="fileindex-section" class="section project-section">
|
115
|
+
<h3 class="section-header">Files</h3>
|
116
|
+
<ul>
|
117
|
+
|
118
|
+
<li class="file"><a href="./Rakefile.html">Rakefile</a></li>
|
119
|
+
|
120
|
+
</ul>
|
121
|
+
</div>
|
122
|
+
|
123
|
+
|
124
|
+
<div id="classindex-section" class="section project-section">
|
125
|
+
<h3 class="section-header">Class Index
|
126
|
+
<span class="search-toggle"><img src="./images/find.png"
|
127
|
+
height="16" width="16" alt="[+]"
|
128
|
+
title="show/hide quicksearch" /></span></h3>
|
129
|
+
<form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
|
130
|
+
<fieldset>
|
131
|
+
<legend>Quicksearch</legend>
|
132
|
+
<input type="text" name="quicksearch" value=""
|
133
|
+
class="quicksearch-field" />
|
134
|
+
</fieldset>
|
135
|
+
</form>
|
136
|
+
|
137
|
+
<ul class="link-list">
|
138
|
+
|
139
|
+
<li><a href="./JobBoss.html">JobBoss</a></li>
|
140
|
+
|
141
|
+
<li><a href="./JobBoss/Boss.html">JobBoss::Boss</a></li>
|
142
|
+
|
143
|
+
<li><a href="./JobBoss/Config.html">JobBoss::Config</a></li>
|
144
|
+
|
145
|
+
<li><a href="./JobBoss/Job.html">JobBoss::Job</a></li>
|
146
|
+
|
147
|
+
<li><a href="./JobBoss/Queuer.html">JobBoss::Queuer</a></li>
|
148
|
+
|
149
|
+
<li><a href="./CreateJobs.html">CreateJobs</a></li>
|
150
|
+
|
151
|
+
</ul>
|
152
|
+
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
|
153
|
+
</div>
|
154
|
+
|
155
|
+
|
156
|
+
</div>
|
157
|
+
</div>
|
158
|
+
|
159
|
+
<div id="documentation">
|
160
|
+
<h1 class="module">JobBoss</h1>
|
161
|
+
|
162
|
+
<div id="description">
|
163
|
+
|
164
|
+
</div>
|
165
|
+
|
166
|
+
<!-- Constants -->
|
167
|
+
|
168
|
+
|
169
|
+
<!-- Attributes -->
|
170
|
+
|
171
|
+
|
172
|
+
<!-- Methods -->
|
173
|
+
|
174
|
+
<div id="private-instance-method-details" class="method-section section">
|
175
|
+
<h3 class="section-header">Private Instance Methods</h3>
|
176
|
+
|
177
|
+
|
178
|
+
<div id="available-employees-method" class="method-detail ">
|
179
|
+
<a name="method-i-available_employees"></a>
|
180
|
+
|
181
|
+
<div class="method-heading">
|
182
|
+
|
183
|
+
<span class="method-name">available_employees</span><span
|
184
|
+
class="method-args">()</span>
|
185
|
+
<span class="method-click-advice">click to toggle source</span>
|
186
|
+
|
187
|
+
</div>
|
188
|
+
|
189
|
+
<div class="method-description">
|
190
|
+
|
191
|
+
<p>
|
192
|
+
Total number of employees which can be run
|
193
|
+
</p>
|
194
|
+
|
195
|
+
|
196
|
+
|
197
|
+
<div class="method-source-code"
|
198
|
+
id="available-employees-source">
|
199
|
+
<pre>
|
200
|
+
<span class="ruby-comment cmt"># File lib/job_boss/boss.rb, line 106</span>
|
201
|
+
106: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">available_employees</span>
|
202
|
+
107: <span class="ruby-identifier">cleanup_running_jobs</span>
|
203
|
+
108:
|
204
|
+
109: <span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">employee_limit</span> <span class="ruby-operator">-</span> <span class="ruby-ivar">@running_jobs</span>.<span class="ruby-identifier">size</span>
|
205
|
+
110: <span class="ruby-keyword kw">end</span></pre>
|
206
|
+
</div>
|
207
|
+
|
208
|
+
</div>
|
209
|
+
|
210
|
+
|
211
|
+
|
212
|
+
|
213
|
+
</div>
|
214
|
+
|
215
|
+
|
216
|
+
<div id="cleanup-running-jobs-method" class="method-detail ">
|
217
|
+
<a name="method-i-cleanup_running_jobs"></a>
|
218
|
+
|
219
|
+
<div class="method-heading">
|
220
|
+
|
221
|
+
<span class="method-name">cleanup_running_jobs</span><span
|
222
|
+
class="method-args">()</span>
|
223
|
+
<span class="method-click-advice">click to toggle source</span>
|
224
|
+
|
225
|
+
</div>
|
226
|
+
|
227
|
+
<div class="method-description">
|
228
|
+
|
229
|
+
<p>
|
230
|
+
Cleans up @running_jobs variable, getting rid of jobs which have completed,
|
231
|
+
which have been cancelled, or which went MIA
|
232
|
+
</p>
|
233
|
+
|
234
|
+
|
235
|
+
|
236
|
+
<div class="method-source-code"
|
237
|
+
id="cleanup-running-jobs-source">
|
238
|
+
<pre>
|
239
|
+
<span class="ruby-comment cmt"># File lib/job_boss/boss.rb, line 86</span>
|
240
|
+
86: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cleanup_running_jobs</span>
|
241
|
+
87: <span class="ruby-constant">Job</span>.<span class="ruby-identifier">uncached</span> <span class="ruby-keyword kw">do</span>
|
242
|
+
88: <span class="ruby-ivar">@running_jobs</span> = <span class="ruby-constant">Job</span>.<span class="ruby-identifier">running</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value str">'id in (?)'</span>, <span class="ruby-ivar">@running_jobs</span>)
|
243
|
+
89:
|
244
|
+
90: <span class="ruby-identifier">cancelled_jobs</span> = <span class="ruby-ivar">@running_jobs</span>.<span class="ruby-identifier">select</span>(&<span class="ruby-value">:cancelled?</span>)
|
245
|
+
91: <span class="ruby-identifier">cancelled_jobs</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">job</span><span class="ruby-operator">|</span> <span class="ruby-identifier">kill_job</span>(<span class="ruby-identifier">job</span>) }
|
246
|
+
92: <span class="ruby-ivar">@running_jobs</span> <span class="ruby-operator">-=</span> <span class="ruby-identifier">cancelled_jobs</span>
|
247
|
+
93:
|
248
|
+
94: <span class="ruby-comment cmt"># Clean out any jobs whos processes have stopped running for some reason</span>
|
249
|
+
95: <span class="ruby-ivar">@running_jobs</span> = <span class="ruby-ivar">@running_jobs</span>.<span class="ruby-identifier">select</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">job</span><span class="ruby-operator">|</span>
|
250
|
+
96: <span class="ruby-keyword kw">begin</span>
|
251
|
+
97: <span class="ruby-constant">Process</span>.<span class="ruby-identifier">kill</span>(<span class="ruby-value">0</span>, <span class="ruby-identifier">job</span>.<span class="ruby-identifier">employee_pid</span>.<span class="ruby-identifier">to_i</span>)
|
252
|
+
98: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Errno</span><span class="ruby-operator">::</span><span class="ruby-constant">ESRCH</span>
|
253
|
+
99: <span class="ruby-keyword kw">nil</span>
|
254
|
+
100: <span class="ruby-keyword kw">end</span>
|
255
|
+
101: <span class="ruby-keyword kw">end</span>
|
256
|
+
102: <span class="ruby-keyword kw">end</span>
|
257
|
+
103: <span class="ruby-keyword kw">end</span></pre>
|
258
|
+
</div>
|
259
|
+
|
260
|
+
</div>
|
261
|
+
|
262
|
+
|
263
|
+
|
264
|
+
|
265
|
+
</div>
|
266
|
+
|
267
|
+
|
268
|
+
<div id="connect-method" class="method-detail ">
|
269
|
+
<a name="method-i-connect"></a>
|
270
|
+
|
271
|
+
<div class="method-heading">
|
272
|
+
|
273
|
+
<span class="method-name">connect</span><span
|
274
|
+
class="method-args">()</span>
|
275
|
+
<span class="method-click-advice">click to toggle source</span>
|
276
|
+
|
277
|
+
</div>
|
278
|
+
|
279
|
+
<div class="method-description">
|
280
|
+
|
281
|
+
|
282
|
+
|
283
|
+
|
284
|
+
|
285
|
+
<div class="method-source-code"
|
286
|
+
id="connect-source">
|
287
|
+
<pre>
|
288
|
+
<span class="ruby-comment cmt"># File lib/job_boss/boss.rb, line 112</span>
|
289
|
+
112: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">connect</span>
|
290
|
+
113: <span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">database_yaml_path</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">working_dir</span>, <span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">database_yaml_path</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">database_yaml_path</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">==</span> <span class="ruby-value">//</span>
|
291
|
+
114:
|
292
|
+
115: <span class="ruby-identifier">raise</span> <span class="ruby-node">"Database YAML file missing (#{@@config.database_yaml_path})"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">database_yaml_path</span>)
|
293
|
+
116:
|
294
|
+
117: <span class="ruby-identifier">config</span> = <span class="ruby-constant">YAML</span>.<span class="ruby-identifier">load</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">database_yaml_path</span>))
|
295
|
+
118:
|
296
|
+
119: <span class="ruby-constant">ActiveRecord</span><span class="ruby-operator">::</span><span class="ruby-constant">Base</span>.<span class="ruby-identifier">establish_connection</span>(<span class="ruby-identifier">config</span>[<span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">environment</span>])
|
297
|
+
120: <span class="ruby-keyword kw">end</span></pre>
|
298
|
+
</div>
|
299
|
+
|
300
|
+
</div>
|
301
|
+
|
302
|
+
|
303
|
+
|
304
|
+
|
305
|
+
</div>
|
306
|
+
|
307
|
+
|
308
|
+
<div id="kill-job-method" class="method-detail ">
|
309
|
+
<a name="method-i-kill_job"></a>
|
310
|
+
|
311
|
+
<div class="method-heading">
|
312
|
+
|
313
|
+
<span class="method-name">kill_job</span><span
|
314
|
+
class="method-args">(job)</span>
|
315
|
+
<span class="method-click-advice">click to toggle source</span>
|
316
|
+
|
317
|
+
</div>
|
318
|
+
|
319
|
+
<div class="method-description">
|
320
|
+
|
321
|
+
|
322
|
+
|
323
|
+
|
324
|
+
|
325
|
+
<div class="method-source-code"
|
326
|
+
id="kill-job-source">
|
327
|
+
<pre>
|
328
|
+
<span class="ruby-comment cmt"># File lib/job_boss/boss.rb, line 137</span>
|
329
|
+
137: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">kill_job</span>(<span class="ruby-identifier">job</span>)
|
330
|
+
138: <span class="ruby-keyword kw">begin</span>
|
331
|
+
139: <span class="ruby-constant">Process</span>.<span class="ruby-identifier">kill</span>(<span class="ruby-value str">"HUP"</span>, <span class="ruby-identifier">job</span>.<span class="ruby-identifier">employee_pid</span>.<span class="ruby-identifier">to_i</span>)
|
332
|
+
140: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Errno</span><span class="ruby-operator">::</span><span class="ruby-constant">ESRCH</span>
|
333
|
+
141: <span class="ruby-keyword kw">nil</span>
|
334
|
+
142: <span class="ruby-keyword kw">end</span>
|
335
|
+
143: <span class="ruby-keyword kw">end</span></pre>
|
336
|
+
</div>
|
337
|
+
|
338
|
+
</div>
|
339
|
+
|
340
|
+
|
341
|
+
|
342
|
+
|
343
|
+
</div>
|
344
|
+
|
345
|
+
|
346
|
+
<div id="migrate-method" class="method-detail ">
|
347
|
+
<a name="method-i-migrate"></a>
|
348
|
+
|
349
|
+
<div class="method-heading">
|
350
|
+
|
351
|
+
<span class="method-name">migrate</span><span
|
352
|
+
class="method-args">()</span>
|
353
|
+
<span class="method-click-advice">click to toggle source</span>
|
354
|
+
|
355
|
+
</div>
|
356
|
+
|
357
|
+
<div class="method-description">
|
358
|
+
|
359
|
+
|
360
|
+
|
361
|
+
|
362
|
+
|
363
|
+
<div class="method-source-code"
|
364
|
+
id="migrate-source">
|
365
|
+
<pre>
|
366
|
+
<span class="ruby-comment cmt"># File lib/job_boss/boss.rb, line 130</span>
|
367
|
+
130: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">migrate</span>
|
368
|
+
131: <span class="ruby-keyword kw">unless</span> <span class="ruby-constant">Job</span>.<span class="ruby-identifier">table_exists?</span>
|
369
|
+
132: <span class="ruby-identifier">require</span> <span class="ruby-value str">'migrate'</span>
|
370
|
+
133: <span class="ruby-constant">CreateJobs</span>.<span class="ruby-identifier">up</span>
|
371
|
+
134: <span class="ruby-keyword kw">end</span>
|
372
|
+
135: <span class="ruby-keyword kw">end</span></pre>
|
373
|
+
</div>
|
374
|
+
|
375
|
+
</div>
|
376
|
+
|
377
|
+
|
378
|
+
|
379
|
+
|
380
|
+
</div>
|
381
|
+
|
382
|
+
|
383
|
+
<div id="require-job-classes-method" class="method-detail ">
|
384
|
+
<a name="method-i-require_job_classes"></a>
|
385
|
+
|
386
|
+
<div class="method-heading">
|
387
|
+
|
388
|
+
<span class="method-name">require_job_classes</span><span
|
389
|
+
class="method-args">()</span>
|
390
|
+
<span class="method-click-advice">click to toggle source</span>
|
391
|
+
|
392
|
+
</div>
|
393
|
+
|
394
|
+
<div class="method-description">
|
395
|
+
|
396
|
+
|
397
|
+
|
398
|
+
|
399
|
+
|
400
|
+
<div class="method-source-code"
|
401
|
+
id="require-job-classes-source">
|
402
|
+
<pre>
|
403
|
+
<span class="ruby-comment cmt"># File lib/job_boss/boss.rb, line 122</span>
|
404
|
+
122: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">require_job_classes</span>
|
405
|
+
123: <span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">jobs_path</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">working_dir</span>, <span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">jobs_path</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">jobs_path</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">==</span> <span class="ruby-value">//</span>
|
406
|
+
124:
|
407
|
+
125: <span class="ruby-identifier">raise</span> <span class="ruby-node">"Jobs path missing (#{@@config.jobs_path})"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">jobs_path</span>)
|
408
|
+
126:
|
409
|
+
127: <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">glob</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">@@config</span>.<span class="ruby-identifier">jobs_path</span>, <span class="ruby-value str">'*.rb'</span>)).<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">job_class</span><span class="ruby-operator">|</span> <span class="ruby-identifier">require</span> <span class="ruby-identifier">job_class</span> }
|
410
|
+
128: <span class="ruby-keyword kw">end</span></pre>
|
411
|
+
</div>
|
412
|
+
|
413
|
+
</div>
|
414
|
+
|
415
|
+
|
416
|
+
|
417
|
+
|
418
|
+
</div>
|
419
|
+
|
420
|
+
|
421
|
+
<div id="shutdown-running-jobs-method" class="method-detail ">
|
422
|
+
<a name="method-i-shutdown_running_jobs"></a>
|
423
|
+
|
424
|
+
<div class="method-heading">
|
425
|
+
|
426
|
+
<span class="method-name">shutdown_running_jobs</span><span
|
427
|
+
class="method-args">()</span>
|
428
|
+
<span class="method-click-advice">click to toggle source</span>
|
429
|
+
|
430
|
+
</div>
|
431
|
+
|
432
|
+
<div class="method-description">
|
433
|
+
|
434
|
+
|
435
|
+
|
436
|
+
|
437
|
+
|
438
|
+
<div class="method-source-code"
|
439
|
+
id="shutdown-running-jobs-source">
|
440
|
+
<pre>
|
441
|
+
<span class="ruby-comment cmt"># File lib/job_boss/boss.rb, line 145</span>
|
442
|
+
145: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">shutdown_running_jobs</span>
|
443
|
+
146: <span class="ruby-identifier">cleanup_running_jobs</span>
|
444
|
+
147:
|
445
|
+
148: <span class="ruby-ivar">@running_jobs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">job</span><span class="ruby-operator">|</span>
|
446
|
+
149: <span class="ruby-identifier">kill_job</span>(<span class="ruby-identifier">job</span>)
|
447
|
+
150: <span class="ruby-identifier">job</span>.<span class="ruby-identifier">mark_for_redo</span>
|
448
|
+
151: <span class="ruby-keyword kw">end</span>
|
449
|
+
152: <span class="ruby-keyword kw">end</span></pre>
|
450
|
+
</div>
|
451
|
+
|
452
|
+
</div>
|
453
|
+
|
454
|
+
|
455
|
+
|
456
|
+
|
457
|
+
</div>
|
458
|
+
|
459
|
+
|
460
|
+
</div>
|
461
|
+
|
462
|
+
|
463
|
+
</div>
|
464
|
+
|
465
|
+
|
466
|
+
<div id="rdoc-debugging-section-dump" class="debugging-section">
|
467
|
+
|
468
|
+
<p>Disabled; run with --debug to generate this.</p>
|
469
|
+
|
470
|
+
</div>
|
471
|
+
|
472
|
+
<div id="validator-badges">
|
473
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
474
|
+
<p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
|
475
|
+
Rdoc Generator</a> 1.1.6</small>.</p>
|
476
|
+
</div>
|
477
|
+
|
478
|
+
</body>
|
479
|
+
</html>
|
480
|
+
|