ftplib отсутствует в openshift

У меня есть приложение, использующее python 2.7 в openshift и пытающееся скопировать файл с помощью ftplib.

Когда я пробую это в локальном virtenv, все в порядке. Но после деплоя на openshift получаю 500 на сайте. Удаление кода, связанного с ftplib, заставляет его работать (достаточно закомментировать import ftplib).

Похоже, в openshift отсутствует ftplib. Кто-нибудь с похожей проблемой? Как получить его там?


person hasty001    schedule 09.10.2014    source источник


Ответы (1)


Вы добавили его в свои зависимости для своего приложения?

Теперь Python поддерживает использование файла requirements.txt для обработки ваших зависимостей, хотя python обрабатывает вещи немного иначе, чем php/perl. Ваш файл requirements.txt может находиться в корневом каталоге вашего приложения. Если в вашем репозитории есть и ваш файл setup.py, и файл требования.txt, то оба они будут обработаны.

person Community    schedule 09.10.2014
comment
У меня есть файл setup.py с install_requires=['flask==0.10.1','flask-login==0.2.7','sqlalchemy==0.8.2','flask-sqlalchemy==1.0', 'MarkupSafe', 'ftplib'], ) - person hasty001; 10.10.2014
comment
Можете ли вы попробовать подключиться к серверу по ssh, запустить virtualenv вручную и попытаться установить ftplib, чтобы увидеть, не появится ли ошибка? Или проверьте журналы ошибок - person ; 10.10.2014
comment
я снова сделал git push и из консоли: удаленный: поиск ftplib удаленный: чтение mirror1.ops.rhcloud.com/mirror/python/web/simple/ftplib удаленный: не удалось найти индексную страницу для 'ftplib' (возможно, с ошибкой?) удаленный: сканирование индекса всех пакетов (это может занять некоторое время) удаленно: чтение mirror1.ops.rhcloud.com/mirror/ python/web/simple remote: не найдены локальные пакеты или ссылки для скачивания для удаленного ftplib: ошибка: не удалось найти подходящий дистрибутив для Requirement.parse('ftplib') - person hasty001; 10.10.2014
comment
Поскольку ftplib является частью стандартной библиотеки Python (docs.python.org/2/ library/ftplib.html) Не думаю, что вам нужно включать его в этот список? Он должен быть просто доступен. - person ; 10.10.2014
comment
да, это были и мои мысли, но это не сработало. Он также не работает с ftplib в install_requires. Так что я думаю, что что-то не так с openshift. - person hasty001; 10.10.2014
comment
Его вообще не нужно устанавливать, не указывайте его нигде и не смотрите, работает ли он, поскольку он является частью python, а не пакетом, который вы устанавливаете. Я могу подключиться к моему openshift по ssh, запустить python и запустить строку «from ftplib import FTP» без каких-либо ошибок, а это значит, что все должно работать нормально. - person ; 10.10.2014
comment
это не помогает. похоже, что openshift не хватает этой библиотеки. - person hasty001; 10.10.2014