2015-09-27 5 views
6

Привет, Я следовал учебному пособию по созданию приложения nodejs. В этом учебнике используется gulp, для запуска моего приложения я просто делаю gulp dev, чтобы начать все. В моей gulpfile у меня есть:Запустить приложение с pm2, если он начинается с формы gulp

var fs = require('fs') 
var gulp = require('gulp') 

fs.readdirSync(__dirname+'/gulp').forEach(function(task){ 
    require('./gulp/' + task) 
}) 

gulp.task('dev', ['watch:css', 'watch:js', 'dev:server']) 

Код в ./gulp/server.js

var gulp = require('gulp') 
var nodemon = require('gulp-nodemon') 

gulp.task('dev:server', function(){ 
    nodemon({ 
     script: 'server.js', 
     ext:'js', 
     ignore: ['ng*', 'gulp*', 'assets*'], 
     env: { 'NODE_ENV': require('../config').ENV } 
    }) 
}) 

Можно ли каким-то образом использовать PM2 с этой установкой глотком, я видел несколько вопросов в StackOverflow и Google , но не могу ничего сделать. Если кто-то может мне помочь, это будет здорово. Заранее спасибо.

+0

Это должно быть возможно, но мы хотели бы знать код в './gulp/ (сервер) .js' –

+0

Hi код -jaff, thx Я обновил свой вопрос – Alex

ответ

8

Он доступен в http://pm2.keymetrics.io/docs/usage/pm2-api/

var gulp = require('gulp'); 
var pm2 = require('pm2'); 

gulp.task('dev:server', function() { 
    pm2.connect(true, function() { 
     pm2.start({ 
      name: 'server', 
      script: 'server.js', 
      env: { 
       "NODE_ENV": require('../config').ENV 
      } 
     }, function() { 
      console.log('pm2 started'); 
      pm2.streamLogs('all', 0); 
     }); 
    }); 
}); 

реализации от https://github.com/Unitech/PM2/issues/1525#issuecomment-134236549

Смежные вопросы