ENG-3198: Upgrade Node.js from 20 to 24 and bump CI actions#7885
ENG-3198: Upgrade Node.js from 20 to 24 and bump CI actions#7885gilluminate merged 4 commits intomainfrom
Conversation
Standardizes all remaining Node 20 references to Node 24, matching the two workflows (frontend_checks, chromatic) already on 24. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub. 2 Skipped Deployments
|
Addresses Node.js 20 deprecation warning in GitHub Actions. The old versions run on Node 20 internally, which will be removed from runners on September 16, 2026. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
actions/cache v4 -> v5, actions/download-artifact v4 -> v8, actions/upload-artifact v4 -> v7, cypress-io/github-action v6 -> v7, docker/login-action v3 -> v4, docker/setup-buildx-action v3 -> v4, peter-evans/repository-dispatch v3 -> v4. Addresses Node.js 20 deprecation warnings from these actions. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #7885 +/- ##
=======================================
Coverage 85.07% 85.08%
=======================================
Files 627 627
Lines 40780 40794 +14
Branches 4742 4742
=======================================
+ Hits 34694 34709 +15
Misses 5017 5017
+ Partials 1069 1068 -1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Code Review: CI/CD Action Version Bumps + Node 24 Upgrade
This is a clean, well-scoped maintenance PR. All workflows and Dockerfiles are updated consistently, and the changelog entry is included. Two items worth addressing before merge:
Notable Concerns
1. upload-artifact / download-artifact version skew (all affected workflows)
Across every workflow that passes artifacts between jobs, upload-artifact is bumped to @v7 while download-artifact is bumped to @v8. These two actions must use a compatible artifact storage backend. GitHub has historically made breaking changes between major versions of these actions (e.g., v3→v4 changed the storage API entirely, requiring both sides to be updated together). The same risk applies here if v7 and v8 don't share the same backend.
Affected files: backend_checks.yml, cypress_admin-ui.yml, cypress_fides-js.yml, cypress_privacy-center.yml. Please confirm the v7/v8 compatibility or align both to the same major version.
2. Node 24 "Current" vs. Node 22 LTS
Node 20 EOL is April 2026, making the upgrade timely. However, Node 24 (released April 2026) is on the "Current" release line and won't enter Active LTS until October 2026. Node 22 is the current Active LTS with support through April 2027. For production Docker images (Dockerfile, clients/sample-app/Dockerfile) in particular, LTS is usually the more conservative and supportable choice. Worth an explicit decision either way.
Everything Else Looks Good
actions/checkoutv4/v5 → v6: consistent across all workflows ✓actions/cachev4 → v5: consistent ✓dorny/paths-filterv3 → v4: consistent ✓docker/login-actionv3 → v4: consistent ✓docker/setup-buildx-actionv3 → v4: consistent ✓cypress-io/github-actionv6 → v7: consistent ✓peter-evans/repository-dispatchv3 → v4: consistent ✓actions/setup-nodev4 → v5 (where applicable): consistent ✓- Even the commented-out
upload-artifactincypress_admin-ui.ymlis updated — good attention to detail.
🔬 Codegraph: connected (42425 nodes)
💡 Write /code-review in a comment to re-run this review.
Ticket ENG-3198
Description Of Changes
Standardizes all remaining Node 20 references to Node 24 across Dockerfiles and CI workflows. Two workflows (
frontend_checks.ymlandchromatic.yml) were already on Node 24 -- this brings the rest in line.Also bumps all GitHub Actions to their latest major versions to address Node.js 20 deprecation warnings. Node 20 will be removed from GitHub Actions runners on September 16, 2026.
Code Changes
Node 24 upgrade:
Dockerfile-- Updatednode:20-alpinetonode:24-alpinefor bothfrontendandprod_pcstagesclients/sample-app/Dockerfile-- Updatednode:20-alpinetonode:24-alpine.github/workflows/cypress_admin-ui.yml-- Updated node-version from20.xto24.xin both jobs.github/workflows/cypress_privacy-center.yml-- Updated node-version from20.xto24.x.github/workflows/cypress_fides-js.yml-- Updated node-version from20.xto24.x.github/workflows/publish_package.yaml-- Updated node-version from20to24GitHub Actions version bumps across all workflow files:
actions/checkoutactions/cacheactions/cache/restoreactions/download-artifactactions/upload-artifactactions/setup-nodecypress-io/github-actiondocker/login-actiondocker/setup-buildx-actiondorny/paths-filterpeter-evans/repository-dispatchSteps to Confirm
docker build --target frontend .)grep -rn "uses:.*@v[0-9]" .github/workflows/ | sed 's/.*uses: *//' | sort -uPre-Merge Checklist
CHANGELOG.mdupdatedAdd a db-migration labelAdd a high-risk labelUpdates unreleased work already in Changelog🤖 Generated with Claude Code