@@ -28,7 +28,7 @@ var cli = exports,
28
28
argv , curr_opt , curr_val , full_opt , is_long ,
29
29
short_tags = [ ] , opt_list , parsed = { } ,
30
30
usage , argv_parsed , command_list , commands ,
31
- daemon , daemon_arg , show_debug ;
31
+ show_debug ;
32
32
33
33
cli . app = null ;
34
34
cli . version = null ;
@@ -85,7 +85,6 @@ if (process.env.NODE_DISABLE_COLORS || process.env.TERM === 'dumb') {
85
85
var enable = {
86
86
help : true , //Adds -h, --help
87
87
version : false , //Adds -v,--version => gets version by parsing a nearby package.json
88
- daemon : false , //Adds -d,--daemon [ARG] => (see cli.daemon() below)
89
88
status : false , //Adds -k,--no-color & --debug => display plain status messages /display debug messages
90
89
timeout : false , //Adds -t,--timeout N => timeout the process after N seconds
91
90
catchall : false , //Adds -c,--catch => catch and output uncaughtExceptions
@@ -94,16 +93,6 @@ var enable = {
94
93
cli . enable = function ( /*plugins*/ ) {
95
94
Array . prototype . slice . call ( arguments ) . forEach ( function ( plugin ) {
96
95
switch ( plugin ) {
97
- case 'daemon' :
98
- try {
99
- daemon = require ( 'daemon' ) ;
100
- if ( typeof daemon . daemonize !== 'function' ) {
101
- throw 'Invalid module' ;
102
- }
103
- } catch ( e ) {
104
- cli . fatal ( 'daemon.node not installed. Please run `npm install daemon`' ) ;
105
- }
106
- break ;
107
96
case 'catchall' :
108
97
process . on ( 'uncaughtException' , function ( err ) {
109
98
cli . error ( 'Uncaught exception: ' + ( err . msg || err ) ) ;
@@ -347,9 +336,6 @@ cli.parse = function (opts, command_def) {
347
336
console . error ( cli . app + ' v' + cli . version ) ;
348
337
cli . exit ( ) ;
349
338
break ;
350
- } else if ( enable . daemon && ( o === 'd' || o === 'daemon' ) ) {
351
- daemon_arg = cli . getArrayValue ( [ 'start' , 'stop' , 'restart' , 'pid' , 'log' ] , is_long ? null : 'start' ) ;
352
- continue ;
353
339
} else if ( enable . catchall && ( o === 'c' || o === 'catch' ) ) {
354
340
continue ;
355
341
} else if ( enable . status && ( o === 'k' || o === 'no-color' ) ) {
@@ -667,9 +653,6 @@ cli.getUsage = function (code) {
667
653
if ( enable . catchall && seen_opts . indexOf ( 'c' ) === - 1 && seen_opts . indexOf ( 'catch' ) === - 1 ) {
668
654
console . error ( pad ( ' -c, --catch' , switch_pad ) + 'Catch unanticipated errors' ) ;
669
655
}
670
- if ( enable . daemon && seen_opts . indexOf ( 'd' ) === - 1 && seen_opts . indexOf ( 'daemon' ) === - 1 ) {
671
- console . error ( pad ( ' -d, --daemon [ARG]' , switch_pad ) + 'Daemonize the process. Control the daemon using [start, stop, restart, log, pid]' ) ;
672
- }
673
656
if ( enable . version && seen_opts . indexOf ( 'v' ) === - 1 && seen_opts . indexOf ( 'version' ) === - 1 ) {
674
657
console . error ( pad ( ' -v, --version' , switch_pad ) + 'Display the current version' ) ;
675
658
}
@@ -965,102 +948,13 @@ cli.toType = function(obj) {
965
948
}
966
949
967
950
/**
968
- * A method for creating and controlling a daemon.
969
- *
970
- * `arg` can be:
971
- * start = daemonizes the process
972
- * stop = stops the daemon if it is running
973
- * restart = alias for stop -> start
974
- * pid = outputs the daemon's PID if it is running
975
- * log = outputs the daemon's log file (stdout + stderr)
976
- *
977
- * @param {String } arg (Optional - default is 'start')
978
- * @param {Function } callback
979
- * @api public
980
- */
981
- cli . daemon = function ( arg , callback ) {
982
- if ( typeof daemon === 'undefined' ) {
983
- cli . fatal ( 'Daemon is not initialized' ) ;
984
- }
985
-
986
- if ( typeof arg === 'function' ) {
987
- callback = arg ;
988
- arg = 'start' ;
989
- }
990
-
991
- var lock_file = '/tmp/' + cli . app + '.pid' ,
992
- log_file = '/tmp/' + cli . app + '.log' ;
993
-
994
- var start = function ( ) {
995
- daemon . daemonize ( log_file , lock_file , function ( err ) {
996
- if ( err ) return cli . error ( 'Error starting daemon: ' + err ) ;
997
- callback ( ) ;
998
- } ) ;
999
- } ;
1000
-
1001
- var stop = function ( ) {
1002
- try {
1003
- cli . native . fs . readFileSync ( lock_file ) ;
1004
- } catch ( e ) {
1005
- return cli . error ( 'Daemon is not running' ) ;
1006
- }
1007
- daemon . kill ( lock_file , function ( err , pid ) {
1008
- if ( err && err . errno === 3 ) {
1009
- return cli . error ( 'Daemon is not running' ) ;
1010
- } else if ( err ) {
1011
- return cli . error ( 'Error stopping daemon: ' + err . errno ) ;
1012
- }
1013
- cli . ok ( 'Successfully stopped daemon with pid: ' + pid ) ;
1014
- } ) ;
1015
- } ;
1016
-
1017
- switch ( arg ) {
1018
- case 'stop' :
1019
- stop ( ) ;
1020
- break ;
1021
- case 'restart' :
1022
- daemon . stop ( lock_file , function ( ) {
1023
- start ( ) ;
1024
- } ) ;
1025
- break ;
1026
- case 'log' :
1027
- try {
1028
- cli . native . fs . createReadStream ( log_file , { encoding : 'utf8' } ) . pipe ( process . stdout ) ;
1029
- } catch ( e ) {
1030
- return cli . error ( 'No daemon log file' ) ;
1031
- }
1032
- break ;
1033
- case 'pid' :
1034
- try {
1035
- var pid = cli . native . fs . readFileSync ( lock_file , 'utf8' ) ;
1036
- cli . native . fs . statSync ( '/proc/' + pid ) ;
1037
- cli . info ( pid ) ;
1038
- } catch ( e ) {
1039
- return cli . error ( 'Daemon is not running' ) ;
1040
- }
1041
- break ;
1042
- default :
1043
- start ( ) ;
1044
- break ;
1045
- }
1046
- }
1047
-
1048
- /**
1049
- * The main entry method. Calling cli.main() is only necessary in
1050
- * scripts that have daemon support enabled. `callback` receives (args, options)
951
+ * The main entry method. `callback` receives (args, options)
1051
952
*
1052
953
* @param {Function } callback
1053
954
* @api public
1054
955
*/
1055
956
cli . main = function ( callback ) {
1056
- var after = function ( ) {
1057
- callback . apply ( cli , [ cli . args , cli . options ] ) ;
1058
- } ;
1059
- if ( enable . daemon && daemon_arg ) {
1060
- cli . daemon ( daemon_arg , after ) ;
1061
- } else {
1062
- after ( ) ;
1063
- }
957
+ callback . call ( cli , cli . args , cli . options ) ;
1064
958
}
1065
959
1066
960
/**
0 commit comments