节点,产生多个依赖的shell命令

时间:2018-05-16 14:15:56

标签: node.js django gulp

我尝试使用gulp为python激活virtualenv并启动django服务器。 虽然我可以正确启动服务器但我不能事先激活virtualenv。 (这打破了与我的IDE的gulp工具的集成)。 有没有办法让virtualenv spawn首先启动并成为启动服务器的子进程的一部分(因为服务器依赖于在虚拟环境中)。

gulpfile.js

gulp.task('runServer', function(cb) {
  var virtualenv = spawn('source venv/bin/activate')
  var cmd = spawn('python', ['manage.py', 'runserver'], {stdio: 'inherit'});
  cmd.on('close', function(code) {
    console.log('runServer exited with code ' + code);
    cb(code);
  });
});

1 个答案:

答案 0 :(得分:1)

也许你可以尝试这样的事情:

child_process.spawn('venv/bin/python', ['manage.py', 'runserver']);

这使用python env,但只需要执行一个命令