Fix check for pre-existing Gradle User Home

This commit is contained in:
Daz DeBoer 2022-01-17 14:06:56 -07:00
parent 50ca2bca83
commit 7dee0f45c2
No known key found for this signature in database
GPG key ID: DD6B9F0B06683D5D
2 changed files with 13 additions and 4 deletions

View file

@ -100,9 +100,14 @@ export class GradleStateCache {
}
cacheOutputExists(): boolean {
// Need to check for 'caches' directory to avoid incorrect detection on MacOS agents
const paths = this.getCachePath()
return paths.some(x => fs.existsSync(x))
for (const p of paths) {
if (fs.existsSync(p)) {
cacheDebug(`Cache output exists at ${p}`)
return true
}
}
return false
}
/**

View file

@ -15,20 +15,24 @@ export async function restore(gradleUserHome: string): Promise<void> {
}
core.exportVariable(CACHE_RESTORED_VAR, true)
// Initialize the Gradle User Home even when caching is disabled.
const gradleStateCache = new GradleStateCache(gradleUserHome)
gradleStateCache.init()
if (isCacheDisabled()) {
core.info('Cache is disabled: will not restore state from previous builds.')
// Initialize the Gradle User Home even when caching is disabled.
gradleStateCache.init()
return
}
if (gradleStateCache.cacheOutputExists()) {
core.info('Gradle User Home already exists: will not restore from cache.')
// Initialize pre-existing Gradle User Home.
gradleStateCache.init()
return
}
gradleStateCache.init()
await core.group('Restore Gradle state from cache', async () => {
core.saveState(GRADLE_USER_HOME, gradleUserHome)