Я пользуюсь локальным pypi server. Я могу установить пакеты с этого сервера, указав его с опцией -i
команды pip
или установив переменную среды PIP_INDEX_URL
. Когда я устанавливаю пакет с предварительными условиями, setup.py
исторически чествовал переменную среды PIP_INDEX_URL
, вытягивая дополнительные пакеты с моего локального сервера.setup.py not honoring PIP_INDEX_URL
Однако на нескольких системах, которые были недавно установлены, он ведет себя по-другому. Запуск, например, python setup.py develop
завершается с ошибкой, поскольку он пытается установить пакеты предварительных условий с pypi.python.org.
Я обновил все соответствующие пакеты Python (python
, distribute
, virtualenv
, pip
и т.д ...) на всех системах, я проверяю и продолжать видеть это несоответствие. В моей «оригинальной» системе setup.py
загружает предварительные требования с сервера pypi, указанного в моей переменной PIP_INDEX_URL
. В более новых системах я не могу поверить в эту переменную.
Что мне не хватает?
Похоже, на это частично ответил http://stackoverflow.com/questions/3472430/how-can-i-make-setuptools-install-a-package-thats-not-on-pypi. Он не объясняет, почему переменная окружения непоследовательно соблюдается, но она говорит мне, как решить мою проблему, указав dependency_links. – zenzic
И я наконец нашел преступника. На старом сервере у меня был файл '~/.pydistutils', который указывал easy_install на использование моего pypi-сервера. Как только я создал этот файл на новых серверах, мои развертывания снова работали. Он все еще не использует переменную PIP_INDEX_URL, но это дает мне возможность обойти это. – zenzic