Skip to content

CI: move GitHub Actions off Node.js 20 - #144

Merged
tuhaihe merged 1 commit into
apache:mainfrom
tuhaihe:ci-node24-actions
Nov 9, 2026
Merged

tuhaihe merged 1 commit into
apache:mainfrom
tuhaihe:ci-node24-actions

Conversation

@tuhaihe

@tuhaihe tuhaihe commented Nov 9, 2026

Copy link
Copy Markdown
Member

GitHub deprecated the Node.js 20 runtime for actions. Each workflow run now ends with this warning:

  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-go@v5.

Update all workflows to the first major versions that run on Node.js 24 by default:

  actions/checkout           v4 -> v7
  actions/setup-go           v5 -> v7
  actions/setup-java         v3 -> v6
  actions/upload-artifact    v4 -> v7
  actions/download-artifact  v4 -> v8

golangci/golangci-lint-action@v9 already runs on Node.js 24, so it does not change.

No workflow input changes are necessary:

  • All artifacts are uploaded and downloaded by name, so the path change for downloads by ID (download-artifact v5) does not apply. No upload uses "archive: false", so the direct-upload changes in upload-artifact v7 and download-artifact v8 do not apply.
  • No workflow uses pull_request_target or workflow_run, so the new fork checkout block in checkout v7 does not apply. No step uses the git credentials that checkout keeps after the clone.
  • The container jobs (Rocky 8/9/10, Ubuntu 22.04/24.04) already run these actions on Node.js 24 because of the forced upgrade, so the runtime is already known to work there.

Assisted-by: Claude Code
Backpatch-through: REL_2_STABLE

closes: #ISSUE_Number


Change logs

Describe your change clearly, including what problem is being solved or what document is being added or updated.

Contributor's checklist

Here are some reminders before you submit your pull request:

GitHub deprecated the Node.js 20 runtime for actions. Each workflow
run now ends with this warning:

  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-go@v5.

Update all workflows to the first major versions that run on
Node.js 24 by default:

  actions/checkout           v4 -> v7
  actions/setup-go           v5 -> v7
  actions/setup-java         v3 -> v6
  actions/upload-artifact    v4 -> v7
  actions/download-artifact  v4 -> v8

golangci/golangci-lint-action@v9 already runs on Node.js 24, so it
does not change.

No workflow input changes are necessary:

- All artifacts are uploaded and downloaded by name, so the path
  change for downloads by ID (download-artifact v5) does not apply.
  No upload uses "archive: false", so the direct-upload changes in
  upload-artifact v7 and download-artifact v8 do not apply.
- No workflow uses pull_request_target or workflow_run, so the new
  fork checkout block in checkout v7 does not apply. No step uses
  the git credentials that checkout keeps after the clone.
- The container jobs (Rocky 8/9/10, Ubuntu 22.04/24.04) already run
  these actions on Node.js 24 because of the forced upgrade, so the
  runtime is already known to work there.

Assisted-by: Claude Code
Backpatch-through: REL_2_STABLE

@leborchuk leborchuk left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@tuhaihe
tuhaihe merged commit f8d91c1 into apache:main Nov 9, 2026
36 of 38 checks passed
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.

2 participants