Skip to content

ci: audit and update GitHub Actions to ASF-approved versions#1225

Open
jamesfredley wants to merge 1 commit into
7.0.xfrom
ci/setup-gradle-v6-basic-cache
Open

ci: audit and update GitHub Actions to ASF-approved versions#1225
jamesfredley wants to merge 1 commit into
7.0.xfrom
ci/setup-gradle-v6-basic-cache

Conversation

@jamesfredley
Copy link
Copy Markdown
Contributor

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:

  • The previously-used SHAs were either never on the ASF allow-list or are scheduled to expire from it on 2026-06-20.
  • gradle/actions v6.0.0 moved caching into a proprietary enhanced provider governed by Gradle's commercial Terms of Use. v6.1.0 reintroduced an MIT-licensed basic cache provider.

Standardizing on the approved v6.1.0 SHA with cache-provider: basic (7 steps) keeps us on a supported version while caching stays MIT-licensed. Each cache-provider line carries an inline comment documenting the distinction.

Changes

Action Before After (pinned SHA # version)
actions/checkout v4, v5 de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
actions/setup-java v4, v5 be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
gradle/actions/setup-gradle 0723195856401067f7a2779048b490ace7a47d7c # v5.0.2 50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
actions/upload-artifact 50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0 043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
release-drafter/release-drafter 6a93d829887aa2e0748befe2e808c66c0ec6e4c7 # v6.4.0 e1247478eabc9f6d9cf5ec2b3547469b0e1d2767 # v7.3.1
softprops/action-gh-release 153bb8e04406b158c6c84fc1615b65b24149a1fe # v2.6.1 b4309332981a82ec1c5618f44dd2e27cc8bfbfda # v3.0.0

Plus cache-provider: basic added to all 7 setup-gradle steps.

First-party apache/grails-github-actions/* references and local ./.github/actions/* composites are intentionally left unchanged.

Verification

  • Every external action is SHA-pinned with a # version comment; the only non-SHA refs remaining are the first-party apache/* @asf ones and local composite actions.
  • All modified workflow YAML files parse cleanly.

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
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

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: basic to all gradle/actions/setup-gradle usages.

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.

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