2016-03-22 3 views
3

Некоторое время назад у меня были проблемы с кешем npm на наших машинах сборки. Время от времени нам приходилось делать npm cache clean вручную, и это решало различные проблемы, которые мы все еще не уверены в том, что их вызвало. Поэтому через некоторое время мы включили npm cache clean во все наши скрипты сборки, с тех пор у нас не было таинственных проблем с npm i, однако теперь параллельные сборки явно влияют друг на друга.Отключить кеш npm

Для меня лучшее решение, похоже, полностью отключает механизм кэширования npm, но я не мог узнать, как это сделать.

ответ

3

Вы можете исправить проблему с параллельными сборками, создав новый каталог для одной серии команд npm и установите его cache в этот пустой каталог и затем удалите этот каталог впоследствии. Как:

export npm_config_cache=$(mktemp -d) 
npm ... 
... 
rm -rf $npm_config_cache 

Это устранило бы необходимость npm cache clean, как это было всегда начинается с пустым кэшем.

+0

И почему эта серия команд npm будет использовать кеш в этом новом месте, которое вы только что создали? Что я вижу здесь, вы создаете и удаляете каталог temp, но npm по-прежнему использует глобальный кеш, как обычно ... Что мне не хватает? –

+1

@ marc.genther См. Https://docs.npmjs.com/misc/config#environment-variables –