Commit 2e073cde authored by Josh Spicer's avatar Josh Spicer Committed by GitHub

no-ci update action (concurrency)

parent 941f4d42
...@@ -255,7 +255,6 @@ function packageTemplates(basePath) { ...@@ -255,7 +255,6 @@ function packageTemplates(basePath) {
} }
}); });
} }
// Kick off execution
run(); run();
...@@ -358,30 +357,28 @@ function addCollectionsMetadataFile(featuresMetadata, templatesMetadata) { ...@@ -358,30 +357,28 @@ function addCollectionsMetadataFile(featuresMetadata, templatesMetadata) {
exports.addCollectionsMetadataFile = addCollectionsMetadataFile; exports.addCollectionsMetadataFile = addCollectionsMetadataFile;
function getFeaturesAndPackage(basePath) { function getFeaturesAndPackage(basePath) {
return __awaiter(this, void 0, void 0, function* () { return __awaiter(this, void 0, void 0, function* () {
const featureDirs = fs.readdirSync(basePath);
let metadatas = []; let metadatas = [];
fs.readdir(basePath, (err, files) => { yield Promise.all(featureDirs.map((f) => __awaiter(this, void 0, void 0, function* () {
if (err) { core.info(`feature ==> ${f}`);
core.error(err.message); if (f !== '.' && f !== '..') {
core.setFailed(`failed to get list of features: ${err.message}`); const featureFolder = path_1.default.join(basePath, f);
return; const archiveName = `${f}.tgz`;
} yield tarDirectory(`${basePath}/${f}`, archiveName);
files.forEach(file => {
core.info(`feature ==> ${file}`);
if (file !== '.' && file !== '..') {
const featureFolder = path_1.default.join(basePath, file);
const archiveName = `${file}.tgz`;
tarDirectory(`${basePath}/${file}`, archiveName);
const featureJsonPath = path_1.default.join(featureFolder, 'devcontainer-feature.json'); const featureJsonPath = path_1.default.join(featureFolder, 'devcontainer-feature.json');
if (!fs.existsSync(featureJsonPath)) { if (!fs.existsSync(featureJsonPath)) {
core.error(`Feature ${file} is missing a devcontainer-feature.json`); core.error(`Feature ${f} is missing a devcontainer-feature.json`);
core.setFailed('All features must have a devcontainer-feature.json'); core.setFailed('All features must have a devcontainer-feature.json');
return; return;
} }
const featureMetadata = JSON.parse(fs.readFileSync(featureJsonPath, 'utf8')); const featureMetadata = JSON.parse(fs.readFileSync(featureJsonPath, 'utf8'));
metadatas.push(featureMetadata); metadatas.push(featureMetadata);
} }
}); })));
}); if (metadatas.length === 0) {
core.setFailed('No features found');
return;
}
return metadatas; return metadatas;
}); });
} }
......
...@@ -104,5 +104,4 @@ function packageTemplates(basePath) { ...@@ -104,5 +104,4 @@ function packageTemplates(basePath) {
} }
}); });
} }
// Kick off execution
run(); run();
...@@ -91,30 +91,28 @@ function addCollectionsMetadataFile(featuresMetadata, templatesMetadata) { ...@@ -91,30 +91,28 @@ function addCollectionsMetadataFile(featuresMetadata, templatesMetadata) {
exports.addCollectionsMetadataFile = addCollectionsMetadataFile; exports.addCollectionsMetadataFile = addCollectionsMetadataFile;
function getFeaturesAndPackage(basePath) { function getFeaturesAndPackage(basePath) {
return __awaiter(this, void 0, void 0, function* () { return __awaiter(this, void 0, void 0, function* () {
const featureDirs = fs.readdirSync(basePath);
let metadatas = []; let metadatas = [];
fs.readdir(basePath, (err, files) => { yield Promise.all(featureDirs.map((f) => __awaiter(this, void 0, void 0, function* () {
if (err) { core.info(`feature ==> ${f}`);
core.error(err.message); if (f !== '.' && f !== '..') {
core.setFailed(`failed to get list of features: ${err.message}`); const featureFolder = path_1.default.join(basePath, f);
return; const archiveName = `${f}.tgz`;
} yield tarDirectory(`${basePath}/${f}`, archiveName);
files.forEach(file => {
core.info(`feature ==> ${file}`);
if (file !== '.' && file !== '..') {
const featureFolder = path_1.default.join(basePath, file);
const archiveName = `${file}.tgz`;
tarDirectory(`${basePath}/${file}`, archiveName);
const featureJsonPath = path_1.default.join(featureFolder, 'devcontainer-feature.json'); const featureJsonPath = path_1.default.join(featureFolder, 'devcontainer-feature.json');
if (!fs.existsSync(featureJsonPath)) { if (!fs.existsSync(featureJsonPath)) {
core.error(`Feature ${file} is missing a devcontainer-feature.json`); core.error(`Feature ${f} is missing a devcontainer-feature.json`);
core.setFailed('All features must have a devcontainer-feature.json'); core.setFailed('All features must have a devcontainer-feature.json');
return; return;
} }
const featureMetadata = JSON.parse(fs.readFileSync(featureJsonPath, 'utf8')); const featureMetadata = JSON.parse(fs.readFileSync(featureJsonPath, 'utf8'));
metadatas.push(featureMetadata); metadatas.push(featureMetadata);
} }
}); })));
}); if (metadatas.length === 0) {
core.setFailed('No features found');
return;
}
return metadatas; return metadatas;
}); });
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment