Skip to content

Commit a76faeb

Browse files
committed
Added gradle.properties file to the cache key
Part of project configuration may be in the `gradle.properties` file and changing it should invalidate cache See: https://docs.gradle.org/current/userguide/build_environment.html#sec:gradle_configuration_properties
1 parent ea15b3b commit a76faeb

File tree

5 files changed

+16
-5
lines changed

5 files changed

+16
-5
lines changed

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ Currently, the following distributions are supported:
113113

114114
### Caching packages dependencies
115115
The action has a built-in functionality for caching and restoring dependencies. It uses [actions/cache](https://github.com/actions/cache) under hood for caching dependencies but requires less configuration settings. Supported package managers are gradle, maven and sbt. The format of the used cache key is `setup-java-${{ platform }}-${{ packageManager }}-${{ fileHash }}`, where the hash is based on the following files:
116-
- gradle: `**/*.gradle*`, `**/gradle-wrapper.properties`, `buildSrc/**/Versions.kt`, `buildSrc/**/Dependencies.kt`, and `gradle/*.versions.toml`
116+
- gradle: `**/*.gradle*`, `**/gradle-wrapper.properties`, `buildSrc/**/Versions.kt`, `buildSrc/**/Dependencies.kt`, `gradle.properties` and `gradle/*.versions.toml`
117117
- maven: `**/pom.xml`
118118
- sbt: all sbt build definition files `**/*.sbt`, `**/project/build.properties`, `**/project/**.{scala,sbt}`
119119

__tests__/cache.test.ts

+9-1
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ describe('dependency cache', () => {
9898
await expect(restore('gradle')).rejects.toThrowError(
9999
`No file in ${projectRoot(
100100
workspace
101-
)} matched to [**/*.gradle*,**/gradle-wrapper.properties,buildSrc/**/Versions.kt,buildSrc/**/Dependencies.kt,gradle/*.versions.toml], make sure you have checked out the target repository`
101+
)} matched to [**/*.gradle*,**/gradle-wrapper.properties,buildSrc/**/Versions.kt,buildSrc/**/Dependencies.kt,gradle/*.versions.toml,gradle.properties], make sure you have checked out the target repository`
102102
);
103103
});
104104
it('downloads cache based on build.gradle', async () => {
@@ -121,6 +121,14 @@ describe('dependency cache', () => {
121121
createDirectory(join(workspace, 'gradle'));
122122
createFile(join(workspace, 'gradle', 'libs.versions.toml'));
123123

124+
await restore('gradle');
125+
expect(spyCacheRestore).toBeCalled();
126+
expect(spyWarning).not.toBeCalled();
127+
expect(spyInfo).toBeCalledWith('gradle cache is not found');
128+
});
129+
it('downloads cache based on gradle.properties', async () => {
130+
createFile(join(workspace, 'gradle.properties'));
131+
124132
await restore('gradle');
125133
expect(spyCacheRestore).toBeCalled();
126134
expect(spyWarning).not.toBeCalled();

dist/cleanup/index.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -68249,7 +68249,8 @@ const supportedPackageManager = [
6824968249
'**/gradle-wrapper.properties',
6825068250
'buildSrc/**/Versions.kt',
6825168251
'buildSrc/**/Dependencies.kt',
68252-
'gradle/*.versions.toml'
68252+
'gradle/*.versions.toml',
68253+
'gradle.properties'
6825368254
]
6825468255
},
6825568256
{

dist/setup/index.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -103452,7 +103452,8 @@ const supportedPackageManager = [
103452103452
'**/gradle-wrapper.properties',
103453103453
'buildSrc/**/Versions.kt',
103454103454
'buildSrc/**/Dependencies.kt',
103455-
'gradle/*.versions.toml'
103455+
'gradle/*.versions.toml',
103456+
'gradle.properties'
103456103457
]
103457103458
},
103458103459
{

src/cache.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ const supportedPackageManager: PackageManager[] = [
3636
'**/gradle-wrapper.properties',
3737
'buildSrc/**/Versions.kt',
3838
'buildSrc/**/Dependencies.kt',
39-
'gradle/*.versions.toml'
39+
'gradle/*.versions.toml',
40+
'gradle.properties'
4041
]
4142
},
4243
{

0 commit comments

Comments
 (0)