Convert scripts/Gulpfile to checked mjs/cjs so they can run without compilation (#50988)

This commit is contained in:
Jake Bailey
2022-10-07 09:50:46 -07:00
committed by GitHub
parent dbeae5d943
commit ad56b5ca56
72 changed files with 1080 additions and 939 deletions

21
scripts/run-sequence.mjs Normal file
View File

@@ -0,0 +1,21 @@
import assert from "assert";
import cp from "child_process";
/**
* @param {[string, string[]][]} tasks
* @param {cp.SpawnSyncOptions} opts
* @returns {string}
*/
export function runSequence(tasks, opts = { timeout: 100000, shell: true }) {
let lastResult;
for (const task of tasks) {
console.log(`${task[0]} ${task[1].join(" ")}`);
const result = cp.spawnSync(task[0], task[1], opts);
if (result.status !== 0) throw new Error(`${task[0]} ${task[1].join(" ")} failed: ${result.stderr && "stderr: " + result.stderr.toString()}${result.stdout && "\nstdout: " + result.stdout.toString()}`);
console.log(result.stdout && result.stdout.toString());
lastResult = result;
}
const out = lastResult?.stdout?.toString();
assert(out !== undefined);
return out;
}