2022-02-11 01:20:53 +01:00
|
|
|
const logger = require('./logger.js');
|
|
|
|
const { spawn } = require('child_process');
|
|
|
|
|
|
|
|
function execute(cmd, args) {
|
|
|
|
return new Promise(function (resolve, reject) {
|
|
|
|
var spawned = spawn(cmd, args);
|
|
|
|
spawned.stdout.on('data', function (data) {
|
|
|
|
logger.debug(data);
|
|
|
|
});
|
|
|
|
spawned.stderr.on('data', function (data) {
|
|
|
|
logger.error(data);
|
|
|
|
});
|
|
|
|
spawned.on('close', function (code) {
|
|
|
|
logger.debug('command \'' + cmd + '\' with args \'' + args + '\' finished with exit code ' + code);
|
|
|
|
resolve();
|
|
|
|
});
|
|
|
|
spawned.on('error', function (err) {
|
2022-02-11 02:29:51 +01:00
|
|
|
return reject('error: command \'' + cmd + '\' with args \'' + args + '\' encountered an error >>> ' + err);
|
2022-02-11 01:20:53 +01:00
|
|
|
});
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
module.exports = {
|
|
|
|
execute
|
|
|
|
}
|