Skip to content

Commit

Permalink
[docs] Updated docs from docco
Browse files Browse the repository at this point in the history
  • Loading branch information
indexzero committed Feb 14, 2011
1 parent ea89def commit 7b9b4be
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 7 deletions.
14 changes: 8 additions & 6 deletions docs/forever.html
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,18 @@

<span class="nx">require</span><span class="p">.</span><span class="nx">paths</span><span class="p">.</span><span class="nx">unshift</span><span class="p">(</span><span class="nx">__dirname</span><span class="p">);</span>

<span class="kd">var</span> <span class="nx">sys</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;sys&#39;</span><span class="p">),</span>
<span class="nx">fs</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;fs&#39;</span><span class="p">),</span>
<span class="kd">var</span> <span class="nx">fs</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;fs&#39;</span><span class="p">),</span>
<span class="nx">colors</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;colors&#39;</span><span class="p">),</span>
<span class="nx">path</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;path&#39;</span><span class="p">),</span>
<span class="nx">events</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;events&#39;</span><span class="p">),</span>
<span class="nx">exec</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;child_process&#39;</span><span class="p">).</span><span class="nx">exec</span><span class="p">,</span>
<span class="nx">timespan</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;timespan&#39;</span><span class="p">),</span>
<span class="nx">daemon</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;daemon&#39;</span><span class="p">);</span>

<span class="kd">var</span> <span class="nx">forever</span> <span class="o">=</span> <span class="nx">exports</span><span class="p">,</span> <span class="nx">config</span><span class="p">;</span></pre></div> </td> </tr> <tr id="section-2"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-2">&#182;</a> </div> <h3>Export Components / Settings</h3>

<p>Export <code>version</code> and important Prototypes from <code>lib/forever/*</code></p> </td> <td class="code"> <div class="highlight"><pre><span class="nx">forever</span><span class="p">.</span><span class="nx">version</span> <span class="o">=</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">4</span><span class="p">,</span> <span class="mi">0</span><span class="p">];</span>
<span class="nx">forever</span><span class="p">.</span><span class="nx">path</span> <span class="o">=</span> <span class="nx">path</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="s1">&#39;/tmp&#39;</span><span class="p">,</span> <span class="s1">&#39;forever&#39;</span><span class="p">);</span>
<span class="nx">forever</span><span class="p">.</span><span class="nx">Forever</span> <span class="o">=</span> <span class="nx">forever</span><span class="p">.</span><span class="nx">Monitor</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;forever/monitor&#39;</span><span class="p">).</span><span class="nx">Monitor</span><span class="p">;</span> </pre></div> </td> </tr> <tr id="section-3"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-3">&#182;</a> </div> <h3>function load (options, [callback])</h3>

<h4>@options {Object} Options to load into the forever module</h4>
Expand All @@ -28,7 +29,7 @@ <h4>[@callback] {function} Continuation to pass control back to</h4>
<p>Initializes configuration for forever module</p> </td> <td class="code"> <div class="highlight"><pre><span class="nx">forever</span><span class="p">.</span><span class="nx">load</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">options</span><span class="p">,</span> <span class="nx">callback</span><span class="p">)</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">emitter</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">events</span><span class="p">.</span><span class="nx">EventEmitter</span><span class="p">();</span>
<span class="nx">options</span> <span class="o">=</span> <span class="nx">options</span> <span class="o">||</span> <span class="p">{};</span>
<span class="nx">options</span><span class="p">.</span><span class="nx">root</span> <span class="o">=</span> <span class="nx">options</span><span class="p">.</span><span class="nx">root</span> <span class="o">||</span> <span class="nx">path</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="s1">&#39;/tmp&#39;</span><span class="p">,</span> <span class="s1">&#39;forever&#39;</span><span class="p">),</span>
<span class="nx">options</span><span class="p">.</span><span class="nx">root</span> <span class="o">=</span> <span class="nx">options</span><span class="p">.</span><span class="nx">root</span> <span class="o">||</span> <span class="nx">forever</span><span class="p">.</span><span class="nx">path</span><span class="p">,</span>
<span class="nx">options</span><span class="p">.</span><span class="nx">pidPath</span> <span class="o">=</span> <span class="nx">options</span><span class="p">.</span><span class="nx">pidPath</span> <span class="o">||</span> <span class="nx">path</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="nx">options</span><span class="p">.</span><span class="nx">root</span><span class="p">,</span> <span class="s1">&#39;pids&#39;</span><span class="p">);</span>
<span class="nx">forever</span><span class="p">.</span><span class="nx">config</span> <span class="o">=</span> <span class="nx">config</span> <span class="o">=</span> <span class="nx">options</span><span class="p">;</span>
</pre></div> </td> </tr> <tr id="section-4"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-4">&#182;</a> </div> <p>Create the two directories, ignoring errors</p> </td> <td class="code"> <div class="highlight"><pre> <span class="nx">fs</span><span class="p">.</span><span class="nx">mkdir</span><span class="p">(</span><span class="nx">config</span><span class="p">.</span><span class="nx">root</span><span class="p">,</span> <span class="mi">0755</span><span class="p">,</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">err</span><span class="p">)</span> <span class="p">{</span>
Expand Down Expand Up @@ -63,17 +64,17 @@ <h4>@script {string} Location of the script to run.</h4>
<h4>@options {Object} Configuration for forever instance.</h4>

<p>Starts a script with forever</p> </td> <td class="code"> <div class="highlight"><pre><span class="nx">forever</span><span class="p">.</span><span class="nx">start</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">script</span><span class="p">,</span> <span class="nx">options</span><span class="p">)</span> <span class="p">{</span>
<span class="k">return</span> <span class="k">new</span> <span class="nx">Forever</span><span class="p">(</span><span class="nx">script</span><span class="p">,</span> <span class="nx">options</span><span class="p">).</span><span class="nx">start</span><span class="p">();</span>
<span class="k">return</span> <span class="k">new</span> <span class="nx">forever</span><span class="p">.</span><span class="nx">Monitor</span><span class="p">(</span><span class="nx">script</span><span class="p">,</span> <span class="nx">options</span><span class="p">).</span><span class="nx">start</span><span class="p">();</span>
<span class="p">};</span></pre></div> </td> </tr> <tr id="section-7"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-7">&#182;</a> </div> <h3>function startDaemon (script, options)</h3>

<h4>@script {string} Location of the script to run.</h4>

<h4>@options {Object} Configuration for forever instance.</h4>

<p>Starts a script with forever as a daemon</p> </td> <td class="code"> <div class="highlight"><pre><span class="nx">forever</span><span class="p">.</span><span class="nx">startDaemon</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">file</span><span class="p">,</span> <span class="nx">options</span><span class="p">)</span> <span class="p">{</span>
<p>Starts a script with forever as a daemon</p> </td> <td class="code"> <div class="highlight"><pre><span class="nx">forever</span><span class="p">.</span><span class="nx">startDaemon</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">script</span><span class="p">,</span> <span class="nx">options</span><span class="p">)</span> <span class="p">{</span>
<span class="nx">options</span><span class="p">.</span><span class="nx">logFile</span> <span class="o">=</span> <span class="nx">path</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="nx">config</span><span class="p">.</span><span class="nx">root</span><span class="p">,</span> <span class="nx">options</span><span class="p">.</span><span class="nx">logFile</span> <span class="o">||</span> <span class="s1">&#39;forever.log&#39;</span><span class="p">);</span>
<span class="nx">options</span><span class="p">.</span><span class="nx">pidFile</span> <span class="o">=</span> <span class="nx">path</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="nx">config</span><span class="p">.</span><span class="nx">pidPath</span><span class="p">,</span> <span class="nx">options</span><span class="p">.</span><span class="nx">pidFile</span><span class="p">);</span>
<span class="kd">var</span> <span class="nx">runner</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Forever</span><span class="p">(</span><span class="nx">file</span><span class="p">,</span> <span class="nx">options</span><span class="p">);</span>
<span class="kd">var</span> <span class="nx">runner</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">forever</span><span class="p">.</span><span class="nx">Monitor</span><span class="p">(</span><span class="nx">script</span><span class="p">,</span> <span class="nx">options</span><span class="p">);</span>

<span class="nx">daemon</span><span class="p">.</span><span class="nx">daemonize</span><span class="p">(</span><span class="nx">options</span><span class="p">.</span><span class="nx">logFile</span><span class="p">,</span> <span class="nx">options</span><span class="p">.</span><span class="nx">pidFile</span><span class="p">,</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">err</span><span class="p">,</span> <span class="nx">pid</span><span class="p">)</span> <span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="nx">err</span><span class="p">)</span> <span class="k">return</span> <span class="nx">runner</span><span class="p">.</span><span class="nx">emit</span><span class="p">(</span><span class="s1">&#39;error&#39;</span><span class="p">,</span> <span class="nx">err</span><span class="p">);</span>
Expand Down Expand Up @@ -283,6 +284,7 @@ <h4>@padding {string} Padding to add to the formatted output</h4>
<span class="p">.</span><span class="nx">concat</span><span class="p">(</span><span class="nx">proc</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">map</span><span class="p">(</span><span class="kd">function</span> <span class="p">(</span><span class="nx">opt</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span> <span class="nx">opt</span><span class="p">.</span><span class="nx">green</span> <span class="p">}))</span>
<span class="p">.</span><span class="nx">concat</span><span class="p">([</span><span class="nx">padding</span> <span class="o">+</span> <span class="s1">&#39;[&#39;</span> <span class="o">+</span> <span class="nx">proc</span><span class="p">.</span><span class="nx">pid</span> <span class="o">+</span> <span class="s1">&#39;,&#39;</span><span class="p">,</span> <span class="nx">proc</span><span class="p">.</span><span class="nx">foreverPid</span> <span class="o">+</span> <span class="s1">&#39;]&#39;</span><span class="p">])</span>
<span class="p">.</span><span class="nx">concat</span><span class="p">(</span><span class="nx">proc</span><span class="p">.</span><span class="nx">logFile</span><span class="p">.</span><span class="nx">magenta</span><span class="p">)</span>
<span class="p">.</span><span class="nx">concat</span><span class="p">(</span><span class="nx">timespan</span><span class="p">.</span><span class="nx">fromDates</span><span class="p">(</span><span class="k">new</span> <span class="nb">Date</span><span class="p">(</span><span class="nx">proc</span><span class="p">.</span><span class="nx">ctime</span><span class="p">),</span> <span class="k">new</span> <span class="nb">Date</span><span class="p">()).</span><span class="nx">toString</span><span class="p">().</span><span class="nx">yellow</span><span class="p">)</span>
<span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="s1">&#39; &#39;</span><span class="p">);</span>
<span class="p">};</span></pre></div> </td> </tr> <tr id="section-26"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-26">&#182;</a> </div> <h3>function getAllProcess ([findDead])</h3>

Expand Down
8 changes: 7 additions & 1 deletion docs/forever/monitor.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,11 @@
<span class="cm"> *</span>
<span class="cm"> */</span>

<span class="kd">var</span> <span class="nx">spawn</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;child_process&#39;</span><span class="p">).</span><span class="nx">spawn</span><span class="p">,</span>
<span class="kd">var</span> <span class="nx">sys</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;sys&#39;</span><span class="p">),</span>
<span class="nx">fs</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;fs&#39;</span><span class="p">),</span>
<span class="nx">path</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;path&#39;</span><span class="p">),</span>
<span class="nx">events</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;events&#39;</span><span class="p">),</span>
<span class="nx">spawn</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;child_process&#39;</span><span class="p">).</span><span class="nx">spawn</span><span class="p">,</span>
<span class="nx">forever</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;forever&#39;</span><span class="p">);</span></pre></div> </td> </tr> <tr id="section-2"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-2">&#182;</a> </div> <h3>function Monitor (script, options)</h3>

<h4>@script {string} Location of the target script to run.</h4>
Expand Down Expand Up @@ -64,6 +68,7 @@ <h4>@restart {boolean} Value indicating whether this is a restart.</h4>
<span class="k">return</span> <span class="k">this</span><span class="p">;</span>
<span class="p">}</span>

<span class="k">this</span><span class="p">.</span><span class="nx">ctime</span> <span class="o">=</span> <span class="nb">Date</span><span class="p">.</span><span class="nx">now</span><span class="p">();</span>
<span class="k">this</span><span class="p">.</span><span class="nx">child</span> <span class="o">=</span> <span class="nx">child</span><span class="p">;</span>
<span class="k">this</span><span class="p">.</span><span class="nx">running</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
<span class="nx">self</span><span class="p">.</span><span class="nx">emit</span><span class="p">(</span><span class="nx">restart</span> <span class="o">?</span> <span class="s1">&#39;restart&#39;</span> <span class="o">:</span> <span class="s1">&#39;start&#39;</span><span class="p">,</span> <span class="nx">self</span><span class="p">);</span>
Expand Down Expand Up @@ -128,6 +133,7 @@ <h4>@restart {boolean} Value indicating whether this is a restart.</h4>
<span class="p">}</span>

<span class="kd">var</span> <span class="nx">childData</span> <span class="o">=</span> <span class="p">{</span>
<span class="nx">ctime</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">ctime</span><span class="p">,</span>
<span class="nx">pid</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">child</span><span class="p">.</span><span class="nx">pid</span><span class="p">,</span>
<span class="nx">foreverPid</span><span class="o">:</span> <span class="nx">process</span><span class="p">.</span><span class="nx">pid</span><span class="p">,</span>
<span class="nx">logFile</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">logFile</span><span class="p">,</span>
Expand Down

0 comments on commit 7b9b4be

Please sign in to comment.