From 150dfa8a5d00c7d2ddee1632a21908f7339a4673 Mon Sep 17 00:00:00 2001 From: Rhys Arkins <rhys@arkins.net> Date: Mon, 24 Sep 2018 13:13:41 +0200 Subject: [PATCH] refactor(composer): use cache dir --- lib/manager/composer/lock-file.js | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/lib/manager/composer/lock-file.js b/lib/manager/composer/lock-file.js index 2946160ac8..bc9bc77f1f 100644 --- a/lib/manager/composer/lock-file.js +++ b/lib/manager/composer/lock-file.js @@ -1,6 +1,7 @@ const { exec } = require('child-process-promise'); const fs = require('fs-extra'); const upath = require('upath'); +const os = require('os'); const hostRules = require('../../util/host-rules'); @@ -15,6 +16,10 @@ async function getLockFile( config ) { logger.debug(`composer.getLockFile(${packageFileName})`); + process.env.COMPOSER_CACHE_DIR = + process.env.COMPOSER_CACHE_DIR || + upath.join(os.tmpdir(), '/renovate/cache/composer'); + await fs.ensureDir(process.env.COMPOSER_CACHE_DIR); const lockFileName = packageFileName.replace(/\.json$/, '.lock'); const existingLockFileContent = await platform.getFile(lockFileName); if (!existingLockFileContent) { @@ -50,7 +55,14 @@ async function getLockFile( const localAuthFileName = upath.join(cwd, 'auth.json'); await fs.outputFile(localAuthFileName, JSON.stringify(authJson)); } - const env = { HOME: process.env.HOME, PATH: process.env.PATH }; + const env = + config.global && config.global.exposeEnv + ? process.env + : { + HOME: process.env.HOME, + PATH: process.env.PATH, + COMPOSER_CACHE_DIR: process.env.COMPOSER_CACHE_DIR, + }; const startTime = process.hrtime(); const cmd = ('composer update ' + updatedDeps.join(' ')).trim() + -- GitLab