From 037b96ad3f03f409734a7b14d94d365e065d22a6 Mon Sep 17 00:00:00 2001 From: Jean Lauliac Date: Thu, 27 Apr 2017 11:12:01 +0100 Subject: [PATCH] jest-config: use UID for default cache folder --- packages/jest-config/src/defaults.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/jest-config/src/defaults.js b/packages/jest-config/src/defaults.js index 2b38275c529c..da81bf647cd9 100644 --- a/packages/jest-config/src/defaults.js +++ b/packages/jest-config/src/defaults.js @@ -23,7 +23,14 @@ module.exports = ({ automock: false, bail: false, browser: false, - cacheDirectory: path.join(os.tmpdir(), 'jest'), + cacheDirectory: (() => { + if (process.getuid == null) { + return path.join(os.tmpdir(), 'jest'); + } + // On some platforms tmpdir() is `/tmp`, causing conflicts between different users and + // permission issues. Adding an additional subdivision by UID can help. + return path.join(os.tmpdir(), 'jest', process.getuid().toString(36)); + })(), clearMocks: false, coveragePathIgnorePatterns: [NODE_MODULES_REGEXP], coverageReporters: ['json', 'text', 'lcov', 'clover'],