Skip to content

Bump CI actions off deprecated Node.js 20 - #5421

Merged
rdimitrov merged 2 commits into
mainfrom
coal-cress
Jun 3, 2026
Merged

Bump CI actions off deprecated Node.js 20#5421
rdimitrov merged 2 commits into
mainfrom
coal-cress

Conversation

@rdimitrov

Copy link
Copy Markdown
Member

Summary

GitHub is deprecating the Node.js 20 runtime for JavaScript actions (changelog): it is forced to Node.js 24 on 2026-06-16 and removed from runners on 2026-09-16. This currently surfaces "Node.js 20 actions are deprecated" warnings across nearly every workflow.

This PR bumps every affected action that has a Node.js 24 release to clear the warnings. All bumps are runtime-only major-version changes — verified against upstream release notes that the only breaking change is the Node bump, with no input or behavior changes for how we use them:

  • azure/setup-helmv4.3.1v5.0.0
  • docker/login-actionv3.7.0v4.2.0
  • docker/setup-buildx-actionv3.12.0v4.1.0
  • docker/metadata-actionv5.10.0v6.1.0
  • docker/build-push-actionv6.19.2v7.2.0
  • codecov/codecov-actionv5v6.0.1 (also resolves its embedded actions/github-scriptv7v8)
  • slackapi/slack-github-actionv2.1.1v3.0.3 (webhook/webhook-type/payload inputs unchanged)

Type of change

  • Dependency update

Test plan

  • Manual testing (describe below)

Workflow-only change with no local entry point, so verification was done at the source level:

  • Confirmed each target commit SHA corresponds to its pinned tag and that the tag's action.yml declares using: node24.
  • Reviewed upstream release notes to confirm each major bump's only breaking change is the Node.js runtime.
  • Validated all 8 edited workflow files still parse as YAML.
  • The authoritative check is this PR's own CI run — the Node 20 deprecation annotations for these actions should no longer appear.

API Compatibility

  • This PR does not break the v1beta1 API, OR the api-break-allowed label is applied and the migration guidance is described above.

Changes

FileChange
image-build-and-publish.ymldocker/login, setup-buildx, metadata, build-push bumps
skills-build-and-publish.ymldocker/login bump
test.ymlcodecov-action bump
releaser.ymlslack-github-action bump
helm-publish.yml, helm-charts-test.yml, test-e2e-lifecycle.yml, operator-ci.ymlazure/setup-helm bump (dropped a stale # pin@v4.3.0 note)

Does this introduce a user-facing change?

No.

Special notes for reviewers

Two Node 20 actions are intentionally left as-is because no Node.js 24 release exists upstream yet:

  • arduino/setup-task — latest is v2.0.0 (still node20); needs a separate fix (e.g. go install) and is out of scope here.
  • golang/govulncheck-action@v1.0.4 — we are already on its latest release; the setup-go@v5.0.0v6.2.0 fix is only on an unreleased upstream commit. Renovate will bump it once a new release ships; GitHub force-migrates it to Node 24 on 2026-06-16 regardless.

renovate.json is untouched; arduino/setup-task remains in the "setup and language actions" group.

Generated with Claude Code

GitHub is deprecating the Node.js 20 runtime for JavaScript actions: it
is forced to Node.js 24 on 2026-06-16 and removed on 2026-09-16, which
surfaces "Node.js 20 actions are deprecated" warnings across our
workflows.
Bump every affected action to a release that runs on Node.js 24. All are
runtime-only major bumps with no input or behavior changes for our usage:
- azure/setup-helm v4.3.1 -> v5.0.0
- docker/login-action v3.7.0 -> v4.2.0
- docker/setup-buildx-action v3.12.0 -> v4.1.0
- docker/metadata-action v5.10.0 -> v6.1.0
- docker/build-push-action v6.19.2 -> v7.2.0
- codecov/codecov-action v5 -> v6.0.1 (also moves its
embedded github-script v7 -> v8)
- slackapi/slack-github-action v2.1.1 -> v3.0.3
arduino/setup-task and golang/govulncheck-action are left as-is: neither
has a Node.js 24 release yet.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@rdimitrov
rdimitrov requested a review from JAORMX as a code ownerJune 3, 2026 10:40
@github-actionsgithub-actionsBot added the size/XS Extra small PR: < 100 lines changed label Jun 3, 2026
@codecov

codecovBot commented Jun 3, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 68.83%. Comparing base (ab2d3a1) to head (31d82b7).

Additional details and impacted files
@@ Coverage Diff @@## main #5421 +/- ##
==========================================
- Coverage 68.84% 68.83% -0.02% 
==========================================
Files 634 634 Lines 64433 64433 ==========================================
- Hits 44358 44350 -8 - Misses 16795 16801 +6 - Partials 3280 3282 +2 

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@github-actionsgithub-actionsBot added size/XS Extra small PR: < 100 lines changed and removed size/XS Extra small PR: < 100 lines changed labels Jun 3, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/XSExtra small PR: < 100 lines changed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@rdimitrov@JAORMX