Update checkdeps.js to only look at prod / runtime dependencies, and fix a conflict in react-addons-css-transition-group version

This commit is contained in:
Josh McDonald 2016-07-12 09:53:46 +10:00
parent e271925b3c
commit 996dbec7ee
2 changed files with 14 additions and 7 deletions

View File

@ -33,7 +33,7 @@
"keymirror": "0.1.1",
"moment": "2.13.0",
"react": "15.1.0",
"react-addons-css-transition-group": "15.0.1",
"react-addons-css-transition-group": "15.1.0",
"react-dom": "15.1.0",
"react-redux": "4.4.5",
"react-router": "2.3.0",

View File

@ -3,14 +3,16 @@
/*********************************************************************************************
**********************************************************************************************
Checks for version inconsistencies in top-level project dependencies.
Checks for version inconsistencies in PROD dependencies for top-level
projects, and a few first-party "blessed" deps like JDL etc.
Usage:
node checkdeps.js
If conflicting versions are detected, this will print them out as JSON on STDERR and
exit(1). If no conflicts are detected, there is no output and normal exit
Any conflicting PROD dependencies will be printed on STDERR, and it will exit(1)
If no conflicts, or only PEER/DEV conflicts, normal exit(0)
**********************************************************************************************
*********************************************************************************************/
@ -40,11 +42,16 @@ var packageFiles = [];
packageFiles.push(require("./blueocean-dashboard/package.json"));
packageFiles.push(require("./blueocean-web/package.json"));
// Add some expected dependencies, so we go another level deep just for these
packageFiles.push(require("./blueocean-dashboard/node_modules/@jenkins-cd/design-language/package.json"));
packageFiles.push(require("./blueocean-dashboard/node_modules/@jenkins-cd/sse-gateway/package.json"));
packageFiles.push(require("./blueocean-dashboard/node_modules/@jenkins-cd/js-extensions/package.json"));
packageFiles.forEach(packageFile => {
addDependencies("prod", packageFile.dependencies);
addDependencies("dev", packageFile.devDependencies);
addDependencies("peer", packageFile.peerDependencies);
// addDependencies("dev", packageFile.devDependencies);
// addDependencies("peer", packageFile.peerDependencies);
function addDependencies(kind, deps) {
if (deps) {
@ -73,5 +80,5 @@ Object.keys(allDependencies).forEach(dependency => {
if (errs.length) {
console.error(JSON.stringify(errs, null, 4));
process.exit(1);
process.exitCode = 1;
}