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) { return reject('error: command \'' + cmd + '\' with args \'' + args + '\' encountered an error >>> ' + err); }); }); } module.exports = { execute }