Skip to content

chore: upgrade GitHub Actions from Node 20 to Node 24#188

Merged
mcollins-ttd merged 1 commit into
mainfrom
mkc-UID2-6742-node20-to-node24-actions
Jun 9, 2026
Merged

chore: upgrade GitHub Actions from Node 20 to Node 24#188
mcollins-ttd merged 1 commit into
mainfrom
mkc-UID2-6742-node20-to-node24-actions

Conversation

@mcollins-ttd

Copy link
Copy Markdown
Contributor

Node 20 is being deprecated on GitHub Actions runners. Starting June 16, 2026, runners will use Node 24 by default.

This PR upgrades outdated action references in this repo to the latest released version that ships Node 24 support, pinned to its commit SHA. Each action's node version is determined by reading its action.yml at the pinned ref.

See: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/

@mcollins-ttd mcollins-ttd left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This PR correctly upgrades GitHub Actions to versions that ship Node 24 support, using SHA pinning with version comments — a solid security and compatibility practice. The major version jumps (checkout v2→v6, metadata-action v4→v6, build-push-action v5→v7) are expected given the age of some of the pinned versions. One pre-existing deprecated command (set-output) in docker-publish.yaml is worth flagging for a follow-up, but it is not introduced by this PR.

uses: actions/setup-node@v4
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: '20.11.0'

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Claude Review: node-version: '20.11.0' here controls the Node version used to build and test the application code, which is intentionally distinct from the action runner's Node runtime being upgraded by this PR. This is correct as-is — no change needed unless the app itself is being migrated to Node 24.

- name: Get Package Version
id: version
run: |
echo "::set-output name=package_version::$(cat package.json | jq -r '.version')"

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Claude Review: echo "::set-output name=package_version::..." is a pre-existing use of the deprecated set-output workflow command (replaced by $GITHUB_OUTPUT in 2022). Not introduced by this PR, but since this file is being touched it would be a good opportunity to update it to: echo "package_version=$(cat package.json | jq -r .version)" >> $GITHUB_OUTPUT

@mcollins-ttd
mcollins-ttd merged commit 18c1608 into main Jun 9, 2026
4 checks passed
@mcollins-ttd
mcollins-ttd deleted the mkc-UID2-6742-node20-to-node24-actions branch June 9, 2026 07:19
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