6
6
*
7
7
*/
8
8
9
- require . paths . unshift ( __dirname ) ;
10
-
11
9
var fs = require ( 'fs' ) ,
12
- colors = require ( 'colors' ) ,
13
- async = require ( 'async' ) ,
14
10
path = require ( 'path' ) ,
15
11
events = require ( 'events' ) ,
16
12
exec = require ( 'child_process' ) . exec ,
17
- timespan = require ( 'timespan' ) ,
13
+ async = require ( 'async' ) ,
14
+ colors = require ( 'colors' ) ,
15
+ daemon = require ( 'daemon' ) ,
18
16
nconf = require ( 'nconf' ) ,
19
- daemon = require ( 'daemon ' ) ;
17
+ timespan = require ( 'timespan ' ) ;
20
18
21
19
var forever = exports ;
22
20
23
21
//
24
22
// ### Export Components / Settings
25
23
// Export `version` and important Prototypes from `lib/forever/*`
26
24
//
27
- forever . version = [ 0 , 4 , 0 ] ;
28
25
forever . initialized = false ;
29
26
forever . root = path . join ( process . env . HOME , '.forever' ) ;
30
27
forever . config = new nconf . stores . File ( { file : path . join ( forever . root , 'config.json' ) } ) ;
31
- forever . cli = require ( 'forever/cli' ) ;
32
- forever . Forever = forever . Monitor = require ( 'forever/monitor' ) . Monitor ;
28
+ forever . cli = require ( './forever/cli' ) ;
29
+ forever . Forever = forever . Monitor = require ( './forever/monitor' ) . Monitor ;
30
+
31
+ //
32
+ // Expose version through `pkginfo`
33
+ //
34
+ require ( 'pkginfo' ) ( module , 'version' ) ;
33
35
34
36
//
35
37
// ### function load (options, [callback])
@@ -59,9 +61,7 @@ forever.load = function (options) {
59
61
// Try to load the forever `config.json` from
60
62
// the specified location.
61
63
//
62
- try {
63
- forever . config . loadSync ( ) ;
64
- }
64
+ try { forever . config . loadSync ( ) }
65
65
catch ( ex ) { }
66
66
67
67
forever . config . set ( 'root' , options . root ) ;
@@ -74,7 +74,7 @@ forever.load = function (options) {
74
74
// the setup of forever dramatically.
75
75
//
76
76
function tryCreate ( dir ) {
77
- try { fs . mkdirSync ( dir , 0755 ) ; }
77
+ try { fs . mkdirSync ( dir , 0755 ) }
78
78
catch ( ex ) { }
79
79
}
80
80
@@ -84,9 +84,7 @@ forever.load = function (options) {
84
84
//
85
85
// Attempt to save the new `config.json` for forever
86
86
//
87
- try {
88
- forever . config . saveSync ( ) ;
89
- }
87
+ try { forever . config . saveSync ( ) }
90
88
catch ( ex ) { }
91
89
92
90
forever . initialized = true ;
@@ -116,15 +114,18 @@ forever.stat = function (logFile, script, callback) {
116
114
}
117
115
118
116
fs . stat ( script , function ( err , stats ) {
119
- if ( err ) return realCallback ( new Error ( 'script ' + script + ' does not exist.' ) ) ;
120
-
121
- if ( logAppend ) {
122
- realCallback ( null ) ;
123
- return ;
117
+ if ( err ) {
118
+ return realCallback ( new Error ( 'script ' + script + ' does not exist.' ) ) ;
119
+ }
120
+ else if ( logAppend ) {
121
+ return realCallback ( null ) ;
124
122
}
125
123
126
124
fs . stat ( logFile , function ( err , stats ) {
127
- if ( ! err ) return realCallback ( new Error ( 'log file ' + logFile + ' exists.' ) ) ;
125
+ if ( ! err ) {
126
+ return realCallback ( new Error ( 'log file ' + logFile + ' exists.' ) ) ;
127
+ }
128
+
128
129
realCallback ( null ) ;
129
130
} ) ;
130
131
} ) ;
@@ -149,10 +150,13 @@ forever.start = function (script, options) {
149
150
forever . startDaemon = function ( script , options ) {
150
151
options . logFile = forever . logFilePath ( options . logFile ) ;
151
152
options . pidFile = forever . pidFilePath ( options . pidFile ) ;
153
+
152
154
var runner = new forever . Monitor ( script , options ) ;
153
155
154
156
fs . open ( options . logFile , options . appendLog ? 'a+' : 'w+' , function ( err , fd ) {
155
- if ( err ) return runner . emit ( 'error' , err ) ;
157
+ if ( err ) {
158
+ return runner . emit ( 'error' , err ) ;
159
+ }
156
160
157
161
var pid = daemon . start ( fd ) ;
158
162
daemon . lock ( options . pidFile ) ;
@@ -184,8 +188,9 @@ forever.stop = function (target, format, restart) {
184
188
processes = getAllProcesses ( ) ,
185
189
results = [ ] ;
186
190
187
- var procs = / ( \d + ) / . test ( target ) ? forever . findByIndex ( target , processes )
188
- : forever . findByScript ( target , processes ) ;
191
+ var procs = / ( \d + ) / . test ( target )
192
+ ? forever . findByIndex ( target , processes )
193
+ : forever . findByScript ( target , processes ) ;
189
194
190
195
if ( procs && procs . length > 0 ) {
191
196
procs . forEach ( function ( proc ) {
@@ -336,7 +341,9 @@ forever.list = function (format, procs) {
336
341
var formatted = [ ] ;
337
342
338
343
procs = procs || getAllProcesses ( ) ;
339
- if ( ! procs ) return null ;
344
+ if ( ! procs ) {
345
+ return null ;
346
+ }
340
347
341
348
if ( format ) {
342
349
var index = 0 , maxLen = 0 ;
@@ -454,6 +461,7 @@ forever.randomString = function (bits) {
454
461
ret += chars [ 0x3F & rand >>> i ] ;
455
462
}
456
463
}
464
+
457
465
return ret ;
458
466
} ;
459
467
@@ -463,11 +471,9 @@ forever.randomString = function (bits) {
463
471
// Determines the full logfile path name
464
472
//
465
473
forever . logFilePath = function ( logFile , uid ) {
466
- if ( logFile && logFile [ 0 ] === '/' ) {
467
- return logFile ;
468
- } else {
469
- return path . join ( forever . config . get ( 'root' ) , logFile || ( uid || 'forever' ) + '.log' ) ;
470
- }
474
+ return logFile && logFile [ 0 ] === '/'
475
+ ? logFile
476
+ : path . join ( forever . config . get ( 'root' ) , logFile || ( uid || 'forever' ) + '.log' ) ;
471
477
} ;
472
478
473
479
//
@@ -476,11 +482,9 @@ forever.logFilePath = function(logFile, uid) {
476
482
// Determines the full pid file path name
477
483
//
478
484
forever . pidFilePath = function ( pidFile ) {
479
- if ( pidFile && pidFile [ 0 ] === '/' ) {
480
- return pidFile ;
481
- } else {
482
- return path . join ( forever . config . get ( 'pidPath' ) , pidFile ) ;
483
- }
485
+ return pidFile && pidFile [ 0 ] === '/'
486
+ ? pidFile
487
+ : path . join ( forever . config . get ( 'pidPath' ) , pidFile ) ;
484
488
} ;
485
489
486
490
//
@@ -495,7 +499,10 @@ function checkProcess (pid, callback) {
495
499
}
496
500
497
501
exec ( 'ps ' + pid + ' | grep -v PID' , function ( err , stdout , stderr ) {
498
- if ( err ) return callback ( false ) ;
502
+ if ( err ) {
503
+ return callback ( false ) ;
504
+ }
505
+
499
506
callback ( stdout . indexOf ( pid ) !== - 1 ) ;
500
507
} ) ;
501
508
} ;
@@ -529,7 +536,9 @@ function getAllProcesses (findDead) {
529
536
var results = [ ] , processes = { } ,
530
537
files = fs . readdirSync ( forever . config . get ( 'pidPath' ) ) ;
531
538
532
- if ( files . length === 0 ) return null ;
539
+ if ( files . length === 0 ) {
540
+ return null ;
541
+ }
533
542
534
543
files . forEach ( function ( file ) {
535
544
try {
@@ -562,8 +571,13 @@ function getAllProcesses (findDead) {
562
571
} ) ;
563
572
564
573
Object . keys ( processes ) . forEach ( function ( key ) {
565
- if ( ! processes [ key ] . pid && ! findDead ) return ;
566
- else if ( ! processes [ key ] . pid ) processes [ key ] . dead = true ;
574
+ if ( ! processes [ key ] . pid && ! findDead ) {
575
+ return ;
576
+ }
577
+ else if ( ! processes [ key ] . pid ) {
578
+ processes [ key ] . dead = true ;
579
+ }
580
+
567
581
results . push ( processes [ key ] ) ;
568
582
} ) ;
569
583
0 commit comments