UNPKG

@azure-tools/extension

Version:

Yarn-Based extension aquisition (for Azure Open Source Projects)

37 lines 1.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.execute = void 0; const child_process_1 = require("child_process"); const execute = (command, cmdlineargs, options = {}) => { return new Promise((resolve, reject) => { const cp = (0, child_process_1.spawn)(command, cmdlineargs, { ...options, stdio: "pipe" }); if (options.onCreate) { options.onCreate(cp); } options.onStdOutData ? cp.stdout.on("data", options.onStdOutData) : cp; options.onStdErrData ? cp.stderr.on("data", options.onStdErrData) : cp; let err = ""; let out = ""; let all = ""; cp.stderr.on("data", (chunk) => { err += chunk; all += chunk; }); cp.stdout.on("data", (chunk) => { out += chunk; all += chunk; }); cp.on("error", (err) => { reject(err); }); cp.on("close", (code, signal) => resolve({ stdout: out, stderr: err, log: all, error: code ? new Error("Process Failed.") : null, code, })); }); }; exports.execute = execute; //# sourceMappingURL=exec-cmd.js.map