У меня есть веб-приложение Django, которое устанавливает некоторые требования через Pip из файла requirements.txt.Ускоренная установка pip из git URI
Первоначально я написал свои сценарии развертывания для запуска pip install -r requirements.txt
каждый раз, когда я развернул его, при том, что я изменил файл requirements.txt в коммит, который я развертывал. Это не слишком сильно повлияло на производительность (с точки зрения времени, затрачиваемого на развертывание), поскольку все пакеты были на PyPI, а Pip делает какое-то интеллектуальное кэширование и не будет загружать пакеты, которые я уже имею каждый раз.
В последнее время я перешел на использование некоторых пакетов, которые еще не находятся на PyPI - только на Github. Я могу установить их, добавив такие строки следующего моей requirements.txt:
-e git+git://github.com/BowdoinOrient/django-storages-py3.git#egg=django-storages-py3
-e git+git://github.com/BowdoinOrient/topia.termextract.git#egg=topia.termextract
, но это довольно медленно - Пип, кажется, чтобы проверить GIT репозиторий каждый раз, или, по крайней мере, сделать какое-то сетевая активность, независимо от того, было ли последнее обновление Github обновлено.
Я думал, что я мог бы быть в состоянии держать Пип делать это, указав точный совершает я хочу установить, например, так:
-e git+git://github.com/BowdoinOrient/[email protected]#egg=django-storages-py3
-e git+git://github.com/BowdoinOrient/[email protected]#egg=topia.termextract
но Пип всегда будет замедляться на этих линиях и проверить Github для какой-то дополнительной информации, даже если у меня уже установлены эти модули на этих коммитах.
Есть ли способ ускорить работу над этими шагами? Или что-то другое, кроме Пипа, которое быстрее, чем я должен использовать? Я посмотрел на Curdling, но я не думаю, что это то, что мне нужно.
Спасибо!
Спасибо! Я не знал, что имя яйца было значительным. Меняя его так, чтобы оно соответствовало имени папки в каталоге пакетов сайтов, каждый раз останавливался при загрузке. –