Bump GitHub Actions to latest major versions#116
Conversation
Upgrades all actions across the workflows: - actions/checkout v4 -> v6 - actions/upload-artifact v4 -> v7 - actions/setup-node v4 -> v6 - actions/upload-pages-artifact v3 -> v5 - actions/deploy-pages v4 -> v5 - docker/setup-buildx-action v3 -> v4 - docker/build-push-action v5 -> v7 - docker/login-action v3 -> v4 - oven-sh/setup-bun v1 -> v2 - peaceiris/actions-mdbook v1 -> v2 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
📝 WalkthroughWalkthroughThis PR updates GitHub Actions to newer major versions across all CI/CD workflows in the repository. Checkouts move to v6, Docker actions to v4–v7, Bun and Node setup tools to v2 and v6 respectively, artifact uploads to v7, and documentation deployment actions to v5. All existing workflow logic, build configuration, tagging schemes, and conditional execution remain unchanged. ChangesDocker Build Workflows
NPM, QA, and Release Workflows
Documentation Workflow
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
Suggested reviewers
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/build-docker-ajanta.yml:
- Around line 39-42: The checkout step using actions/checkout@v6 is
non-deterministic because it omits a specific ref; update the step that
references repository: jammin-create/jammin-create-ajanta to include a pinned
ref (a specific tag or commit SHA) by adding a ref field with the chosen
tag/SHA, and apply the same change to the equivalent checkout steps in
.github/workflows/build-docker-jade.yml and
.github/workflows/build-docker-jam-sdk.yml so all external example repositories
are checked out deterministically.
In @.github/workflows/build-docker-polkajam.yml:
- Line 17: The workflow uses floating action tags like "actions/checkout@v6"
(and other "uses:" entries at the indicated locations) which should be pinned to
immutable commit SHAs: replace each "uses: owner/repo@vN" with the corresponding
"uses: owner/repo@<40-char-SHA>" while preserving any "# vN" comment for
readability/update tooling; update every "uses:" occurrence (including the ones
called out at lines 26, 29, 48, 56, 64) to reference the full SHA and ensure the
comments remain to indicate the human-friendly version.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: b1700d47-c458-4562-87e1-058d80bc448a
📒 Files selected for processing (9)
.github/workflows/build-docker-ajanta.yml.github/workflows/build-docker-jade.yml.github/workflows/build-docker-jam-sdk.yml.github/workflows/build-docker-polkajam.yml.github/workflows/docs.yml.github/workflows/publish-npm-cli.yml.github/workflows/publish-npm-sdk.yml.github/workflows/qa.yml.github/workflows/release-prepare.yml
Summary
.github/workflows/to the latest major release.upload-artifactv4 → v7).Things to watch
actions/upload-artifact@v7requires unique artifact names per run (immutable artifacts model from v4 onward). Each docker build workflow uploads exactly once, so this should be fine.docker/build-push-action@v7enables provenance/SBOM attestations by default; pushedghcr.ioimages will now carry attestation manifests.oven-sh/setup-bun@v2andpeaceiris/actions-mdbook@v2still accept the existing inputs (bun-version,mdbook-version) used here.Test plan
Quality Assuranceworkflow passes on this PRBuild - Docker - Ajanta/Jade/JAM SDK/polkajamworkflows pass (they trigger on PRs)Docsworkflow build job passes on this PRrelease-prepareworkflow still works on the next release🤖 Generated with Claude Code