diff --git a/scripts/utils.js b/scripts/utils.js index 7eec80653..2050b05b7 100644 --- a/scripts/utils.js +++ b/scripts/utils.js @@ -60,13 +60,14 @@ export function fuzzyMatchTarget(partialTargets, includeAllMatching) { */ export async function exec(command, args, options) { return new Promise((resolve, reject) => { - const process = spawn(command, args, { + const _process = spawn(command, args, { stdio: [ 'ignore', // stdin 'pipe', // stdout 'pipe', // stderr ], ...options, + shell: process.platform === 'win32', }) /** @@ -78,19 +79,19 @@ export async function exec(command, args, options) { */ const stdoutChunks = [] - process.stderr?.on('data', chunk => { + _process.stderr?.on('data', chunk => { stderrChunks.push(chunk) }) - process.stdout?.on('data', chunk => { + _process.stdout?.on('data', chunk => { stdoutChunks.push(chunk) }) - process.on('error', error => { + _process.on('error', error => { reject(error) }) - process.on('exit', code => { + _process.on('exit', code => { const ok = code === 0 const stderr = Buffer.concat(stderrChunks).toString().trim() const stdout = Buffer.concat(stdoutChunks).toString().trim()