From bdf99f9dada2506e990bac6de8ec5e3de34a04f1 Mon Sep 17 00:00:00 2001 From: daz Date: Mon, 8 Apr 2024 12:27:43 -0600 Subject: [PATCH 01/13] Update action.yml for v3.2.1 --- action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/action.yml b/action.yml index c6e8864..f0a2c9c 100644 --- a/action.yml +++ b/action.yml @@ -159,7 +159,7 @@ runs: steps: - name: Setup Gradle id: setup-gradle - uses: gradle/actions/setup-gradle@v3.2.0 + uses: gradle/actions/setup-gradle@v3.2.1 with: gradle-version: ${{ inputs.gradle-version }} cache-disabled: ${{ inputs.cache-disabled }} From cb6e43f18001186272630908bb44a8246d3df780 Mon Sep 17 00:00:00 2001 From: daz Date: Tue, 9 Apr 2024 15:16:33 -0600 Subject: [PATCH 02/13] Emit correct deprecation warnings in setup-gradle - Set the action id via ENV var - Pass the `build-scan-terms-of-service*` parameters directly to 'setup-gradle' --- action.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/action.yml b/action.yml index f0a2c9c..46c3e6d 100644 --- a/action.yml +++ b/action.yml @@ -176,14 +176,18 @@ runs: dependency-graph-continue-on-failure: ${{ inputs.dependency-graph-continue-on-failure }} artifact-retention-days: ${{ inputs.artifact-retention-days }} build-scan-publish: ${{ inputs.build-scan-publish }} - build-scan-terms-of-use-url: ${{ inputs.build-scan-terms-of-use-url || inputs.build-scan-terms-of-service-url }} - build-scan-terms-of-use-agree: ${{ inputs.build-scan-terms-of-use-agree || inputs.build-scan-terms-of-service-agree }} + build-scan-terms-of-use-url: ${{ inputs.build-scan-terms-of-use-url }} + build-scan-terms-of-use-agree: ${{ inputs.build-scan-terms-of-use-agree }} + build-scan-terms-of-service-url: ${{ inputs.build-scan-terms-of-service-url }} + build-scan-terms-of-service-agree: ${{ inputs.build-scan-terms-of-service-agree }} arguments: ${{ inputs.arguments }} build-root-directory: ${{ inputs.build-root-directory }} generate-job-summary: ${{ inputs.generate-job-summary }} gradle-home-cache-strict-match: ${{ inputs.gradle-home-cache-strict-match }} workflow-job-context: ${{ inputs.workflow-job-context }} github-token: ${{ inputs.github-token }} + env: + GRADLE_ACTION_ID: gradle/gradle-build-action branding: icon: 'box' From f02f491d0d40a7ae88c67d3eaf2f3aa55c60a27b Mon Sep 17 00:00:00 2001 From: daz Date: Fri, 12 Apr 2024 14:11:04 -0600 Subject: [PATCH 03/13] Update action.yml for setup-gradle@v3.3.0 --- action.yml | 63 ++++++++++++++++++++++++++++++++---------------------- 1 file changed, 37 insertions(+), 26 deletions(-) diff --git a/action.yml b/action.yml index 46c3e6d..f205068 100644 --- a/action.yml +++ b/action.yml @@ -1,13 +1,14 @@ name: "Gradle Build Action" description: 'Configures Gradle for GitHub actions, caching state and generating a dependency graph via Dependency Submission.' -# https://help.github.com/en/articles/metadata-syntax-for-github-actions - inputs: gradle-version: - description: Gradle version to use. If specified, this Gradle version will be downloaded, added to the PATH and used for invoking Gradle. + description: | + Gradle version to use. If specified, this Gradle version will be downloaded, added to the PATH and used for invoking Gradle. + If not provided, it is assumed that the project uses the Gradle Wrapper. required: false + # Cache configuration cache-disabled: description: When 'true', all caching is disabled. No entries will be written to or read from the cache. required: false @@ -49,15 +50,13 @@ inputs: gradle-home-cache-excludes: description: Paths within Gradle User Home to exclude from cache. required: false - # e.g. Use the following setting to prevent the local build cache from being saved/restored - # gradle-home-cache-excludes: | - # caches/build-cache-1 gradle-home-cache-cleanup: description: When 'true', the action will attempt to remove any stale/unused entries from the Gradle User Home prior to saving to the GitHub Actions cache. required: false default: false + # Job summary configuration add-job-summary: description: Specifies when a Job Summary should be inluded in the action results. Valid values are 'never', 'always' (default), and 'on-failure'. required: false @@ -68,8 +67,11 @@ inputs: required: false default: 'never' + # Dependency Graph configuration dependency-graph: - description: Specifies if a GitHub dependency snapshot should be generated for each Gradle build, and if so, how. Valid values are 'disabled' (default), 'generate', 'generate-and-submit', 'generate-and-upload', 'download-and-submit' and 'clear'. + description: | + Specifies if a GitHub dependency snapshot should be generated for each Gradle build, and if so, how. + Valid values are 'disabled' (default), 'generate', 'generate-and-submit', 'generate-and-upload', 'download-and-submit' and 'clear'. required: false default: 'disabled' @@ -82,6 +84,7 @@ inputs: description: Specifies the number of days to retain any artifacts generated by the action. If not set, the default retention settings for the repository will apply. required: false + # Build Scan configuration build-scan-publish: description: | Set to 'true' to automatically publish build results as a Build Scan on scans.gradle.com. @@ -97,6 +100,14 @@ inputs: description: Indicate that you agree to the Build Scan® terms of use. This input value must be "yes". required: false + # Wrapper validation configuration + validate-wrappers: + description: | + When 'true', the action will perform the 'wrapper-validation' action automatically. + If the wrapper checksums are not valid, the action will fail. + required: false + default: false + # DEPRECATED ACTION INPUTS build-scan-terms-of-service-url: description: The URL to the Build Scan® terms of use. This input must be set to 'https://gradle.com/terms-of-service'. @@ -108,31 +119,33 @@ inputs: required: false deprecation-message: The input has been renamed to align with the Develocity API. Use 'build-scan-terms-of-use-agree' instead. - arguments: - description: Gradle command line arguments (supports multi-line input) - required: false - deprecation-message: Using the action to execute Gradle directly is deprecated in favor of using the action to setup Gradle, and executing Gradle in a subsequent Step. See https://github.com/gradle/gradle-build-action?tab=readme-ov-file#use-the-action-to-setup-gradle. - - build-root-directory: - description: Path to the root directory of the build. Default is the root of the GitHub workspace. - required: false - deprecation-message: Using the action to execute Gradle directly is deprecated in favor of using the action to setup Gradle, and executing Gradle in a subsequent Step. See https://github.com/gradle/gradle-build-action?tab=readme-ov-file#use-the-action-to-setup-gradle. - generate-job-summary: description: When 'false', no Job Summary will be generated for the Job. required: false default: true deprecation-message: Superceded by the new 'add-job-summary' and 'add-job-summary-as-pr-comment' parameters. - # EXPERIMENTAL & INTERNAL ACTION INPUTS + arguments: + description: Gradle command line arguments (supports multi-line input) + required: false + deprecation-message: Using the action to execute Gradle directly is deprecated in favor of using the action to setup Gradle, and executing Gradle in a subsequent Step. + + build-root-directory: + description: Path to the root directory of the build. Default is the root of the GitHub workspace. + required: false + deprecation-message: Using the action to execute Gradle directly is deprecated in favor of using the action to setup Gradle, and executing Gradle in a subsequent Step. + + # EXPERIMENTAL ACTION INPUTS # The following action properties allow fine-grained tweaking of the action caching behaviour. - # These properties are experimental and not (yet) designed for production use, and may change without notice in a subsequent release of `gradle-build-action`. + # These properties are experimental and not (yet) designed for production use, and may change without notice in a subsequent release of `setup-gradle`. # Use at your own risk! gradle-home-cache-strict-match: description: When 'true', the action will not attempt to restore the Gradle User Home entries from other Jobs. required: false default: false + # INTERNAL ACTION INPUTS + # These inputs should not be configured directly, and are only used to pass environmental information to the action workflow-job-context: description: Used to uniquely identify the current job invocation. Defaults to the matrix values for this job; this should not be overridden by users (INTERNAL). required: false @@ -145,21 +158,18 @@ inputs: outputs: build-scan-url: - description: Link to the Build Scan® generated by a Gradle build. Note that this output applies to a Step executing Gradle, not to the `gradle-build-action` Step itself. - value: ${{ steps.setup-gradle.outputs.build-scan-url }} + description: Link to the Build Scan® generated by a Gradle build. Note that this output applies to a Step executing Gradle, not to the `setup-gradle` Step itself. dependency-graph-file: - description: Path to the GitHub Dependency Graph snapshot file generated by a Gradle build. Note that this output applies to a Step executing Gradle, not to the `gradle-build-action` Step itself. - value: ${{ steps.setup-gradle.outputs.dependency-graph-file }} + description: Path to the GitHub Dependency Graph snapshot file generated by a Gradle build. Note that this output applies to a Step executing Gradle, not to the `setup-gradle` Step itself. gradle-version: description: Version of Gradle that was setup by the action - value: ${{ steps.setup-gradle.outputs.gradle-version }} runs: using: "composite" steps: - name: Setup Gradle id: setup-gradle - uses: gradle/actions/setup-gradle@v3.2.1 + uses: gradle/actions/setup-gradle@v3.3.0 with: gradle-version: ${{ inputs.gradle-version }} cache-disabled: ${{ inputs.cache-disabled }} @@ -178,11 +188,12 @@ runs: build-scan-publish: ${{ inputs.build-scan-publish }} build-scan-terms-of-use-url: ${{ inputs.build-scan-terms-of-use-url }} build-scan-terms-of-use-agree: ${{ inputs.build-scan-terms-of-use-agree }} + validate-wrappers: ${{ inputs.validate-wrappers }} build-scan-terms-of-service-url: ${{ inputs.build-scan-terms-of-service-url }} build-scan-terms-of-service-agree: ${{ inputs.build-scan-terms-of-service-agree }} + generate-job-summary: ${{ inputs.generate-job-summary }} arguments: ${{ inputs.arguments }} build-root-directory: ${{ inputs.build-root-directory }} - generate-job-summary: ${{ inputs.generate-job-summary }} gradle-home-cache-strict-match: ${{ inputs.gradle-home-cache-strict-match }} workflow-job-context: ${{ inputs.workflow-job-context }} github-token: ${{ inputs.github-token }} From 595fa85721f407447040bb9c9976254d88ad793d Mon Sep 17 00:00:00 2001 From: daz Date: Fri, 12 Apr 2024 14:15:29 -0600 Subject: [PATCH 04/13] Run quick-check on main --- .github/workflows/ci-full-check.yml | 4 ---- .github/workflows/ci-quick-check.yml | 3 --- 2 files changed, 7 deletions(-) diff --git a/.github/workflows/ci-full-check.yml b/.github/workflows/ci-full-check.yml index 9fe30de..ac4506b 100644 --- a/.github/workflows/ci-full-check.yml +++ b/.github/workflows/ci-full-check.yml @@ -2,10 +2,6 @@ name: CI-full-check on: workflow_dispatch: - push: - branches: - - main - - release/** jobs: action-inputs: diff --git a/.github/workflows/ci-quick-check.yml b/.github/workflows/ci-quick-check.yml index 6b35874..91de1f3 100644 --- a/.github/workflows/ci-quick-check.yml +++ b/.github/workflows/ci-quick-check.yml @@ -3,9 +3,6 @@ name: CI-quick-check on: workflow_dispatch: push: - branches-ignore: - - main - - release/** jobs: action-inputs: From 8baac4c8ef753599f92eeb509c246d09d6250fa6 Mon Sep 17 00:00:00 2001 From: daz Date: Fri, 12 Apr 2024 14:22:06 -0600 Subject: [PATCH 05/13] Map setup-gradle outputs back to gradle-build-action --- action.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/action.yml b/action.yml index f205068..8dd317b 100644 --- a/action.yml +++ b/action.yml @@ -159,10 +159,13 @@ inputs: outputs: build-scan-url: description: Link to the Build Scan® generated by a Gradle build. Note that this output applies to a Step executing Gradle, not to the `setup-gradle` Step itself. + value: ${{ steps.setup-gradle.outputs.build-scan-url }} dependency-graph-file: description: Path to the GitHub Dependency Graph snapshot file generated by a Gradle build. Note that this output applies to a Step executing Gradle, not to the `setup-gradle` Step itself. + value: ${{ steps.setup-gradle.outputs.dependency-graph-file }} gradle-version: description: Version of Gradle that was setup by the action + value: ${{ steps.setup-gradle.outputs.gradle-version }} runs: using: "composite" From e2097ccd7e8ed48671dc068ac4efa86d25745b39 Mon Sep 17 00:00:00 2001 From: daz Date: Thu, 18 Apr 2024 13:51:36 -0600 Subject: [PATCH 06/13] Bump to use v3.3.1 --- action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/action.yml b/action.yml index 8dd317b..534d8a6 100644 --- a/action.yml +++ b/action.yml @@ -172,7 +172,7 @@ runs: steps: - name: Setup Gradle id: setup-gradle - uses: gradle/actions/setup-gradle@v3.3.0 + uses: gradle/actions/setup-gradle@v3.3.1 with: gradle-version: ${{ inputs.gradle-version }} cache-disabled: ${{ inputs.cache-disabled }} From 4c39dd82cd5e1ec7c6fa0173bb41b4b6bb3b86ff Mon Sep 17 00:00:00 2001 From: Daz DeBoer Date: Thu, 25 Apr 2024 14:50:39 -0600 Subject: [PATCH 07/13] Bump to v3.3.2 --- action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/action.yml b/action.yml index 534d8a6..52704cd 100644 --- a/action.yml +++ b/action.yml @@ -172,7 +172,7 @@ runs: steps: - name: Setup Gradle id: setup-gradle - uses: gradle/actions/setup-gradle@v3.3.1 + uses: gradle/actions/setup-gradle@v3.3.2 with: gradle-version: ${{ inputs.gradle-version }} cache-disabled: ${{ inputs.cache-disabled }} From db35f2304698ac6ff98958322dfd3db0a5da9fdf Mon Sep 17 00:00:00 2001 From: daz Date: Thu, 13 Jun 2024 15:09:45 -0600 Subject: [PATCH 08/13] Bump to v3.4.0 --- action.yml | 73 +++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 67 insertions(+), 6 deletions(-) diff --git a/action.yml b/action.yml index 52704cd..fdcf6fb 100644 --- a/action.yml +++ b/action.yml @@ -23,7 +23,7 @@ inputs: cache-write-only: description: | - When 'true', entries will not be restored from the cache but will be saved at the end of the Job. + When 'true', entries will not be restored from the cache but will be saved at the end of the Job. Setting this to 'true' implies cache-read-only will be 'false'. required: false default: false @@ -35,7 +35,7 @@ inputs: cache-encryption-key: description: | - A base64 encoded AES key used to encrypt the configuration-cache data. The key is exported as 'GRADLE_ENCRYPTION_KEY' for later steps. + A base64 encoded AES key used to encrypt the configuration-cache data. The key is exported as 'GRADLE_ENCRYPTION_KEY' for later steps. A suitable key can be generated with `openssl rand -base64 16`. Configuration-cache data will not be saved/restored without an encryption key being provided. required: false @@ -70,7 +70,7 @@ inputs: # Dependency Graph configuration dependency-graph: description: | - Specifies if a GitHub dependency snapshot should be generated for each Gradle build, and if so, how. + Specifies if a GitHub dependency snapshot should be generated for each Gradle build, and if so, how. Valid values are 'disabled' (default), 'generate', 'generate-and-submit', 'generate-and-upload', 'download-and-submit' and 'clear'. required: false default: 'disabled' @@ -95,11 +95,59 @@ inputs: build-scan-terms-of-use-url: description: The URL to the Build Scan® terms of use. This input must be set to 'https://gradle.com/terms-of-service' or 'https://gradle.com/help/legal-terms-of-use'. required: false - + build-scan-terms-of-use-agree: description: Indicate that you agree to the Build Scan® terms of use. This input value must be "yes". required: false + develocity-access-key: + description: Develocity access key. Should be set to a secret containing the Develocity Access key. + required: false + + develocity-token-expiry: + description: The Develocity short-lived access tokens expiry in hours. Default is 2 hours. + required: false + + develocity-injection-enabled: + description: Enables Develocity injection. + required: false + + develocity-url: + description: The URL for the Develocity server. + required: false + + develocity-allow-untrusted-server: + description: Allow communication with an untrusted server; set to _true_ if your Develocity instance is using a self-signed. + required: false + + develocity-capture-file-fingerprints: + description: Enables capturing the paths and content hashes of each individual input file. + required: false + + develocity-enforce-url: + description: Enforce the configured Develocity URL over a URL configured in the project's build; set to _true_ to enforce publication of build scans to the configured Develocity URL. + required: false + + develocity-plugin-version: + description: The version of the Develocity Gradle plugin to apply. + required: false + + develocity-ccud-plugin-version: + description: The version of the Common Custom User Data Gradle plugin to apply, if any. + required: false + + gradle-plugin-repository-url: + description: The URL of the repository to use when resolving the Develocity and CCUD plugins; the Gradle Plugin Portal is used by default. + required: false + + gradle-plugin-repository-username: + description: The username for the repository URL to use when resolving the Develocity and CCUD. + required: false + + gradle-plugin-repository-password: + description: The password for the repository URL to use when resolving the Develocity and CCUD plugins; Consider using secrets to pass the value to this variable. + required: false + # Wrapper validation configuration validate-wrappers: description: | @@ -143,7 +191,7 @@ inputs: description: When 'true', the action will not attempt to restore the Gradle User Home entries from other Jobs. required: false default: false - + # INTERNAL ACTION INPUTS # These inputs should not be configured directly, and are only used to pass environmental information to the action workflow-job-context: @@ -172,7 +220,7 @@ runs: steps: - name: Setup Gradle id: setup-gradle - uses: gradle/actions/setup-gradle@v3.3.2 + uses: gradle/actions/setup-gradle@v3.4.0 with: gradle-version: ${{ inputs.gradle-version }} cache-disabled: ${{ inputs.cache-disabled }} @@ -200,6 +248,19 @@ runs: gradle-home-cache-strict-match: ${{ inputs.gradle-home-cache-strict-match }} workflow-job-context: ${{ inputs.workflow-job-context }} github-token: ${{ inputs.github-token }} + develocity-access-key: ${{ inputs.develocity-access-key }} + develocity-token-expiry: ${{ inputs.develocity-token-expiry }} + develocity-injection-enabled: ${{ inputs.develocity-injection-enabled }} + develocity-url: ${{ inputs.develocity-url }} + develocity-allow-untrusted-server: ${{ inputs.develocity-allow-untrusted-server }} + develocity-capture-file-fingerprints: ${{ inputs.develocity-capture-file-fingerprints }} + develocity-enforce-url: ${{ inputs.develocity-enforce-url }} + develocity-plugin-version: ${{ inputs.develocity-plugin-version }} + develocity-ccud-plugin-version: ${{ inputs.develocity-ccud-plugin-version }} + gradle-plugin-repository-url: ${{ inputs.gradle-plugin-repository-url }} + gradle-plugin-repository-username: ${{ inputs.gradle-plugin-repository-username }} + gradle-plugin-repository-password: ${{ inputs.gradle-plugin-repository-password }} + env: GRADLE_ACTION_ID: gradle/gradle-build-action From 04b20c065cf1ab708c96e64a8811018d0a1fbc88 Mon Sep 17 00:00:00 2001 From: Daz DeBoer Date: Fri, 14 Jun 2024 21:34:40 -0600 Subject: [PATCH 09/13] Bump to v3.4.1 --- action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/action.yml b/action.yml index fdcf6fb..f9025cf 100644 --- a/action.yml +++ b/action.yml @@ -220,7 +220,7 @@ runs: steps: - name: Setup Gradle id: setup-gradle - uses: gradle/actions/setup-gradle@v3.4.0 + uses: gradle/actions/setup-gradle@v3.4.1 with: gradle-version: ${{ inputs.gradle-version }} cache-disabled: ${{ inputs.cache-disabled }} From 66535aaf56f831b35e3a8481c9c99b665b84dd45 Mon Sep 17 00:00:00 2001 From: Inaki Villar Date: Mon, 17 Jun 2024 11:40:33 -0700 Subject: [PATCH 10/13] Bump to v3.4.2 --- action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/action.yml b/action.yml index f9025cf..6b4d640 100644 --- a/action.yml +++ b/action.yml @@ -220,7 +220,7 @@ runs: steps: - name: Setup Gradle id: setup-gradle - uses: gradle/actions/setup-gradle@v3.4.1 + uses: gradle/actions/setup-gradle@v3.4.2 with: gradle-version: ${{ inputs.gradle-version }} cache-disabled: ${{ inputs.cache-disabled }} From ac2d340dc04d9e1113182899e983b5400c17cda1 Mon Sep 17 00:00:00 2001 From: Daz DeBoer Date: Mon, 15 Jul 2024 13:27:57 -0600 Subject: [PATCH 11/13] Bump to v3.5.0 --- action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/action.yml b/action.yml index 6b4d640..ca67a1f 100644 --- a/action.yml +++ b/action.yml @@ -220,7 +220,7 @@ runs: steps: - name: Setup Gradle id: setup-gradle - uses: gradle/actions/setup-gradle@v3.4.2 + uses: gradle/actions/setup-gradle@v3.5.0 with: gradle-version: ${{ inputs.gradle-version }} cache-disabled: ${{ inputs.cache-disabled }} From b579b5c6ad1991fb78c6dd44269d9b26845ec1f4 Mon Sep 17 00:00:00 2001 From: Daz DeBoer Date: Wed, 7 Aug 2024 16:48:29 -0600 Subject: [PATCH 12/13] Update README.md --- README.md | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 9eb8b0b..fef3200 100644 --- a/README.md +++ b/README.md @@ -14,9 +14,9 @@ > > See the [setup-gradle documentation](https://github.com/gradle/actions/tree/main/setup-gradle) for up-to-date documentation for `gradle/actions/setup-gradle`. -# Execute Gradle builds in GitHub Actions workflows +# Setup Gradle for use in GitHub Actions workflows -This GitHub Action can be used to configure Gradle and optionally execute a Gradle build on any platform supported by GitHub Actions. +This GitHub Action can be used to configure Gradle on any platform supported by GitHub Actions. ## Example usage @@ -32,12 +32,9 @@ jobs: - name: Checkout sources uses: actions/checkout@v4 - name: Setup Gradle - uses: gradle/gradle-build-action@v3 + uses: gradle/actions/setup-gradle@v3 - name: Build with Gradle run: ./gradlew build ``` -As of `v3`, the `gradle/gradle-build-action` action delegates to `gradle/actions/setup-gradle` with the same version. -Configuration and usage of these actions is identical for releases with the same version number. - See the [full setup-gradle documentation](https://github.com/gradle/actions/tree/main/setup-gradle) for more advanced usage scenarios. From 093dfe9d598ec5a42246855d09b49dc76803c005 Mon Sep 17 00:00:00 2001 From: Daz DeBoer Date: Wed, 7 Aug 2024 16:50:35 -0600 Subject: [PATCH 13/13] Update action.yml to represent setup-gradle --- action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/action.yml b/action.yml index ca67a1f..1278f1b 100644 --- a/action.yml +++ b/action.yml @@ -1,4 +1,4 @@ -name: "Gradle Build Action" +name: setup-gradle description: 'Configures Gradle for GitHub actions, caching state and generating a dependency graph via Dependency Submission.' inputs: