Сервис окон Hubot

Я хотел бы обернуть свой Hubot в службу Windows, чтобы развернуть его.

Для этого я использую node-windows, но у меня возникли проблемы с запустите файл coffee-script (который использует hubot).

Если я запущу вручную

> coffee .\node_modules\hubot\bin\hubot

все работает нормально.

Но я не могу понять, как это вызвать из скрипта node-windows. Моя попытка ниже:

var Service = require('node-windows').Service;

var svc = new Service({
  name:'Hubot',
  description: 'Hubot',
  script: 'coffee .\\hubot\\node_modules\\hubot\\bin\\hubot'
});

svc.on('install',function(){
  svc.start();
});

svc.install();

который терпит неудачу со следующим:

C:\Users\luke.mcgregor\hubot>node app.js fs.js:747 return binding.mkdir(pathModule._makeLong(путь), ^ Ошибка: ENOENT, нет такого файла или каталога 'C:\Users\luke. mcgregor\hubot\coffee .\hubot\node_modules\hubot\bin\daemon' при ошибке (собственной) в Object.fs.mkdirSync (fs.js:747:18) в C:\Users\luke.mcgregor\AppData\Roaming \npm\node_modules\node-windows\lib\daemon.js:409:16 в FSReqWrap.cb [как завершенный] (fs.js:226:19)


person Not loved    schedule 06.11.2015    source источник
comment
Пробовали ли вы использовать навсегда для его запуска (github.com/foreverjs/forever) Существует ли жесткая зависимость запустить его как службу, чтобы вы могли запускать ее как конкретный пользователь?   -  person john.da.costa    schedule 19.11.2015


Ответы (1)


script - это не команда, а только путь к файлу. Вы можете изменить исполняемый файл, используемый node-windows для запуска ваших сценариев, установив переменную среды execPath: https://github.com/coreybutler/node-windows/issues/61#issuecomment-51423542

person Shanoor    schedule 10.11.2015