forked from kubevirt/web-ui-components
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrunValidations.js
35 lines (30 loc) · 913 Bytes
/
runValidations.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
const chalk = require('chalk');
const requireAll = require('require-all');
const { checkMark, isJs, isTest } = require('./common');
function loadValidations() {
return requireAll({
dirname: `${__dirname}/validations`,
recursive: false,
filter: filename => {
if (isJs(filename) && !isTest(filename)) {
return filename.replace(/\.js$/, '');
}
return false;
},
});
}
function runValidations() {
const validations = loadValidations();
let success = true;
for (const validationName of Object.keys(validations)) {
console.log(chalk`Validate {yellow.bold ${validationName}}`);
const result = validations[validationName]();
result && console.log(chalk`{green ${checkMark}}`);
success = success && result;
}
return success;
}
if (!runValidations()) {
console.log('One or more validations failed.');
process.exit(1); // eslint-disable-line
}