UNPKG

appcenter-cli

Version:

Command line tool for Visual Studio App Center

54 lines (53 loc) 1.76 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.execWithArgsAndWait = exports.execAndWait = void 0; const child_process = require("child_process"); const interaction_1 = require("../interaction"); function execAndWait(command, onStdOut, onStdErr) { return new Promise((resolve, reject) => { if (!onStdOut) { onStdOut = (text) => interaction_1.out.text(text); } if (!onStdErr) { onStdErr = (text) => interaction_1.out.text(text); } const process = child_process.exec(command); process.on("exit", (exitCode) => { resolve(exitCode); }); process.on("error", (message) => { reject(new Error(message)); }); process.stdout.on("data", (data) => { onStdOut(data); }); process.stderr.on("data", (data) => { onStdErr(data); }); }); } exports.execAndWait = execAndWait; function execWithArgsAndWait(file, args, onStdOut, onStdErr) { return new Promise((resolve, reject) => { if (!onStdOut) { onStdOut = (text) => interaction_1.out.text(text); } if (!onStdErr) { onStdErr = (text) => interaction_1.out.text(text); } const process = child_process.execFile(file, args); process.on("exit", (exitCode) => { resolve(exitCode); }); process.on("error", (message) => { reject(new Error(message)); }); process.stdout.on("data", (data) => { onStdOut(data); }); process.stderr.on("data", (data) => { onStdErr(data); }); }); } exports.execWithArgsAndWait = execWithArgsAndWait;