Подтвердить что ты не робот

Как изменить папку кэша по умолчанию для кэширования?

В * nix, bower использует папку ~/.bower для своего кеша (пакеты и т.д.).
Я хотел бы изменить это в другом месте.

Документ bower spec показывает, что я настраиваю ключ storage в своем .bowerrc.

Я создал один в моей папке проекта так:

{
  "storage": {
     "cache": "~/blah/cached",
     "git": "~/blah/git_templates"
  }
}

При запуске bower install - i убедитесь, что он по-прежнему пытается сохранить в ~/.bower.

Может ли кто-нибудь сказать мне, что я делаю неправильно здесь? И/или если есть другой способ изменить местоположение?

4b9b3361

Ответ 1

У меня была та же проблема, после некоторых попыток по спецификации я отказался...

Итак, я просмотрел историю bower в github и нашел:

  • До v0.10.0, bower использовал config.cache (lib/core/ResolveCache.js) для своего местоположения кэша
  • После этого satazor переписал базовое ядро, теперь используя config.storage.cache в начале, я ставлю spec doc был написан в это время. Из спецификации:

хранилище [объект]

Где хранить постоянные данные, такие как кеш, необходимые для бесед. По умолчанию для путей, которые > устанавливают ОС/платформу. Допустимыми являются cache, registry, links, completion.

  • Однако после this commit satazor теперь использует config.storage.packages вместо конфигурации. storage.cache

  • После этого в релизе v1.0.0 config всегда устанавливается в config.storage.packages, , но спецификация не отразила это изменение с тех пор

Решение

  • Экспортировать переменную окружения bower_storage__packages
  • Используйте .bowerrc, например:

    {
      "storage":{
          "packages":"/path/to/cache"
      }
    }
    

P.S.: Я думаю, что ссылка на спецификацию в Документах Google не является хорошей идеей, может быть, github был бы более разумным выбором (поскольку мы можем выдавать запросы на тягу).