lint-filter
Version:
Lint touched code stricter
46 lines (37 loc) • 1.14 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = spawn;
var _child_process = require('child_process');
var _child_process2 = _interopRequireDefault(_child_process);
var _bluebird = require('bluebird');
var _bluebird2 = _interopRequireDefault(_bluebird);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function spawn(file, args) {
return new _bluebird2.default(function (resolve, reject) {
var stdout = '';
var stderr = '';
var process = _child_process2.default.spawn(file, args);
process.stdout.on('data', function (data) {
stdout += data;
});
process.stderr.on('data', function (data) {
stderr += data;
});
process.on('close', function (code) {
if (code === 0) {
resolve(stdout);
} else {
var error = new Error(file + ' ' + args.join(' ') + ' failed');
// $SuppressFlow
error.stdout = stdout;
// $SuppressFlow
error.stderr = stderr;
// $SuppressFlow
error.code = code;
reject(error);
}
});
});
}