ci: Upgrade Node and MongoDB versions; fix CI check script for MongoDB versions (#9062)
This commit is contained in:
44
.github/workflows/ci.yml
vendored
44
.github/workflows/ci.yml
vendored
@@ -8,7 +8,7 @@ on:
|
|||||||
paths-ignore:
|
paths-ignore:
|
||||||
- '**/**.md'
|
- '**/**.md'
|
||||||
env:
|
env:
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
PARSE_SERVER_TEST_TIMEOUT: 20000
|
PARSE_SERVER_TEST_TIMEOUT: 20000
|
||||||
jobs:
|
jobs:
|
||||||
check-code-analysis:
|
check-code-analysis:
|
||||||
@@ -146,34 +146,34 @@ jobs:
|
|||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
- name: MongoDB 4.2, ReplicaSet
|
- name: MongoDB 4.2, ReplicaSet
|
||||||
MONGODB_VERSION: 4.2.19
|
MONGODB_VERSION: 4.2.25
|
||||||
MONGODB_TOPOLOGY: replset
|
MONGODB_TOPOLOGY: replset
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
- name: MongoDB 4.4, ReplicaSet
|
- name: MongoDB 4.4, ReplicaSet
|
||||||
MONGODB_VERSION: 4.4.13
|
MONGODB_VERSION: 4.4.29
|
||||||
MONGODB_TOPOLOGY: replset
|
MONGODB_TOPOLOGY: replset
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
- name: MongoDB 5, ReplicaSet
|
- name: MongoDB 5, ReplicaSet
|
||||||
MONGODB_VERSION: 5.3.2
|
MONGODB_VERSION: 5.0.26
|
||||||
MONGODB_TOPOLOGY: replset
|
MONGODB_TOPOLOGY: replset
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
- name: MongoDB 6, ReplicaSet
|
- name: MongoDB 6, ReplicaSet
|
||||||
MONGODB_VERSION: 6.0.2
|
MONGODB_VERSION: 6.0.14
|
||||||
MONGODB_TOPOLOGY: replset
|
MONGODB_TOPOLOGY: replset
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
- name: MongoDB 7, ReplicaSet
|
- name: MongoDB 7, ReplicaSet
|
||||||
MONGODB_VERSION: 7.0.1
|
MONGODB_VERSION: 7.0.7
|
||||||
MONGODB_TOPOLOGY: replset
|
MONGODB_TOPOLOGY: replset
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
- name: Redis Cache
|
- name: Redis Cache
|
||||||
PARSE_SERVER_TEST_CACHE: redis
|
PARSE_SERVER_TEST_CACHE: redis
|
||||||
MONGODB_VERSION: 4.4.13
|
MONGODB_VERSION: 7.0.7
|
||||||
MONGODB_TOPOLOGY: standalone
|
MONGODB_TOPOLOGY: standalone
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
- name: Node 18
|
- name: Node 18
|
||||||
MONGODB_VERSION: 4.4.13
|
MONGODB_VERSION: 7.0.7
|
||||||
MONGODB_TOPOLOGY: standalone
|
MONGODB_TOPOLOGY: standalone
|
||||||
NODE_VERSION: 18.19.1
|
NODE_VERSION: 18.20.0
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
name: ${{ matrix.name }}
|
name: ${{ matrix.name }}
|
||||||
timeout-minutes: 15
|
timeout-minutes: 15
|
||||||
@@ -217,25 +217,25 @@ jobs:
|
|||||||
include:
|
include:
|
||||||
- name: PostgreSQL 13, PostGIS 3.1
|
- name: PostgreSQL 13, PostGIS 3.1
|
||||||
POSTGRES_IMAGE: postgis/postgis:13-3.1
|
POSTGRES_IMAGE: postgis/postgis:13-3.1
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
- name: PostgreSQL 13, PostGIS 3.2
|
- name: PostgreSQL 13, PostGIS 3.2
|
||||||
POSTGRES_IMAGE: postgis/postgis:13-3.2
|
POSTGRES_IMAGE: postgis/postgis:13-3.2
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
- name: PostgreSQL 13, PostGIS 3.3
|
- name: PostgreSQL 13, PostGIS 3.3
|
||||||
POSTGRES_IMAGE: postgis/postgis:13-3.3
|
POSTGRES_IMAGE: postgis/postgis:13-3.3
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
- name: PostgreSQL 13, PostGIS 3.4
|
- name: PostgreSQL 13, PostGIS 3.4
|
||||||
POSTGRES_IMAGE: postgis/postgis:13-3.4
|
POSTGRES_IMAGE: postgis/postgis:13-3.4
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
- name: PostgreSQL 14, PostGIS 3.4
|
- name: PostgreSQL 14, PostGIS 3.4
|
||||||
POSTGRES_IMAGE: postgis/postgis:14-3.4
|
POSTGRES_IMAGE: postgis/postgis:14-3.4
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
- name: PostgreSQL 15, PostGIS 3.4
|
- name: PostgreSQL 15, PostGIS 3.4
|
||||||
POSTGRES_IMAGE: postgis/postgis:15-3.4
|
POSTGRES_IMAGE: postgis/postgis:15-3.4
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
- name: PostgreSQL 16, PostGIS 3.4
|
- name: PostgreSQL 16, PostGIS 3.4
|
||||||
POSTGRES_IMAGE: postgis/postgis:15-3.4
|
POSTGRES_IMAGE: postgis/postgis:15-3.4
|
||||||
NODE_VERSION: 20.11.1
|
NODE_VERSION: 20.12.0
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
name: ${{ matrix.name }}
|
name: ${{ matrix.name }}
|
||||||
timeout-minutes: 15
|
timeout-minutes: 15
|
||||||
|
|||||||
4
.github/workflows/release-automated.yml
vendored
4
.github/workflows/release-automated.yml
vendored
@@ -17,7 +17,7 @@ jobs:
|
|||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: actions/setup-node@v4
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version: 18.19.1
|
node-version: 18.20.0
|
||||||
registry-url: https://registry.npmjs.org/
|
registry-url: https://registry.npmjs.org/
|
||||||
- name: Cache Node.js modules
|
- name: Cache Node.js modules
|
||||||
uses: actions/cache@v4
|
uses: actions/cache@v4
|
||||||
@@ -93,7 +93,7 @@ jobs:
|
|||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: actions/setup-node@v4
|
uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version: 18.19.1
|
node-version: 18.20.0
|
||||||
- name: Cache Node.js modules
|
- name: Cache Node.js modules
|
||||||
uses: actions/cache@v4
|
uses: actions/cache@v4
|
||||||
with:
|
with:
|
||||||
|
|||||||
17
README.md
17
README.md
@@ -10,7 +10,7 @@
|
|||||||
[](https://github.com/parse-community/parse-dashboard/releases)
|
[](https://github.com/parse-community/parse-dashboard/releases)
|
||||||
|
|
||||||
[](https://nodejs.org)
|
[](https://nodejs.org)
|
||||||
[](https://www.mongodb.com)
|
[](https://www.mongodb.com)
|
||||||
[](https://www.postgresql.org)
|
[](https://www.postgresql.org)
|
||||||
|
|
||||||
[](https://www.npmjs.com/package/parse-server)
|
[](https://www.npmjs.com/package/parse-server)
|
||||||
@@ -129,8 +129,8 @@ Parse Server is continuously tested with the most recent releases of Node.js to
|
|||||||
|
|
||||||
| Version | Latest Version | End-of-Life | Compatible |
|
| Version | Latest Version | End-of-Life | Compatible |
|
||||||
|------------|----------------|-------------|------------|
|
|------------|----------------|-------------|------------|
|
||||||
| Node.js 18 | 18.19.1 | April 2025 | ✅ Yes |
|
| Node.js 18 | 18.20.0 | April 2025 | ✅ Yes |
|
||||||
| Node.js 20 | 20.11.1 | April 2026 | ✅ Yes |
|
| Node.js 20 | 20.12.0 | April 2026 | ✅ Yes |
|
||||||
|
|
||||||
#### MongoDB
|
#### MongoDB
|
||||||
|
|
||||||
@@ -138,12 +138,11 @@ Parse Server is continuously tested with the most recent releases of MongoDB to
|
|||||||
|
|
||||||
| Version | Latest Version | End-of-Life | Compatible |
|
| Version | Latest Version | End-of-Life | Compatible |
|
||||||
| ----------- | -------------- | ------------- | ---------- |
|
| ----------- | -------------- | ------------- | ---------- |
|
||||||
| MongoDB 4.0 | 4.0.28 | April 2022 | ✅ Yes |
|
| MongoDB 4.2 | 4.2.25 | April 2023 | ✅ Yes |
|
||||||
| MongoDB 4.2 | 4.2.19 | April 2023 | ✅ Yes |
|
| MongoDB 4.4 | 4.4.29 | February 2024 | ✅ Yes |
|
||||||
| MongoDB 4.4 | 4.4.13 | February 2024 | ✅ Yes |
|
| MongoDB 5 | 5.0.26 | October 2024 | ✅ Yes |
|
||||||
| MongoDB 5 | 5.3.2 | October 2024 | ✅ Yes |
|
| MongoDB 6 | 6.0.14 | July 2025 | ✅ Yes |
|
||||||
| MongoDB 6 | 6.0.2 | July 2025 | ✅ Yes |
|
| MongoDB 7 | 7.0.7 | TDB | ✅ Yes |
|
||||||
| MongoDB 7 | 7.0.1 | TDB | ✅ Yes |
|
|
||||||
|
|
||||||
#### PostgreSQL
|
#### PostgreSQL
|
||||||
|
|
||||||
|
|||||||
@@ -13,8 +13,8 @@ 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 latestStableVersion = await new Promise((resolve, reject) => {
|
let latestStableVersions = await new Promise((resolve, reject) => {
|
||||||
exec('m --latest', (error, stdout) => {
|
exec('m ls', (error, stdout) => {
|
||||||
if (error) {
|
if (error) {
|
||||||
reject(error);
|
reject(error);
|
||||||
return;
|
return;
|
||||||
@@ -22,6 +22,7 @@ async function checkMongoDbVersions() {
|
|||||||
resolve(stdout.trim());
|
resolve(stdout.trim());
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
latestStableVersions = latestStableVersions.split('\n').map(version => version.trim());
|
||||||
|
|
||||||
await new CiVersionCheck({
|
await new CiVersionCheck({
|
||||||
packageName: 'MongoDB',
|
packageName: 'MongoDB',
|
||||||
@@ -29,9 +30,15 @@ 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: [latestStableVersion],
|
releasedVersions: latestStableVersions,
|
||||||
latestComponent: CiVersionCheck.versionComponents.major,
|
latestComponent: CiVersionCheck.versionComponents.patch,
|
||||||
ignoreReleasedVersions: [],
|
ignoreReleasedVersions: [
|
||||||
|
'<4.2.0', // These versions have reached their end-of-life support date
|
||||||
|
'>=4.3.0 <5.0.0', // Unsupported rapid release versions
|
||||||
|
'>=5.1.0 <6.0.0', // Unsupported rapid release versions
|
||||||
|
'>=6.1.0 <7.0.0', // Unsupported rapid release versions
|
||||||
|
'>=7.1.0 <8.0.0', // Unsupported rapid release versions
|
||||||
|
],
|
||||||
}).check();
|
}).check();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user