Skip to content

Commit a7ea957

Browse files
committed
refactor: minor changes follows actions#1348
- Only enable package cache when the cache feature is availiable - We don't read "package.json" if previous version "cache" field is used
1 parent cd2651c commit a7ea957

File tree

1 file changed

+19
-12
lines changed

1 file changed

+19
-12
lines changed

src/main.ts

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -67,19 +67,26 @@ export async function run() {
6767
auth.configAuthentication(registryUrl, alwaysAuth);
6868
}
6969

70-
const resolvedPackageManager = getNameFromPackageManagerField();
7170
const cacheDependencyPath = core.getInput('cache-dependency-path');
72-
if (cache && isCacheFeatureAvailable()) {
73-
core.saveState(State.CachePackageManager, cache);
74-
await restoreCache(cache, cacheDependencyPath);
75-
} else if (resolvedPackageManager && packagemanagercache) {
76-
core.info(
77-
"Detected package manager from package.json's packageManager field: " +
78-
resolvedPackageManager +
79-
'. Auto caching has been enabled for it. If you want to disable it, set package-manager-cache input to false'
80-
);
81-
core.saveState(State.CachePackageManager, resolvedPackageManager);
82-
await restoreCache(resolvedPackageManager, cacheDependencyPath);
71+
if (isCacheFeatureAvailable()) {
72+
// we only determine the package manager type if we can cache in the first place
73+
if (cache) {
74+
// in previous version of setup-node, user can explictly specify what package manager they are using, we prefer that
75+
core.saveState(State.CachePackageManager, cache);
76+
await restoreCache(cache, cacheDependencyPath);
77+
} else if (packagemanagercache) {
78+
// only if user hasn't specify the "cache" (introduced in the previous version) we read the "package-manager-cache" field
79+
const resolvedPackageManager = getNameFromPackageManagerField(); // only then we look for "package.json" for package manager
80+
if (resolvedPackageManager) {
81+
core.info(
82+
"Detected package manager from package.json's packageManager field: " +
83+
resolvedPackageManager +
84+
'. Auto caching has been enabled for it. If you want to disable it, set package-manager-cache input to false'
85+
);
86+
core.saveState(State.CachePackageManager, resolvedPackageManager);
87+
await restoreCache(resolvedPackageManager, cacheDependencyPath);
88+
}
89+
}
8390
}
8491

8592
const matchersPath = path.join(__dirname, '../..', '.github');

0 commit comments

Comments
 (0)