Allow passing in an exclude list to scanBuiltinExtensions

This commit is contained in:
Alex Dima
2020-08-03 23:22:11 +02:00
parent 474832e562
commit edf34c7cbc
3 changed files with 10 additions and 10 deletions

View File

@@ -264,20 +264,20 @@ function packageMarketplaceExtensionsStream(forWeb) {
.pipe(util2.setExecutableBit(['**/*.sh'])));
}
exports.packageMarketplaceExtensionsStream = packageMarketplaceExtensionsStream;
function scanBuiltinExtensions(extensionsRoot, forWeb) {
function scanBuiltinExtensions(extensionsRoot, exclude = []) {
const scannedExtensions = [];
try {
const extensionsFolders = fs.readdirSync(extensionsRoot);
for (const extensionFolder of extensionsFolders) {
if (extensionFolder === 'vscode-web-playground') {
// never inline vscode-web-playground (even if it was packaged)
if (exclude.indexOf(extensionFolder) >= 0) {
continue;
}
const packageJSONPath = path.join(extensionsRoot, extensionFolder, 'package.json');
if (!fs.existsSync(packageJSONPath)) {
continue;
}
let packageJSON = JSON.parse(fs.readFileSync(packageJSONPath).toString('utf8'));
if (forWeb && !isWebExtension(packageJSON)) {
if (!isWebExtension(packageJSON)) {
continue;
}
const children = fs.readdirSync(path.join(extensionsRoot, extensionFolder));