diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml index a0d70785..d39ac3ce 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/continuous-integration.yml @@ -136,7 +136,7 @@ jobs: - uses: "actions/setup-node@v4" with: check-latest: true - node-version: 20 + node-version: 21 - name: "Install node modules" run: "npm ci" - name: Run ESLint @@ -149,8 +149,19 @@ jobs: - uses: "actions/setup-node@v4" with: check-latest: true - node-version: 20 + node-version: 21 - name: "Install node modules" run: "npm ci" - name: Run Jest run: "npm run test" + + package-lock-up-to-date: + runs-on: "ubuntu-latest" + steps: + - uses: "actions/checkout@v4" + - uses: "actions/setup-node@v4" + with: + check-latest: true + node-version: 21 + - name: "Check package-lock.json is up2date" + run: "npx --yes package-lock-utd" diff --git a/Dockerfile b/Dockerfile index 7e4b0dfb..b8748c52 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,6 +6,7 @@ COPY package*.json ./ COPY tsconfig.json ./ COPY webpack.config.ts ./ RUN npm ci +RUN apk add --no-cache jq && npx semver -r $(jq -r '.engines.node' package.json) $(node -v) || (echo "ERROR: Container node version is not allowed by projects package.json engine range." && exit 1) COPY ./src ./src RUN npm run build diff --git a/package-lock.json b/package-lock.json index e8727cac..d5e7d9c2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -32,7 +32,7 @@ "webpack-cli": "^5.0.0" }, "engines": { - "node": "^20.2.0", + "node": "^21.7.0", "npm": "^10.0.0" } }, diff --git a/package.json b/package.json index 59fc1ae0..0bac52b3 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ }, "engines": { "npm": "^10.0.0", - "node": "^20.2.0" + "node": "^21.7.0" }, "dependencies": { "@actions/core": "^1.10.0",