diff --git a/lib/datasource/npm.js b/lib/datasource/npm.js index 609351de2e9b43c985632f11d3170fd6bf192ca0..402e39ca1e70af9dcdddb226a595ce6e7b3504a6 100644 --- a/lib/datasource/npm.js +++ b/lib/datasource/npm.js @@ -23,6 +23,7 @@ let map = new Map(); let memcache = {}; let npmrc = null; +let npmrcRaw; function resetMemCache() { logger.debug('resetMemCache()'); @@ -47,6 +48,10 @@ function maskToken(token) { function setNpmrc(input, exposeEnv = false) { if (input) { + if (input === npmrcRaw) { + return; + } + npmrcRaw = input; logger.debug('Setting npmrc'); npmrc = ini.parse(input); // massage _auth to _authToken diff --git a/test/datasource/npm.spec.js b/test/datasource/npm.spec.js index 58a271093bb6c9190ede11f944634ce920e38eef..30ff7f3156beffa2ba5579728075be2188c1ce0b 100644 --- a/test/datasource/npm.spec.js +++ b/test/datasource/npm.spec.js @@ -203,6 +203,7 @@ describe('api/npm', () => { expect(res).toMatchSnapshot(); }); it('resets npmrc', () => { + npm.setNpmrc('something=something'); npm.setNpmrc('something=something'); npm.setNpmrc(); });