Skip to content

fix(ci-cd): bump github actions to node 24 runtimes - #303

Open
piyushsinghgaur1 wants to merge 3 commits into
masterfrom
GH-302
Open

fix(ci-cd): bump github actions to node 24 runtimes#303
piyushsinghgaur1 wants to merge 3 commits into
masterfrom
GH-302

Conversation

@piyushsinghgaur1

Copy link
Copy Markdown
Contributor

Description

The workflows in this repo emit a Node.js 20 deprecation warning on every run:

Node.js 20 is deprecated. The following actions target Node.js 20 but are being
forced to run on Node.js 24: actions/checkout@v4, actions/setup-node@v4

GitHub has removed Node 20 from its runners and force-runs Node 20 actions on Node 24. Builds still succeed, but the annotation appears on every run and becomes a hard failure once the compatibility shim is dropped.

This moves every affected first-party action onto a major that declares using: node24, and raises any node-version still below 24.

Action pins

File Was Now
.github/workflows/main.yaml actions/checkout@v4 actions/checkout@v5
.github/workflows/main.yaml actions/setup-node@v4 actions/setup-node@v5
.github/workflows/release.yaml actions/checkout@v4 actions/checkout@v5
.github/workflows/release.yaml actions/setup-node@v4 actions/setup-node@v5
.github/workflows/sync-docs.yaml actions/checkout@v4 actions/checkout@v5
.github/workflows/sync-docs.yaml actions/checkout@v4 actions/checkout@v5
.github/workflows/trivy.yaml actions/checkout@v4 actions/checkout@v5

Node versions

File Was Now
.github/workflows/release.yaml '22' '24'

Each target major was verified to declare using: node24 by reading its action.yml at the pinned tag.

Deliberately unchanged

  • Multi-version test matrices that already include Node 24 are left as-is — collapsing them would drop Node 22 coverage rather than fix a deprecation.
  • SHA-pinned third-party actions (e.g. aquasecurity/trivy-action@<sha>) are untouched; SHA pinning is correct practice and unrelated to the Node runtime.

Fixes #302

Type of change

  • Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

  • All changed workflow files validated as parseable YAML
  • Each target action major confirmed to declare using: node24 in its action.yml
  • Bumps confirmed drop-in for the inputs actually used (no input renames or removals across these majors)
  • Local pre-commit hook (test + lint) run as part of committing

Scope of this change: 4 file(s) — 4 files changed, 8 insertions(+), 8 deletions(-). CI configuration only; no application source touched.

The warning can be confirmed gone by running a workflow and checking the run summary's Annotations section.

Checklist:

  • Performed a self-review of my own code
  • npm test passes on your machine
  • New tests added or existing tests modified to cover all changes — n/a, CI configuration only, no code paths changed
  • Code conforms with the style guide
  • API Documentation in code was updated — n/a
  • Any dependent changes have been merged and published in downstream modules

Clears the "Node.js 20 is deprecated" GitHub Actions annotation by moving
every first-party action pin to a major whose action.yml declares
using: node24.

* main.yaml: actions/checkout v4 -> v5, actions/setup-node v4 -> v5
* release.yaml: actions/checkout v4 -> v5, actions/setup-node v4 -> v5,
  node-version 22 -> 24 (also drops the stale UPDATED to v4 comment)
* sync-docs.yaml: both actions/checkout pins v4 -> v5
* trivy.yaml: actions/checkout v4 -> v5
* main.yaml test matrix [22, 24] left unchanged so Node 22 coverage is kept
* aquasecurity/trivy-action left SHA-pinned and untouched

GH-302
Regenerate package-lock.json from scratch and apply npm audit fix to clear
vulnerabilities reported by the Trivy scan.

GH-302
Regenerate the lockfile so nested @types/node entries required by
@loopback/build are present. npm ci rejected the previous lock as out
of sync with package.json. Verified with npm ci under npm 10 and 11.

GH-302
@sonarqubecloud

Copy link
Copy Markdown

@piyushsinghgaur1
piyushsinghgaur1 marked this pull request as ready for review August 18, 2026 08:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Node.js 20 is deprecated warning in GitHub Actions workflows

2 participants