diff --git a/lib/modules/manager/gradle-wrapper/util.spec.ts b/lib/modules/manager/gradle-wrapper/util.spec.ts index e5e3ba7bb2d93d5b8fcee8fe8cfd4b9c939682fa..c743eb8dd510b8f0d1024316c85a443263624a95 100644 --- a/lib/modules/manager/gradle-wrapper/util.spec.ts +++ b/lib/modules/manager/gradle-wrapper/util.spec.ts @@ -39,6 +39,12 @@ describe('modules/manager/gradle-wrapper/util', () => { GlobalConfig.set({ binarySource: 'docker' }); expect(getJavaConstraint('7.0.1')).toBe('^16.0.0'); }); + + it('return ^17.0.0 for docker gradle >= 7.3', () => { + GlobalConfig.set({ binarySource: 'docker' }); + expect(getJavaConstraint('7.3.0')).toBe('^17.0.0'); + expect(getJavaConstraint('8.0.1')).toBe('^17.0.0'); + }); }); describe('extractGradleVersion()', () => { diff --git a/lib/modules/manager/gradle-wrapper/utils.ts b/lib/modules/manager/gradle-wrapper/utils.ts index cbd7a0f9629120e01929b9b54ea4a9750dc3caad..473e958f3cf4cb857ed3a2afbfc900875289b844 100644 --- a/lib/modules/manager/gradle-wrapper/utils.ts +++ b/lib/modules/manager/gradle-wrapper/utils.ts @@ -48,6 +48,10 @@ export function getJavaConstraint( gradleVersion: string | null | undefined ): string | null { const major = gradleVersion ? gradleVersioning.getMajor(gradleVersion) : null; + const minor = gradleVersion ? gradleVersioning.getMinor(gradleVersion) : null; + if (major && (major > 7 || (major >= 7 && minor && minor >= 3))) { + return '^17.0.0'; + } if (major && major >= 7) { return '^16.0.0'; } diff --git a/lib/modules/manager/gradle/artifacts.spec.ts b/lib/modules/manager/gradle/artifacts.spec.ts index b3b0426da2b3d9dce00b6b257e53b7c7d9e722bf..8e0f07e19dba67e636ba386b9d50024b348c8cc2 100644 --- a/lib/modules/manager/gradle/artifacts.spec.ts +++ b/lib/modules/manager/gradle/artifacts.spec.ts @@ -83,7 +83,7 @@ describe('modules/manager/gradle/artifacts', () => { content = 'New gradle.lockfile'; } else if (fileName === 'gradle/wrapper/gradle-wrapper.properties') { content = - 'distributionUrl=https\\://services.gradle.org/distributions/gradle-7.4-bin.zip'; + 'distributionUrl=https\\://services.gradle.org/distributions/gradle-7.2-bin.zip'; } return Promise.resolve(content);