68 lines
2.2 KiB
JavaScript
68 lines
2.2 KiB
JavaScript
'use strict';
|
|
|
|
const CiVersionCheck = require('./CiVersionCheck');
|
|
const mongoVersionList = require('mongodb-version-list');
|
|
const allNodeVersions = require('all-node-versions');
|
|
|
|
async function check() {
|
|
// Run checks
|
|
await checkMongoDbVersions();
|
|
await checkNodeVersions();
|
|
}
|
|
|
|
/**
|
|
* Check the MongoDB versions used in test environments.
|
|
*/
|
|
async function checkMongoDbVersions() {
|
|
const releasedVersions = await new Promise((resolve, reject) => {
|
|
mongoVersionList(function (error, versions) {
|
|
if (error) {
|
|
reject(error);
|
|
}
|
|
resolve(versions);
|
|
});
|
|
});
|
|
|
|
await new CiVersionCheck({
|
|
packageName: 'MongoDB',
|
|
packageSupportUrl: 'https://www.mongodb.com/support-policy',
|
|
yamlFilePath: './.github/workflows/ci.yml',
|
|
ciEnvironmentsKeyPath: 'jobs.check-mongo.strategy.matrix.include',
|
|
ciVersionKey: 'MONGODB_VERSION',
|
|
releasedVersions,
|
|
latestComponent: CiVersionCheck.versionComponents.minor,
|
|
ignoreReleasedVersions: [
|
|
'<4.0.0', // Versions reached their MongoDB end-of-life support date
|
|
'~4.1.0', // Development release according to MongoDB support
|
|
'~4.3.0', // Development release according to MongoDB support
|
|
'~4.7.0', // Development release according to MongoDB support
|
|
],
|
|
}).check();
|
|
}
|
|
|
|
/**
|
|
* Check the Nodejs versions used in test environments.
|
|
*/
|
|
async function checkNodeVersions() {
|
|
const allVersions = await allNodeVersions();
|
|
const releasedVersions = allVersions.versions;
|
|
|
|
await new CiVersionCheck({
|
|
packageName: 'Node.js',
|
|
packageSupportUrl: 'https://github.com/nodejs/node/blob/master/CHANGELOG.md',
|
|
yamlFilePath: './.github/workflows/ci.yml',
|
|
ciEnvironmentsKeyPath: 'jobs.check-mongo.strategy.matrix.include',
|
|
ciVersionKey: 'NODE_VERSION',
|
|
releasedVersions,
|
|
latestComponent: CiVersionCheck.versionComponents.minor,
|
|
ignoreReleasedVersions: [
|
|
'<12.0.0', // These versions have reached their end-of-life support date
|
|
'>=13.0.0 <14.0.0', // These versions have reached their end-of-life support date
|
|
'>=15.0.0 <16.0.0', // These versions have reached their end-of-life support date
|
|
'>=19.0.0', // These versions are not officially supported yet
|
|
],
|
|
}).check();
|
|
}
|
|
|
|
check();
|