'use strict'; var pkg = require('../package.json'); var spawn = require('child_process').spawn; var os = require('os'); var path = require('path'); function spawner(args) { return new Promise(function (resolve, reject) { var bin = args.shift(); var runner = spawn(bin, args, { windowsHide: true }); runner.stdout.on('data', function (chunk) { console.info(chunk.toString('utf8')); }); runner.stderr.on('data', function (chunk) { console.error(chunk.toString('utf8')); }); runner.on('exit', function (code) { if (0 !== code) { reject(new Error("exited with non-zero status code '" + code + "'")); return; } resolve({ code: code }); }); }); } module.exports = spawner;