通过foreverjs执行gulp任务

通过foreverjs执行gulp任务,gulp,forever,forever-monitor,grunt-forever,Gulp,Forever,Forever Monitor,Grunt Forever,我目前正在努力构建一个启动web应用程序的脚本 我想使用foreverjs,因为我已经用它启动了我的后端。我的json文件将由foreverjs执行,如下所示: [ { "uid": "my_backend", "append": true, "script": "app.js", "sourceDir": "/path/to/backend/" }, { "uid": "my_frontend", "append": true, "scr

我目前正在努力构建一个启动web应用程序的脚本

我想使用foreverjs,因为我已经用它启动了我的后端。我的json文件将由foreverjs执行,如下所示:

[
 { 
   "uid": "my_backend",
   "append": true,   
   "script": "app.js",
   "sourceDir": "/path/to/backend/"
 },
 {
   "uid": "my_frontend",
   "append": true,
   "script": "???",
   "command": "gulp dist && gulp production"
   "sourceDir": "/path/to/frontend/"
 }
]

我不太确定我应该在前端使用什么。我需要使用gulp,所以我假设我必须在“command”中添加它。但是,我的脚本需要为空,这是foreverjs不允许的。有没有关于如何通过foreverjs运行gulp的建议?

我自己解决了这个问题,在init.d中使用了以下脚本:

WORKINGDIR=/usr/local/app/my/app
SCRIPT='/usr/local/app/my/app/node_modules/gulp/bin/gulp.js production'
LOG=/usr/local/app/my/app/log
PID=/root/.forever/pids/myapp.pid
FOREVER=/usr/local/node/node-default/bin/forever
UID_APP='myapp'
case "$1" in
    start)
        $FOREVER start --workingDir $WORKINGDIR --uid $UID_APP  -l $LOG/forever.log -o $LOG/forever_out.log -e $LOG/forever_err.log --pidFile $PID -a $SCRIPT
        ;;
    stop)
        $FOREVER stop $UID_APP --pidFile $PID
        ;;
    stopall)
        $FOREVER stopall --pidFile $PID
        ;;
    restartall)
        $FOREVER restartall --pidFile $PID
        ;;
    reload|restart)
        $FOREVER restart -l $LOG/forever.log -o $LOG/forever_out.log -e $LOG/forever_err.log --pidFile $PID -a $SCRIPT
        ;;
    list)
        $FOREVER list
        ;;
    logs)
        $FOREVER logs
        ;;
        *)
            echo "Usage: /etc/init.d/myservice {start|stop|restart|reload|stopall|restartall|list}"
            exit 1
            ;;
    esac
    exit 0

基本上使用/path/to/forever start--workingDir'mydir'/path/to/gulp[gulpTask]是有效的。

我自己解决了这个问题,在init.d中使用了以下脚本:

WORKINGDIR=/usr/local/app/my/app
SCRIPT='/usr/local/app/my/app/node_modules/gulp/bin/gulp.js production'
LOG=/usr/local/app/my/app/log
PID=/root/.forever/pids/myapp.pid
FOREVER=/usr/local/node/node-default/bin/forever
UID_APP='myapp'
case "$1" in
    start)
        $FOREVER start --workingDir $WORKINGDIR --uid $UID_APP  -l $LOG/forever.log -o $LOG/forever_out.log -e $LOG/forever_err.log --pidFile $PID -a $SCRIPT
        ;;
    stop)
        $FOREVER stop $UID_APP --pidFile $PID
        ;;
    stopall)
        $FOREVER stopall --pidFile $PID
        ;;
    restartall)
        $FOREVER restartall --pidFile $PID
        ;;
    reload|restart)
        $FOREVER restart -l $LOG/forever.log -o $LOG/forever_out.log -e $LOG/forever_err.log --pidFile $PID -a $SCRIPT
        ;;
    list)
        $FOREVER list
        ;;
    logs)
        $FOREVER logs
        ;;
        *)
            echo "Usage: /etc/init.d/myservice {start|stop|restart|reload|stopall|restartall|list}"
            exit 1
            ;;
    esac
    exit 0

基本上使用/path/to/forever start--workingDir'mydir'/path/to/gulp[gulpTask]可以工作。

现在是一个更好的选择;)哦,谢谢,我不知道现在是更好的选择;)哦,谢谢,我不知道