Имеет ли zc.buildout намного больше, чем pip при работе с пакетами / яйцами? - PullRequest
3 голосов
/ 13 июля 2011

Мы все команда разработчиков, работающая над сайтом Django. Недавно мы начали использовать zc.buildout внутри virtualenv. Я вижу, как virtualenv помогает вам, создавая изолированную среду. После создания песочницы можно просто использовать pip для установки необходимых пакетов / яиц. Я читал, что pip может загрузить все яйца из файла требований. Это заставило меня усомниться в преимуществах и дополнительной функциональности zc.buildout. zc.buildout загружает яйца, которые вы упомянули в файле buildout.cfg, но, как я уже писал, вы уже можете сделать это, используя pip и файл требований. zc.buildout делает что-то еще, что мне не хватает? Я уже могу сделать всю свою автоматизацию, используя Fabric.

1 Ответ

6 голосов
/ 13 июля 2011

Buildout делает гораздо больше, чем пипс; каждая часть представляет собой отдельный рецепт, который может запускать произвольный код Python для выполнения ваших задач. В сочетании с зависимостями между частями и обнаружением обновлений zc.buildout более сопоставим, чем pip.

Например, используя рецепт zc.recipe.cmmi, вы можете загружать и компилировать произвольные пакеты «configure; make; make install». Существуют рецепты для создания файлов из шаблонов, или создания символических ссылок, или для установки определенных пакетов программного обеспечения, и настройки их с настройками, контролируемыми компоновкой, за один шаг.

Установка яиц в соответствии с зависимостями является лишь одним из приемов, которые поддерживает zc.buildout.

...