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

Как вы размещаете свой собственный хранилище яиц?

Скажите, что вы работаете в команде, которая поддерживает множество внутренних библиотек python (яйца), и по какой-либо причине загрузка их в pypi не является вариантом. Как вы могли размещать библиотеки (яйца), чтобы easy_install все еще мог работать для членов вашей команды?

В принципе, было бы здорово, если бы это сработало....

(someproj)[email protected]:~$ easy_install myproprietary.lib-dev
user: uberdev 
password:...
fetching......
Searching for myproprietary.lib-dev
Reading http://dev.mycompany.corp/myproprietary.lib-dev
Reading http://dev.mycompany.corp
Reading http://dev.mycompany.corp/dist
Best match: myproprietary.lib-dev
Downloading http://dev.mycompany.corp/dist/myproprietary.lib-dev

Я полагаю, там есть какие-то серверы, которые могут быть установлены, но я был бы признателен за некоторые рекомендации экспертов по этому вопросу.

Спасибо

4b9b3361

Ответ 1

Разверните все свои яйца в каталог всех разработчиков. может достигать (например, на веб-сервере).

Чтобы установить яйца из этого каталога, введите:

$ easy_install -H None -f http://server/vdir TheEggToInstall

или.

$ easy_install -H None -f /path/to/directory TheEggToInstall

-H None означает, что вы не можете загружать яйца с любого хоста (кроме имени, указанного в -f).

Каталог может быть доступен по http или может быть каталогом, который вы монтируете (NFS, общие папки Windows и т.д.). Возможно, работает FTP?

В документации easy_install содержится информация об этом.

Ответ 2

Если ваша команда распределена - и на говорящих терминах - тогда простой репозиторий источника subversion лучше, чем какой-либо другой сервер.

Просто создайте проекты и получите все багаж. Когда все изменится, скажите им обновить.

Если ваша команда находится в совместном размещении - и, говоря языком, то общий диск с "официальными" библиотеками также хорошо работает. Просто установите его и включите в свой PYTHONPATH.

Если вам нужны локализованные копии, укажите официальный источник в подрывной деятельности (или общий диск) с хорошим setup.py файлом. Они просто записывают CD в каталог и запускают python setup.py install, и все остальное происходит для них. Это немного проще, чем easy_install, потому что setup.py уже является частью дистрибутива Python.

Яйца предназначены для людей, которые не говорят на словах.

Члены вашей команды, как правило, говорят на языке и не нуждаются в дополнительной сложности яиц. Основной setup.py должен быть достаточным.

Ответ 3

Я использую ClueReleaseManager

ClueReleaseManager - это реализация сервера сервера PyPi как предоставленный http://pypi.python.org. Он использует SQLAlchemy (поверх sqlite по умолчанию) для хранения всех метаданных проекта и файловой системы для хранения файлов проекта.

Ответ 4

Прежде всего: если пакеты общих пакетов должны быть доступны публично, а не загрузка пакетов в PyPI, как правило, плохая идея, так как easy_installing пакет, который зависит от вашего пакета, означает, что ваш сервер-яйца должен быть запущен и запущен, а также PyPI. Для каждого задействованного сервера вы получаете больше одноточечных сбоев.

Но если это частные пакеты, которые даже не перечислены в PyPI, или пакеты полезны только как часть большой системы, например Plone, это другое дело. Затем вы хотите, чтобы easy___install и buildout и т.д. Искали яйца на вашем сервере. Делать это довольно сложно. Вы просто помещаете каталог яиц на веб-сервер и указываете на этот каталог с параметром -f на easy_install.

Вот пример такого репозитория: http://dist.plone.org/release/3.3.1/