Files
vscode-extension-samples/.scripts/run-script.js
Matt Bierner 972af20979 Adding top level compile and lint scripts
Add scripts to compile or lint all extension samples
2019-05-10 15:12:56 -07:00

27 lines
870 B
JavaScript

/**
* Try running an npm script for each of the samples.
*/
const fs = require('fs');
const path = require('path');
const child_process = require('child_process');
const { samples, lspSamples } = require('./samples')
async function tryLint(
/** @type {string} */ scriptName,
/** @type {import('./samples').Sample} */ sample
) {
const packageJsonPath = path.join(sample.path, 'package.json');
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath).toString());
if (Object.keys(packageJson['scripts'] || {}).includes(scriptName)) {
console.log(`=== Running ${scriptName} on ${path.basename(sample.path)} ===`)
child_process.execSync(`npm run ${scriptName}`, {
cwd: sample.path,
stdio: 'inherit'
});
}
}
const scriptName = process.argv[2];
for (const sample of [...samples, ...lspSamples]) {
tryLint(scriptName, sample);
}