Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 27, 2014 20:18:24

Fre
Зарегистрирован: 2012-04-20
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблемы с импортом после деплоя

Есть рабочий код, сервис написанный на торнадо.
После деплоя возникает целая пачка ошибок связанных с импортом.
Запускаю не рутом, виртуальное окружение активировано, это первое что приходит в голову.
Как дебажить в таком случае?

Офлайн

#2 Ноя. 28, 2014 00:28:50

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10014
Репутация: +  857  -
Профиль   Отправить e-mail  

Проблемы с импортом после деплоя

Fre
Как дебажить в таком случае?
Открой консоль и выполняй эти импорты. Не выполняются - доустанавливай то, чего нет.



Офлайн

#3 Ноя. 28, 2014 06:19:30

Fre
Зарегистрирован: 2012-04-20
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблемы с импортом после деплоя

py.user.next
забыл уточнить, импорты внутри проекта

Офлайн

#4 Ноя. 28, 2014 10:03:22

Alen
Зарегистрирован: 2013-08-01
Сообщения: 373
Репутация: +  49  -
Профиль   Отправить e-mail  

Проблемы с импортом после деплоя

Fre
Как дебажить в таком случае?

А собственно говоря зачем дебажить? Создай файл requrements.txt, где пропиши все импорты, при деплое нужно просто выполнить:
 pip install -r requrements.txt 
.
Если нужно собрать список всех импортов то для этого есть специальные утилиты, к примеру sfood-imports http://furius.ca/snakefood/

Офлайн

#5 Ноя. 28, 2014 13:14:25

Fre
Зарегистрирован: 2012-04-20
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблемы с импортом после деплоя

повторюсь, проблемы была не с импотрами пактов, а импортом внутри проекта
итак, если пакет устанавливается, он прописывается в dist_utils
если же это просто git clone то тогда надо проверить PYTHONPATH

Офлайн

#6 Ноя. 28, 2014 13:32:54

Alen
Зарегистрирован: 2013-08-01
Сообщения: 373
Репутация: +  49  -
Профиль   Отправить e-mail  

Проблемы с импортом после деплоя

Fre
повторюсь, проблемы была не с импотрами пактов, а импортом внутри проекта
итак, если пакет устанавливается, он прописывается в dist_utils

Хорошей практикой является установка приложения непосредственно в стандартные пути PYTHONPATH.

Fre
если же это просто git clone то тогда надо проверить PYTHONPATH

pip умеет работать с git.
http://stackoverflow.com/questions/4830856/is-it-possible-to-use-pip-to-install-a-package-from-a-private-github-repository

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version