chore: upgrade to Node.js 25.2.1

- Update .nvmrc to Node 25
- Update all Dockerfiles to use node:25-alpine
- Update package.json engines to >=25.0.0
- Update CI/CD workflows for Node 25
- Update @types/node in packages
- Fix ESLint config to use ES module syntax
- Update OpenTelemetry imports for compatibility

All services tested and working with Node.js 25.2.1
This commit is contained in:
Ho Ngoc Hai
2026-01-07 17:15:25 +07:00
parent 9c74b86837
commit 63f5b10fe2
21 changed files with 1226 additions and 1504 deletions

View File

@@ -3,7 +3,7 @@
# EN: Base stage with security updates
# VI: Base stage với security updates
FROM node:20-alpine AS base
FROM node:25-alpine AS base
# EN: Install security updates and required packages
# VI: Cài đặt security updates và packages cần thiết

View File

@@ -21,7 +21,7 @@ import { correlationMiddleware } from './middlewares/correlation.middleware';
if (process.env.TRACING_ENABLED === 'true') {
initTracing({
serviceName: process.env.SERVICE_NAME || 'microservice',
jaegerEndpoint: process.env.JAEGER_ENDPOINT,
otlpEndpoint: process.env.OTLP_ENDPOINT,
enabled: true,
});
}

View File

@@ -1,4 +1,9 @@
module.exports = {
ignorePatterns: ['.eslintrc.js'],
extends: ['@goodgo/eslint-config'],
root: true,
parserOptions: {
tsconfigRootDir: __dirname,
project: './tsconfig.json',
},
};

View File

@@ -3,9 +3,9 @@
# EN: Base stage with security updates
# VI: Base stage với security updates
# EN: Base stage with security updates (Node 22)
# VI: Base stage với security updates (Node 22)
FROM node:22-alpine AS base
# EN: Base stage with security updates (Node 25)
# VI: Base stage với security updates (Node 25)
FROM node:25-alpine AS base
# EN: Install security updates and required packages
# VI: Cài đặt security updates và packages cần thiết

View File

@@ -56,7 +56,7 @@
"speakeasy": "^2.0.0",
"swagger-jsdoc": "^6.2.8",
"swagger-ui-express": "^5.0.1",
"uuid": "^9.0.1",
"uuid": "^13.0.0",
"zod": "^3.22.4"
},
"devDependencies": {
@@ -72,7 +72,7 @@
"@types/ioredis": "^5.0.0",
"@types/jest": "^29.5.11",
"@types/jsonwebtoken": "^9.0.5",
"@types/node": "^20.11.0",
"@types/node": "^22.19.3",
"@types/node-cache": "^4.2.5",
"@types/opossum": "^8.1.9",
"@types/passport": "^1.0.16",

View File

@@ -19,7 +19,7 @@ import { createRouter } from './routes';
if (process.env.TRACING_ENABLED === 'true') {
initTracing({
serviceName: process.env.SERVICE_NAME || 'microservice',
jaegerEndpoint: process.env.JAEGER_ENDPOINT,
otlpEndpoint: process.env.OTLP_ENDPOINT,
enabled: true,
});
}