chore: validate path to type definitions on CI

This commit is contained in:
Satyajit Sahoo
2020-01-05 13:11:08 +01:00
parent 418a858f23
commit c46e0a9c14
2 changed files with 32 additions and 0 deletions

View File

@@ -49,6 +49,7 @@ jobs:
at: ~/project
- run: |
yarn lerna run prepare
node scripts/check-types-path.js
workflows:
version: 2

View File

@@ -0,0 +1,31 @@
#!/usr/bin/env node
/* eslint-disable import/no-commonjs */
const fs = require('fs');
const path = require('path');
const packages = path.join(__dirname, '..', 'packages');
const invalid = [];
fs.readdirSync(packages).forEach(name => {
const dir = path.join(packages, name);
if (fs.statSync(path.join(packages, name)).isDirectory()) {
const pak = JSON.parse(
fs.readFileSync(path.join(dir, 'package.json'), 'utf8')
);
if (pak.types && !fs.existsSync(path.join(dir, pak.types))) {
invalid.push(pak);
}
}
});
if (invalid.length) {
console.log(
'Found invalid path to type definitions in the following packages:\n',
invalid.map(p => `- ${p.name} (${p.types})`).join('\n')
);
}