From 896b9fa30994e16abfabdffea39f9bbffa8ade46 Mon Sep 17 00:00:00 2001 From: Jerome Prinet Date: Tue, 5 Aug 2025 10:32:22 +0200 Subject: [PATCH] Run tests on Gradle release candidate and current with JDK 17 as required since Gradle 9 --- .github/actions/init-integ-test/action.yml | 2 +- .github/workflows/ci-init-script-check.yml | 2 +- .../integ-test-build-scan-publish.yml | 15 ++++- .../workflows/integ-test-caching-config.yml | 1 + .../integ-test-dependency-submission.yml | 20 +++++- .../integ-test-detect-toolchains.yml | 14 ++-- .../integ-test-inject-develocity.yml | 65 ++++++++++++++++--- .../integ-test-provision-gradle-versions.yml | 43 ++++++------ 8 files changed, 116 insertions(+), 46 deletions(-) diff --git a/.github/actions/init-integ-test/action.yml b/.github/actions/init-integ-test/action.yml index 4beb7cb5..28e3bb51 100644 --- a/.github/actions/init-integ-test/action.yml +++ b/.github/actions/init-integ-test/action.yml @@ -4,7 +4,7 @@ inputs: java-version: description: 'Java version to use' required: false - default: '11' + default: '17' runs: using: "composite" diff --git a/.github/workflows/ci-init-script-check.yml b/.github/workflows/ci-init-script-check.yml index e4db1dca..9164c35e 100644 --- a/.github/workflows/ci-init-script-check.yml +++ b/.github/workflows/ci-init-script-check.yml @@ -27,7 +27,7 @@ jobs: uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1 with: distribution: temurin - java-version: 11 + java-version: 17 - name: Setup Gradle # Use a released version to avoid breakages uses: gradle/actions/setup-gradle@ac638b010cf58a27ee6c972d7336334ccaf61c96 # v4.4.1 diff --git a/.github/workflows/integ-test-build-scan-publish.yml b/.github/workflows/integ-test-build-scan-publish.yml index f2ad6166..703ac144 100644 --- a/.github/workflows/integ-test-build-scan-publish.yml +++ b/.github/workflows/integ-test-build-scan-publish.yml @@ -25,14 +25,27 @@ jobs: strategy: fail-fast: false matrix: - gradle: ['current', '7.6.2', '6.9.4', '5.6.4'] + gradle: ['current', '8.14.3', '7.6.2', '6.9.4', '5.6.4'] os: ${{fromJSON(inputs.runner-os)}} + include: + - java-version: 17 + - gradle: '8.14.3' + java-version: 11 + - gradle: '7.6.2' + java-version: 11 + - gradle: '6.9.4' + java-version: 11 + - gradle: '5.6.4' + java-version: 11 + runs-on: ${{ matrix.os }} steps: - name: Checkout sources uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Initialize integ-test uses: ./.github/actions/init-integ-test + with: + java-version: ${{ matrix.java-version }} - name: Setup Gradle id: setup-gradle diff --git a/.github/workflows/integ-test-caching-config.yml b/.github/workflows/integ-test-caching-config.yml index 22a52f53..1f5fbedd 100644 --- a/.github/workflows/integ-test-caching-config.yml +++ b/.github/workflows/integ-test-caching-config.yml @@ -34,6 +34,7 @@ jobs: - name: Initialize integ-test uses: ./.github/actions/init-integ-test + - name: Setup Gradle uses: ./setup-gradle with: diff --git a/.github/workflows/integ-test-dependency-submission.yml b/.github/workflows/integ-test-dependency-submission.yml index 3f26ddb7..2bc3703d 100644 --- a/.github/workflows/integ-test-dependency-submission.yml +++ b/.github/workflows/integ-test-dependency-submission.yml @@ -231,11 +231,26 @@ jobs: fail-fast: false matrix: os: ${{fromJSON(inputs.runner-os)}} - gradle: ['8.0.2', '7.6.4', '7.1.1', '6.9.4', '6.0.1', '5.6.4', '5.2.1'] + gradle: ['9.0.0', '8.14.3', '8.0.2', '7.6.4', '7.1.1', '6.9.4', '6.0.1', '5.6.4', '5.2.1'] include: + - java-version: 17 + - gradle: '8.14.3' + java-version: 11 + - gradle: '8.0.2' + java-version: 11 + - gradle: '7.6.4' + java-version: 11 + - gradle: '7.1.1' + java-version: 11 + - gradle: '6.9.4' + java-version: 11 + - gradle: '6.0.1' + java-version: 11 - gradle: '5.6.4' + java-version: 11 build-root-suffix: -gradle-5 - gradle: '5.2.1' + java-version: 11 build-root-suffix: -gradle-5 runs-on: ${{ matrix.os }} steps: @@ -243,7 +258,8 @@ jobs: uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Initialize integ-test uses: ./.github/actions/init-integ-test - + with: + java-version: ${{ matrix.java-version }} - name: Generate and submit dependencies uses: ./dependency-submission with: diff --git a/.github/workflows/integ-test-detect-toolchains.yml b/.github/workflows/integ-test-detect-toolchains.yml index 02935359..6101e77a 100644 --- a/.github/workflows/integ-test-detect-toolchains.yml +++ b/.github/workflows/integ-test-detect-toolchains.yml @@ -46,7 +46,7 @@ jobs: shell: bash working-directory: .github/workflow-samples/groovy-dsl run: | - grep -q 'Eclipse Temurin JDK 1.8' output.txt || (echo "::error::Did not detect preinstalled JDK 1.8" && exit 1) + grep -q 'Eclipse Temurin JDK 8' output.txt || (echo "::error::Did not detect preinstalled JDK 8" && exit 1) grep -q 'Eclipse Temurin JDK 11' output.txt || (echo "::error::Did not detect preinstalled JDK 11" && exit 1) grep -q 'Eclipse Temurin JDK 17' output.txt || (echo "::error::Did not detect preinstalled JDK 17" && exit 1) grep -q 'Eclipse Temurin JDK 21' output.txt || (echo "::error::Did not detect preinstalled JDK 21" && exit 1) @@ -64,16 +64,16 @@ jobs: - name: Initialize integ-test uses: ./.github/actions/init-integ-test - - name: Setup Java 20 - uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1 - with: - distribution: 'temurin' - java-version: 20 - name: Setup Java 16 uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1 with: distribution: 'temurin' java-version: 16 + - name: Setup Java 20 + uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1 + with: + distribution: 'temurin' + java-version: 20 - name: Setup Gradle uses: ./setup-gradle - name: List detected toolchains @@ -92,7 +92,7 @@ jobs: shell: bash working-directory: .github/workflow-samples/groovy-dsl run: | - grep -q 'Eclipse Temurin JDK 1.8' output.txt || (echo "::error::Did not detect preinstalled JDK 1.8" && exit 1) + grep -q 'Eclipse Temurin JDK 8' output.txt || (echo "::error::Did not detect preinstalled JDK 8" && exit 1) grep -q 'Eclipse Temurin JDK 11' output.txt || (echo "::error::Did not detect preinstalled JDK 11" && exit 1) grep -q 'Eclipse Temurin JDK 17' output.txt || (echo "::error::Did not detect preinstalled JDK 17" && exit 1) grep -q 'Eclipse Temurin JDK 21' output.txt || (echo "::error::Did not detect preinstalled JDK 21" && exit 1) diff --git a/.github/workflows/integ-test-inject-develocity.yml b/.github/workflows/integ-test-inject-develocity.yml index c26214db..37a780aa 100644 --- a/.github/workflows/integ-test-inject-develocity.yml +++ b/.github/workflows/integ-test-inject-develocity.yml @@ -28,14 +28,23 @@ jobs: strategy: fail-fast: false matrix: - gradle: ['current', '7.6.2', '6.9.4', '5.6.4'] + gradle: ['current', '8.14.3', '7.6.2', '6.9.4', '5.6.4'] os: ${{fromJSON(inputs.runner-os)}} plugin-version: ['3.16.2', '4.1'] include: - - plugin-version: '3.16.2' - accessKeyEnv: GRADLE_ENTERPRISE_ACCESS_KEY - - plugin-version: '4.1' - accessKeyEnv: DEVELOCITY_ACCESS_KEY + - java-version: 17 + - gradle: '8.14.3' + java-version: 11 + - gradle: '7.6.2' + java-version: 11 + - gradle: '6.9.4' + java-version: 11 + - gradle: '5.6.4' + java-version: 11 + - plugin-version: '3.16.2' + accessKeyEnv: GRADLE_ENTERPRISE_ACCESS_KEY + - plugin-version: '4.1' + accessKeyEnv: DEVELOCITY_ACCESS_KEY runs-on: ${{ matrix.os }} env: DEVELOCITY_INJECTION_ENABLED: true @@ -49,7 +58,8 @@ jobs: uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Initialize integ-test uses: ./.github/actions/init-integ-test - + with: + java-version: ${{ matrix.java-version }} - name: Setup Gradle id: setup-gradle uses: ./setup-gradle @@ -80,15 +90,27 @@ jobs: strategy: fail-fast: false matrix: - gradle: ['current', '7.6.2', '6.9.4', '5.6.4'] + gradle: ['current', '8.14.3', '7.6.2', '6.9.4', '5.6.4'] os: ${{fromJSON(inputs.runner-os)}} plugin-version: ['3.16.2', '4.1'] + include: + - java-version: 17 + - gradle: '8.14.3' + java-version: 11 + - gradle: '7.6.2' + java-version: 11 + - gradle: '6.9.4' + java-version: 11 + - gradle: '5.6.4' + java-version: 11 runs-on: ${{ matrix.os }} steps: - name: Checkout sources uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Initialize integ-test uses: ./.github/actions/init-integ-test + with: + java-version: ${{ matrix.java-version }} - name: Setup Gradle id: setup-gradle uses: ./setup-gradle @@ -124,16 +146,27 @@ jobs: strategy: fail-fast: false matrix: - gradle: ['current', '7.6.2', '6.9.4', '5.6.4'] + gradle: ['current', '8.14.3', '7.6.2', '6.9.4', '5.6.4'] os: ${{fromJSON(inputs.runner-os)}} plugin-version: [ '3.16.2', '4.1' ] + include: + - java-version: 17 + - gradle: '8.14.3' + java-version: 11 + - gradle: '7.6.2' + java-version: 11 + - gradle: '6.9.4' + java-version: 11 + - gradle: '5.6.4' + java-version: 11 runs-on: ubuntu-latest steps: - name: Checkout sources uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Initialize integ-test uses: ./.github/actions/init-integ-test - + with: + java-version: ${{ matrix.java-version }} - name: Setup Gradle id: setup-gradle uses: ./setup-gradle @@ -155,15 +188,27 @@ jobs: strategy: fail-fast: false matrix: - gradle: ['current', '7.6.2', '6.9.4', '5.6.4'] + gradle: ['current', '8.14.3', '7.6.2', '6.9.4', '5.6.4'] os: ${{fromJSON(inputs.runner-os)}} plugin-version: [ '3.16.2', '4.1' ] + include: + - java-version: 17 + - gradle: '8.14.3' + java-version: 11 + - gradle: '7.6.2' + java-version: 11 + - gradle: '6.9.4' + java-version: 11 + - gradle: '5.6.4' + java-version: 11 runs-on: ${{ matrix.os }} steps: - name: Checkout sources uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Initialize integ-test uses: ./.github/actions/init-integ-test + with: + java-version: ${{ matrix.java-version }} - name: Setup Gradle id: setup-gradle uses: ./setup-gradle diff --git a/.github/workflows/integ-test-provision-gradle-versions.yml b/.github/workflows/integ-test-provision-gradle-versions.yml index 11272847..6d940499 100644 --- a/.github/workflows/integ-test-provision-gradle-versions.yml +++ b/.github/workflows/integ-test-provision-gradle-versions.yml @@ -36,6 +36,8 @@ jobs: uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Initialize integ-test uses: ./.github/actions/init-integ-test + with: + java-version: '11' - name: Setup Gradle with v6.9 uses: ./setup-gradle @@ -52,6 +54,19 @@ jobs: - name: Test uses Gradle v7.1.1 working-directory: .github/workflow-samples/no-wrapper run: gradle help "-DgradleVersionCheck=7.1.1" + # Configure JDK 17 for Gradle 9 and later + - name: Setup Java + uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1 + with: + distribution: temurin + java-version: 17 + - name: Setup Gradle with release-candidate + uses: ./setup-gradle + with: + gradle-version: release-candidate + - name: Test use release-candidate + working-directory: .github/workflow-samples/no-wrapper + run: gradle help - name: Setup Gradle with current id: gradle-current uses: ./setup-gradle @@ -61,42 +76,22 @@ jobs: working-directory: .github/workflow-samples/no-wrapper run: gradle help - name: Check current version output parameter - if: ${{ !startsWith(steps.gradle-current.outputs.gradle-version , '8.') }} + if: ${{ !startsWith(steps.gradle-current.outputs.gradle-version , '9.') }} uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 with: script: | core.setFailed('Gradle version parameter not set correctly: value was "${{ steps.gradle-current.outputs.gradle-version }}"') - provision-gradle-with-jdk-17: - strategy: - max-parallel: 1 - fail-fast: false - matrix: - os: ${{fromJSON(inputs.runner-os)}} - runs-on: ${{ matrix.os }} - steps: - - name: Checkout sources - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - name: Initialize integ-test - uses: ./.github/actions/init-integ-test - with: - java-version: '17' - - name: Setup Gradle with release-candidate - uses: ./setup-gradle - with: - gradle-version: release-candidate - - name: Test use release-candidate - working-directory: .github/workflow-samples/no-wrapper - run: gradle help - provision-gradle-version: strategy: fail-fast: false matrix: - gradle: ['8.14.2', '8.12', '8.12-rc-1', '8.9', '8.1', '7.6.4', '6.9.4', '5.6.4', '4.10.3', '3.5.1'] + gradle: ['9.0.0', '8.14.2', '8.12', '8.12-rc-1', '8.9', '8.1', '7.6.4', '6.9.4', '5.6.4', '4.10.3', '3.5.1'] os: ${{fromJSON(inputs.runner-os)}} include: - java-version: 11 + - gradle: '9.0.0' + java-version: 17 - gradle: '5.6.4' build-root-suffix: -gradle-5 - gradle: '4.10.3'