@wocker/ws
Version:
Docker workspace for web projects
31 lines (30 loc) • 931 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.exec = void 0;
const child_process_1 = require("child_process");
const exec = async (command, options) => {
const worker = (0, child_process_1.exec)(command, {
...options || {},
maxBuffer: Infinity
});
return new Promise((resolve, reject) => {
let data = "", errData = "";
worker.stdout.on("data", (chunk) => {
data += chunk.toString();
});
worker.stderr.on("data", (chunk) => {
errData += chunk.toString();
});
worker.on("exit", (code) => {
if (code !== 0) {
reject(new Error(`Process exited with code ${code}`));
return;
}
resolve(data.replace(/\n$/, ""));
});
worker.on("error", (err) => {
reject(err);
});
});
};
exports.exec = exec;