Skip to content

Releases: gradle/gradle-build-action

v2.1.6

16 May 01:37
116ac10
Compare
Choose a tag to compare

This release contains an fix for changed behaviour in Gradle 7.6, as well as numerous library upgrades.

Earlier versions of the gradle-build-action were saving and restoring the downloaded Gradle wrapper zip file as part of caching the Gradle User Home. This will no longer work with Gradle 7.6, as the wrapper zip is now removed after expanding. This release of gradle-build-action contains a fix for this change in Gradle 7.6. Using an older version of the GitHub action with Gradle 7.6 will likely result in the wrapper being downloaded on every GitHub actions invocation.

What's Changed

  • [FIX] Save/restore exploded Gradle dist rather than zip
  • [FIX] Update to the latest versions of @actions/core, @actions/cache, @actions/github, @actions/http-client and @actions/tool-cache.

Full changelog: v2.1.5...v2.1.6

v2.1.5

29 Mar 19:52
fec4a42
Compare
Choose a tag to compare

This release addresses a potential security issue by upgrading minimist, and fixes a bug with very large cache entries by upgrading @actions/cache. No other changes are included.

What's Changed

  • [FIX] - Upgrade minimist from 1.2.5 -> 1.2.6
  • [FIX] - Support cache entries > 2Gb via library upgrade to @actions/cache from 1.0.10 -> 2.0.0.

Full changelog: v2.1.4...v2.1.5

v2.1.4

18 Mar 20:19
0d13054
Compare
Choose a tag to compare

What's Changed

  • Updated dependency versions: d700906.
  • Log stack trace for cache errors that are reported as warnings.

Full Changelog: v2.1.3...v2.1.4

v2.1.3

03 Feb 17:39
937999e
Compare
Choose a tag to compare

This patch release fixes an issue that prevented the Gradle User Home from being restored from cache on macos-latest runners. #155

What's Changed

  • Fix detection of Gradle User Home on macOS runners by @bigdaz in #156

Full Changelog: v2.1.2...v2.1.3

v2.1.2

28 Jan 16:17
bc3340a
Compare
Choose a tag to compare

This patch release fixes a minor bug and updates some NPM dependencies, including one dependency with a reported security advisory.

What's Changed

  • Fixed #147: existing gradle.properties is no longer overwritten by action initialization
  • Updated all NPM dependencies to the latest version
    • This included updating node-fetch to a version that isn't impacted by GHSA-r683-j2x4-v87g. Note that this CVE has been determined not to impact the action.

Full Changelog: v2.1.1...v2.1.2

v2.1.1

24 Jan 22:08
b9c806c
Compare
Choose a tag to compare

This release improves logging and fixes a number of minor issues.

  • Fix misleading error message when gradlew script is not executable #76
  • Differentiate between build scan links generated for different steps in the same Job #124
  • Avoid overwriting existing Gradle User Home #138
  • Capture build scan links even when cache is disabled #139

In addition, 2 experimental configuration parameters have been added:

  • gradle-home-cache-strict-match: Only reuse cache entries generated by previous invocations for the same job
  • cache-write-only: Do not restore cache entries but save on Job completion

Full Changelog: v2.1.0...v2.1.1

v2.1.0

31 Dec 03:44
3edb3cb
Compare
Choose a tag to compare

Overview

This release brings a major improvement in usability, allowing the action to be used to "setup Gradle" without requiring all Gradle invocations to be managed by the action.

jobs:
  build-my-app:
    steps:
    - uses: actions/checkout@v2
    - name: Setup Gradle
      uses: gradle/gradle-build-action@v2
    - name: Execute Gradle build
      run: ./gradlew build

Any Gradle invocation after the first gradle-build-action step will benefit from caching and build-scan capture just as if it was invoked through a subsequent gradle-build-action. This is achieved via init scripts added when initializing/restoring the Gradle User Home.

This change makes it easier to adopt the gradle-build-action into an existing GitHub Actions workflow and enables usages such as:

  • Redirect all Gradle log output to a file #72
  • Run a script to configure the environment prior to Gradle invocation #15
  • Capture Gradle output for use in a subsequent step #112

Usability improvements

  • Can use regular run step to invoke Gradle and still benefit from Gradle User Home caching as well as build-scan integration.

Caching improvements

  • Wrapper distributions and generated API jars are now cached individually, allowing for better reuse and more efficient storage: #78
  • Java distributions downloaded by Gradle are cached: #33

Changes in detail

  • Avoid using command-line modification to enhance build execution by @bigdaz in #123
  • Refactor: use a single .json file to describe all cached artifact bundles by @bigdaz in #121
  • Cache wrapper zips and generated jars individually by @bigdaz in #127
  • Restore/save configuration-cache data in first action step by @bigdaz in #128
  • Allow action to be used without Gradle execution by @bigdaz in #130
  • Cache downloaded Java Toolchains by @bigdaz in #131

Full Changelog: v2.0.0...v2.1.0

v2.0.1

17 Nov 22:15
996094e
Compare
Choose a tag to compare

What's Changed

This patch release fixes a couple of cases where a failure to store caches would cause the entire Job to fail. The goal of the gradle-build-action is to warn-and-continue on all recoverable cache failures.

Issues fixed

  • Cache upload failure because file read failed should not cause step to fail #120
  • SyntaxError: Unexpected end of JSON input should not cause step to fail #119

Full Changelog: v2.0.0...v2.0.1

v2.0.0

10 Nov 19:58
4137be6
Compare
Choose a tag to compare

This is the initial release of gradle-build-action@v2, which brings significant performance and usability improvements over v1. A few key improvements are outlined here, but see the project README for more details.

Thanks for trying it out!

Usability improvements:

The gradle-build-action has been redesigned from the ground up to work well with minimal configuration, avoiding the need for most users to tweak multiple configuration options to benefit.

Highlights:

  • Simplified and improved configuration options, with better support for more Gradle builds "out of the box".
  • More robust capture of Build Scan™ links, which are now added directly as Notice annotations to your workflow run.
  • Support for multi-line arguments in workflow definitions.

Performance improvements:

A key benefit of gradle-build-action over other solutions is the sophisticated support for saving and restoring relevant Gradle state between build invocations. This caching support speeds up build invocations and is designed to work in most scenarios without further tweaking.

Highlights:

  • Support for caching of more state between Gradle invocations, including compiled build scripts and generated Gradle API jars as well as downloaded dependencies and Gradle distributions.
  • Common files such as downloaded dependencies and wrapper distributions are cached in a more efficient manner, with the goal to cut cache-entry size and reduce eviction pressure.
  • Detailed reporting of cache usage and cache configuration options allow you to optimize the use of the GitHub actions cache.

v2.0-rc.2

30 Oct 20:10
2a57ddf
Compare
Choose a tag to compare
v2.0-rc.2 Pre-release
Pre-release

Adds a useful report outlining cache entries restored/saved, and fixes a few issues found in v2.0-rc.1.

  • All dependency files are not included in dependencies cache bundle, instead of just .jar files (#100)
  • gradle-home-cache-includes and gradle-home-cache-excludes are now multi-line inputs (#106)
  • Only restore configuration-cache state when all of Gradle User Home is restored (#107)
  • Report on cache entry keys and sizes in post-action