Skip to content

ci: bump JS actions to Node 24 majors (incl. CodeQL v4 + WIF auth v3)#4933

Merged
dustin-decker merged 2 commits into
mainfrom
node24/actions-bump
May 1, 2026
Merged

ci: bump JS actions to Node 24 majors (incl. CodeQL v4 + WIF auth v3)#4933
dustin-decker merged 2 commits into
mainfrom
node24/actions-bump

Conversation

@bryanbeverly
Copy link
Copy Markdown
Contributor

@bryanbeverly bryanbeverly commented Apr 29, 2026

Summary

Bumps every Node-20-era action ref across 9 workflow files to its Node-24 major. Part of the org-wide Node 24 baseline cleanup ahead of GitHub's 2026-09-16 Node 20 removal deadline.

THIS IS THE HIGHEST-RISK PR IN THE BASELINE BURST. Two Higher-risk bumps in one PR: CodeQL v3 -> v4 AND WIF auth v2 -> v3. Please coordinate with security + infra owners before merge.

Action bumps

action from to
actions/checkout @v4 @v6
actions/setup-go @v5 @v6
mikepenz/action-junit-report @v5 @v6
goreleaser/goreleaser-action @v6 @v7
docker/login-action @v3 @v4
docker/setup-qemu-action @v3 @v4
github/codeql-action/init @v3 @v4
github/codeql-action/analyze @v3 @v4
google-github-actions/auth @v2 @v3
jaxxstorm/action-install-gh-release @v1.14.0 @v3.0.0 (immutable patch pin)

sigstore/cosign-installer@<SHA> is SHA-pinned, untouched. buildpulse/buildpulse-action@main is @main-tracking (separate hygiene followup, not in scope). Out-of-scope: golangci/golangci-lint-action@v7 (deferred to sweep), rwx-research/setup-captain@v1.

Per-PR preflight

  • Rolling tags verified for all "to" majors (2026-04-29): checkout de0fac2e, setup-go 4a360112, mikepenz bccf2e31, goreleaser 1a80836c, docker/login 4907a6dd, docker/setup-qemu ce360397, codeql v4 (latest patch v4.31.11), google-github-actions/auth 7c6bc770.
  • jaxxstorm/action-install-gh-release ships immutable releases — pinned to @v3.0.0 with inline comment.
  • No conflicting Dependabot/Renovate PRs (Renovate Update aws-sdk-go-v2 monorepo #4890 is for aws-sdk-go-v2, not actions).
  • No surprise reusable-workflow dependencies.
  • golangci-lint-action explicitly deferred (separate sweep).

Risk

Highest. Two Higher-risk bumps requiring focused review:

  1. CodeQL v3 -> v4 changes default query packs and SARIF emission. Post-merge: confirm the GHAS Security tab still populates with the expected alert categories and the alert count is in the expected range. This is the most common failure mode for CodeQL major bumps.

  2. google-github-actions/auth v2 -> v3 is a major version jump. Verify the GCP workload-identity-pool + provider config still authenticates against auth@v3 (used in test.yml and release-bot.yml — both reference "google-github-actions/auth@v2" with double-quoted YAML).

  3. goreleaser v7 — pin GoReleaser binary version explicitly if relying on a specific binary semver.

Other bumps are Low/Medium risk: pure Node-runtime bumps (checkout, setup-go, mikepenz, docker login/qemu) plus jaxxstorm v1->v3.

Validation

PR-time CI exercises most workflows. release.yml and release-bot.yml won't fire on PR; the next release will validate. Confirm via:

```
gh run view --repo trufflesecurity/trufflehog --log 2>/dev/null | \
grep -E "Node\.js (16|20) actions are deprecated"
```

Post-merge, also verify:

  1. GHAS Security tab still populates (CodeQL v4).
  2. auth@v3 step authenticates successfully.

Empty grep output = green for the bumped refs (the buildpulse/buildpulse-action@main deprecation warning will still appear if the action is still on Node 20 — out of this PR's scope).

References

Made with Cursor


Note

High Risk
Upgrades CodeQL (v3→v4) and GCP OIDC auth (v2→v3), which can break security scanning output or CI/release authentication; releases are affected but won’t be exercised until the next tag/published release.

Overview
Updates GitHub Actions across the CI/release workflows to newer major versions, primarily to move off Node 20-era actions (e.g., actions/checkout@v6, actions/setup-go@v6, Docker actions v4, mikepenz/action-junit-report@v6, and goreleaser/goreleaser-action@v7).

The security- and release-critical workflows are also bumped: CodeQL is upgraded from v3 to v4 (codeql-action/init/analyze), and GCP Workload Identity auth moves from google-github-actions/auth@v2 to @v3 (used in test.yml and release-bot.yml). detector-tests.yml additionally updates jaxxstorm/action-install-gh-release to v3.0.0 and pins it to that immutable version.

Reviewed by Cursor Bugbot for commit ac1f504. Bugbot is set up for automated code reviews on this repo. Configure here.

…ql v4, auth v3, goreleaser v7, mikepenz v6, jaxxstorm v3.0.0, docker login/qemu v4)

Made-with: Cursor
@bryanbeverly bryanbeverly requested a review from a team April 29, 2026 16:45
Copy link
Copy Markdown
Contributor

@dustin-decker dustin-decker left a comment

Choose a reason for hiding this comment

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

Approved: Node action/runtime upgrade with passing CI.

@dustin-decker dustin-decker merged commit a4e3016 into main May 1, 2026
16 checks passed
@dustin-decker dustin-decker deleted the node24/actions-bump branch May 1, 2026 22:08
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