2016-08-15 4 views
2

Я создал приложение python 3.3 в облачном сервисе RedHat для Openshift. По умолчанию у него есть setup.py для моего проекта. Я изучаю курс Udemy под названием «Построить приложение SaaS с флягой» (source code) Теперь я хотел использовать python-click, как рекомендовано курсом. Ему нужен другой setup.py для проекта cli; поэтому, чтобы поместить этот файл в корневую папку проекта, я переименовал его в setup_cli.py. Теперь есть два файла: setup.py и setup_cli.py. Кажется, что установка пачки автоматически просматривает setup.py.pip install from specific setup.py

# See Dockerfile in github source 
pip install --editable <from setup_cli.py> 

Может pip install --editable использоваться, чтобы указать на setup_cli.py?

+3

Почему бы вам просто не использовать 'python develop'? – cel

ответ

1

кажется, что вы не можете ничего с этим поделать :-) - Это трудно закодирована в пипе исходного кода :-)

Если вы пытаетесь использовать pip install -e ., он будет вызывать метод с именем parse_editable, который будет работать this line:

if not os.path.exists(os.path.join(url_no_extras, 'setup.py')): 
    raise InstallationError(
     "Directory %r is not installable. File 'setup.py' not found." % 
     url_no_extras 
    ) 

Вы можете использовать эту команду pip install -e file:///full/path/to/setup_cli.py, но эта команда также добавляет жесткий кодированный setup.py на вашем пути :-)

в setup_py есть this линия:

setup_py = os.path.join(self.setup_py_dir, 'setup.py') 

так @cel отметил, что, кажется, что python <whatever-setup.py> develop является единственным вариантом.

Смежные вопросы