fix(core): always use environment variable for cache directory (#6746)

In 6c16ee0feead3f01c575af2b998fe614c207ac96 the environment variable was used
while reading from `nx.json`. But in `packages/workspace/src/tasks-runner/cache.ts`
the `cacheDirectory` is used without using `readCacheDirectoryProperty`. Now we
check the environment variable in `cacheDirectory`, so that the environment
variable is always used.

ISSUES CLOSED: #6629
This commit is contained in:
Shihab Uddin 2021-08-18 23:56:13 +02:00 committed by GitHub
parent 8297386d80
commit eaa0287238
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -2,10 +2,6 @@ import { join } from 'path';
import { readJsonFile } from './fileutils';
export function readCacheDirectoryProperty(root: string) {
const cacheDir = process.env.NX_CACHE_DIRECTORY;
if (cacheDir) {
return cacheDir;
}
try {
const nxJson = readJsonFile(join(root, 'nx.json'));
return nxJson.tasksRunnerOptions.default.options.cacheDirectory;
@ -15,6 +11,10 @@ export function readCacheDirectoryProperty(root: string) {
}
export function cacheDirectory(root: string, cacheDirectory: string) {
const cacheDirFromEnv = process.env.NX_CACHE_DIRECTORY;
if (cacheDirFromEnv) {
cacheDirectory = cacheDirFromEnv;
}
if (cacheDirectory) {
if (cacheDirectory.startsWith('./')) {
return join(root, cacheDirectory);