kibana/tasks/verify_dependency_versions.js
Søren Louv-Jansen acc3af0c59
Align x-pack and kibana devDeps (#19022)
* Align Node deps

* Added grunt task

* Update name
2018-05-14 19:33:04 +02:00

44 lines
1.1 KiB
JavaScript

import { size } from 'lodash';
import kibana from '../package.json';
import xpack from '../x-pack/package.json';
function getMismatches(depType) {
return Object.keys(kibana[depType])
.map(key => {
const xpackValue = xpack[depType][key];
const kibanaValue = kibana[depType][key];
if (
xpackValue &&
kibanaValue &&
xpackValue !== kibanaValue &&
!key.includes('@kbn/')
) {
return {
key,
xpack: xpackValue,
kibana: kibanaValue,
};
}
})
.filter(key => !!key);
}
export default function verifyDependencyVersions(grunt) {
grunt.registerTask(
'verifyDependencyVersions',
'Checks dependency versions',
() => {
const devDependenciesMismatches = getMismatches('devDependencies');
if (size(devDependenciesMismatches) > 0) {
grunt.log.error(
'The following devDependencies do not match:',
JSON.stringify(devDependenciesMismatches, null, 4)
);
return false;
} else {
grunt.log.writeln('devDependencies match!');
}
}
);
}