diff --git a/dist/save-cache/index.js b/dist/save-cache/index.js index 552ac75..767e9a1 100644 --- a/dist/save-cache/index.js +++ b/dist/save-cache/index.js @@ -90056,12 +90056,17 @@ async function saveCache() { if (inputs_1.pruneCache) { await pruneCache(); } - core.info(`Saving cache path: ${inputs_1.cacheLocalPath}`); - if (!fs.existsSync(inputs_1.cacheLocalPath) && !inputs_1.ignoreNothingToCache) { - throw new Error(`Cache path ${inputs_1.cacheLocalPath} does not exist on disk. This likely indicates that there are no dependencies to cache. Consider disabling the cache input if it is not needed.`); + let actualCachePath = inputs_1.cacheLocalPath; + if (process.env.UV_CACHE_DIR && process.env.UV_CACHE_DIR !== inputs_1.cacheLocalPath) { + core.warning(`The environment variable UV_CACHE_DIR has been changed to "${process.env.UV_CACHE_DIR}", by an action or step running after astral-sh/setup-uv. This can lead to unexpected behavior. If you expected this to happen set the cache-local-path input to "${process.env.UV_CACHE_DIR}" instead of "${inputs_1.cacheLocalPath}".`); + actualCachePath = process.env.UV_CACHE_DIR; + } + core.info(`Saving cache path: ${actualCachePath}`); + if (!fs.existsSync(actualCachePath) && !inputs_1.ignoreNothingToCache) { + throw new Error(`Cache path ${actualCachePath} does not exist on disk. This likely indicates that there are no dependencies to cache. Consider disabling the cache input if it is not needed.`); } try { - await cache.saveCache([inputs_1.cacheLocalPath], cacheKey); + await cache.saveCache([actualCachePath], cacheKey); core.info(`cache saved with the key: ${cacheKey}`); } catch (e) { diff --git a/src/save-cache.ts b/src/save-cache.ts index caf0633..e79d657 100644 --- a/src/save-cache.ts +++ b/src/save-cache.ts @@ -52,14 +52,22 @@ async function saveCache(): Promise { await pruneCache(); } - core.info(`Saving cache path: ${cacheLocalPath}`); - if (!fs.existsSync(cacheLocalPath) && !ignoreNothingToCache) { + let actualCachePath = cacheLocalPath; + if (process.env.UV_CACHE_DIR && process.env.UV_CACHE_DIR !== cacheLocalPath) { + core.warning( + `The environment variable UV_CACHE_DIR has been changed to "${process.env.UV_CACHE_DIR}", by an action or step running after astral-sh/setup-uv. This can lead to unexpected behavior. If you expected this to happen set the cache-local-path input to "${process.env.UV_CACHE_DIR}" instead of "${cacheLocalPath}".`, + ); + actualCachePath = process.env.UV_CACHE_DIR; + } + + core.info(`Saving cache path: ${actualCachePath}`); + if (!fs.existsSync(actualCachePath) && !ignoreNothingToCache) { throw new Error( - `Cache path ${cacheLocalPath} does not exist on disk. This likely indicates that there are no dependencies to cache. Consider disabling the cache input if it is not needed.`, + `Cache path ${actualCachePath} does not exist on disk. This likely indicates that there are no dependencies to cache. Consider disabling the cache input if it is not needed.`, ); } try { - await cache.saveCache([cacheLocalPath], cacheKey); + await cache.saveCache([actualCachePath], cacheKey); core.info(`cache saved with the key: ${cacheKey}`); } catch (e) { if (