ci: audit and update GitHub Actions to ASF-approved versions#1225
Open
jamesfredley wants to merge 1 commit into
Open
ci: audit and update GitHub Actions to ASF-approved versions#1225jamesfredley wants to merge 1 commit into
jamesfredley wants to merge 1 commit into
Conversation
Pin every external GitHub Action to a full commit SHA from the ASF approved actions allow-list, with a trailing comment naming the version it resolves to. Mirrors the grails-core audit in apache/grails-core#15690. - actions/checkout -> de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 (was v4, v5) - actions/setup-java -> be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0 (was v4, v5) - gradle/actions/setup-gradle -> 50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 (was 0723195856401067f7a2779048b490ace7a47d7c # v5.0.2) - actions/upload-artifact -> 043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 (was 50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0) - release-drafter/release-drafter -> e1247478eabc9f6d9cf5ec2b3547469b0e1d2767 # v7.3.1 (was 6a93d829887aa2e0748befe2e808c66c0ec6e4c7 # v6.4.0) - softprops/action-gh-release -> b4309332981a82ec1c5618f44dd2e27cc8bfbfda # v3.0.0 (was 153bb8e04406b158c6c84fc1615b65b24149a1fe # v2.6.1) Add cache-provider: basic to all 7 setup-gradle steps so caching stays on the MIT-licensed provider rather than the proprietary enhanced provider introduced in gradle/actions v6 (Gradle commercial Terms of Use). First-party apache/grails-github-actions/* and local ./.github/actions/* references are intentionally left unchanged. Assisted-by: claude-code:claude-4.8-opus
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates GitHub Actions workflow dependencies to ASF-approved, SHA-pinned action versions and configures Gradle setup steps to use the MIT-licensed basic cache provider.
Changes:
- Pins external GitHub Actions to full commit SHAs with version comments.
- Updates checkout, Java setup, Gradle setup, artifact upload, release drafter, and GitHub release actions.
- Adds
cache-provider: basicto allgradle/actions/setup-gradleusages.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
.github/workflows/gradle.yml |
Updates CI build/test workflow actions and Gradle cache provider. |
.github/workflows/rat.yml |
Updates RAT workflow actions, including artifact upload. |
.github/workflows/release.yml |
Updates release workflow actions and Gradle setup cache behavior. |
.github/workflows/release-notes.yml |
Updates release-drafter action pin. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Audit of every GitHub Action used in this repository against the ASF approved actions allow-list, updating each to its current approved version and pinning every external action to a full commit SHA with a trailing comment naming the version it resolves to.
This mirrors the audit performed on grails-core in apache/grails-core#15690 and brings this repository back onto supported, allow-list-approved action versions.
Why (setup-gradle)
The primary driver is
gradle/actions/setup-gradle:gradle/actionsv6.0.0moved caching into a proprietaryenhancedprovider governed by Gradle's commercial Terms of Use.v6.1.0reintroduced an MIT-licensedbasiccache provider.Standardizing on the approved
v6.1.0SHA withcache-provider: basic(7 steps) keeps us on a supported version while caching stays MIT-licensed. Eachcache-providerline carries an inline comment documenting the distinction.Changes
actions/checkoutde0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2actions/setup-javabe666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0gradle/actions/setup-gradle50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0actions/upload-artifact043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1release-drafter/release-draftere1247478eabc9f6d9cf5ec2b3547469b0e1d2767 # v7.3.1softprops/action-gh-releaseb4309332981a82ec1c5618f44dd2e27cc8bfbfda # v3.0.0Plus
cache-provider: basicadded to all 7setup-gradlesteps.First-party
apache/grails-github-actions/*references and local./.github/actions/*composites are intentionally left unchanged.Verification
# versioncomment; the only non-SHA refs remaining are the first-partyapache/*@asfones and local composite actions.