ci: Fix CI version check (#9039)
This commit is contained in:
@@ -17,14 +17,8 @@ jobs:
|
|||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@v2
|
uses: actions/setup-node@v2
|
||||||
with:
|
with:
|
||||||
node-version: 14
|
node-version: 20
|
||||||
- name: Cache Node.js modules
|
cache: 'npm'
|
||||||
uses: actions/cache@v4
|
|
||||||
with:
|
|
||||||
path: ~/.npm
|
|
||||||
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
|
|
||||||
restore-keys: |
|
|
||||||
${{ runner.os }}-node-
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: npm ci
|
run: npm ci
|
||||||
- name: CI Environments Check
|
- name: CI Environments Check
|
||||||
|
|||||||
@@ -1,8 +1,7 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
const CiVersionCheck = require('./CiVersionCheck');
|
const CiVersionCheck = require('./CiVersionCheck');
|
||||||
const mongoVersionList = require('mongodb-version-list');
|
const { exec } = require('child_process');
|
||||||
const allNodeVersions = require('all-node-versions');
|
|
||||||
|
|
||||||
async function check() {
|
async function check() {
|
||||||
// Run checks
|
// Run checks
|
||||||
@@ -14,12 +13,13 @@ async function check() {
|
|||||||
* Check the MongoDB versions used in test environments.
|
* Check the MongoDB versions used in test environments.
|
||||||
*/
|
*/
|
||||||
async function checkMongoDbVersions() {
|
async function checkMongoDbVersions() {
|
||||||
const releasedVersions = await new Promise((resolve, reject) => {
|
const latestStableVersion = await new Promise((resolve, reject) => {
|
||||||
mongoVersionList(function (error, versions) {
|
exec('m --latest', (error, stdout) => {
|
||||||
if (error) {
|
if (error) {
|
||||||
reject(error);
|
reject(error);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
resolve(versions);
|
resolve(stdout.trim());
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -29,14 +29,9 @@ async function checkMongoDbVersions() {
|
|||||||
yamlFilePath: './.github/workflows/ci.yml',
|
yamlFilePath: './.github/workflows/ci.yml',
|
||||||
ciEnvironmentsKeyPath: 'jobs.check-mongo.strategy.matrix.include',
|
ciEnvironmentsKeyPath: 'jobs.check-mongo.strategy.matrix.include',
|
||||||
ciVersionKey: 'MONGODB_VERSION',
|
ciVersionKey: 'MONGODB_VERSION',
|
||||||
releasedVersions,
|
releasedVersions: [latestStableVersion],
|
||||||
latestComponent: CiVersionCheck.versionComponents.minor,
|
latestComponent: CiVersionCheck.versionComponents.major,
|
||||||
ignoreReleasedVersions: [
|
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();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -44,8 +39,9 @@ async function checkMongoDbVersions() {
|
|||||||
* Check the Nodejs versions used in test environments.
|
* Check the Nodejs versions used in test environments.
|
||||||
*/
|
*/
|
||||||
async function checkNodeVersions() {
|
async function checkNodeVersions() {
|
||||||
const allVersions = await allNodeVersions();
|
const allVersions = (await import('all-node-versions')).default;
|
||||||
const releasedVersions = allVersions.versions;
|
const { versions } = await allVersions();
|
||||||
|
const nodeVersions = versions.map(version => version.node);
|
||||||
|
|
||||||
await new CiVersionCheck({
|
await new CiVersionCheck({
|
||||||
packageName: 'Node.js',
|
packageName: 'Node.js',
|
||||||
@@ -53,13 +49,12 @@ async function checkNodeVersions() {
|
|||||||
yamlFilePath: './.github/workflows/ci.yml',
|
yamlFilePath: './.github/workflows/ci.yml',
|
||||||
ciEnvironmentsKeyPath: 'jobs.check-mongo.strategy.matrix.include',
|
ciEnvironmentsKeyPath: 'jobs.check-mongo.strategy.matrix.include',
|
||||||
ciVersionKey: 'NODE_VERSION',
|
ciVersionKey: 'NODE_VERSION',
|
||||||
releasedVersions,
|
releasedVersions: nodeVersions,
|
||||||
latestComponent: CiVersionCheck.versionComponents.minor,
|
latestComponent: CiVersionCheck.versionComponents.minor,
|
||||||
ignoreReleasedVersions: [
|
ignoreReleasedVersions: [
|
||||||
'<12.0.0', // These versions have reached their end-of-life support date
|
'<18.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
|
'>=19.0.0 <20.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
|
'>=21.0.0', // These versions are not officially supported yet
|
||||||
'>=19.0.0', // These versions are not officially supported yet
|
|
||||||
],
|
],
|
||||||
}).check();
|
}).check();
|
||||||
}
|
}
|
||||||
|
|||||||
1038
package-lock.json
generated
1038
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -79,7 +79,7 @@
|
|||||||
"@semantic-release/github": "7.2.3",
|
"@semantic-release/github": "7.2.3",
|
||||||
"@semantic-release/npm": "7.1.3",
|
"@semantic-release/npm": "7.1.3",
|
||||||
"@semantic-release/release-notes-generator": "9.0.3",
|
"@semantic-release/release-notes-generator": "9.0.3",
|
||||||
"all-node-versions": "11.3.0",
|
"all-node-versions": "12.1.0",
|
||||||
"apollo-upload-client": "17.0.0",
|
"apollo-upload-client": "17.0.0",
|
||||||
"clean-jsdoc-theme": "4.2.7",
|
"clean-jsdoc-theme": "4.2.7",
|
||||||
"cross-env": "7.0.2",
|
"cross-env": "7.0.2",
|
||||||
@@ -95,11 +95,11 @@
|
|||||||
"jsdoc": "4.0.2",
|
"jsdoc": "4.0.2",
|
||||||
"jsdoc-babel": "0.5.0",
|
"jsdoc-babel": "0.5.0",
|
||||||
"lint-staged": "10.2.3",
|
"lint-staged": "10.2.3",
|
||||||
|
"m": "1.9.0",
|
||||||
"madge": "6.1.0",
|
"madge": "6.1.0",
|
||||||
"mock-files-adapter": "file:spec/dependencies/mock-files-adapter",
|
"mock-files-adapter": "file:spec/dependencies/mock-files-adapter",
|
||||||
"mock-mail-adapter": "file:spec/dependencies/mock-mail-adapter",
|
"mock-mail-adapter": "file:spec/dependencies/mock-mail-adapter",
|
||||||
"mongodb-runner": "5.5.4",
|
"mongodb-runner": "5.5.4",
|
||||||
"mongodb-version-list": "1.0.0",
|
|
||||||
"node-abort-controller": "3.0.1",
|
"node-abort-controller": "3.0.1",
|
||||||
"node-fetch": "3.2.10",
|
"node-fetch": "3.2.10",
|
||||||
"nyc": "15.1.0",
|
"nyc": "15.1.0",
|
||||||
|
|||||||
Reference in New Issue
Block a user