2013-04-05 4 views
1

Попытка развернуть приложение Python в OpenShift, BTW - это мое первое развертывание OpenShift. Все работает отлично, но установка модуля, который размещается в GitHub. Я пробовал много способов. Кто-нибудь может мне помочь? Спасибо заранее. Похоже, что версия OpenShift Git (1.7.1) не совместима с тем, что я пытаюсь достичь. Это ошибка выхода:Не удается установить модуль Python из GitHub в OpenShift

Obtaining django-filter from git+https://github.com/jpardobl/[email protected]#egg=django_filter-dev (from -r /var/lib/openshift/515ebbc650044643fa00000d/app-root/repo/requirements.txt (line 1)) 
remote: Found command 'git' at '/usr/bin/git' 
remote: Command /usr/bin/git config remote.origin.url failed with error code 1 
remote: Exception information: 
remote: Traceback (most recent call last): 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/basecommand.py", line 126, in main 
remote:  self.run(options, args) 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/commands/install.py", line 223, in run 
remote:  requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle) 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/req.py", line 936, in prepare_files 
remote:  req_to_install.update_editable(not self.is_download) 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/req.py", line 384, in update_editable 
remote:  vcs_backend.obtain(self.source_dir) 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/vcs/git.py", line 104, in obtain 
remote:  if self.check_destination(dest, url, rev_options, rev_display): 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/vcs/__init__.py", line 183, in check_destination 
remote:  existing_url = self.get_url(dest) 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/vcs/git.py", line 116, in get_url 
remote:  show_stdout=False, cwd=location) 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/__init__.py", line 255, in call_subprocess 
remote:  % (command_desc, proc.returncode)) 
remote: InstallationError: Command /usr/bin/git config remote.origin.url failed with error code 1 
remote: 
remote: Storing complete log in /var/lib/openshift/515ebbc650044643fa00000d/.pip/pip.log 
remote: Traceback (most recent call last): 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/bin/pip", line 9, in <module> 
remote:  load_entry_point('pip==1.0.2', 'console_scripts', 'pip')() 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/__init__.py", line 116, in main 
remote:  return command.main(initial_args, args[1:], options) 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/basecommand.py", line 151, in main 
remote:  log_fp = open_logfile(log_fn, 'w') 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/basecommand.py", line 177, in open_logfile 
remote:  os.makedirs(dirname) 
remote: File "/usr/lib64/python2.6/os.py", line 157, in makedirs 
remote:  mkdir(name, mode) 
remote: OSError: [Errno 13] Permission denied: '/var/lib/openshift/515ebbc650044643fa00000d/.pip' 
remote: Running .openshift/action_hooks/build 
remote: Obtaining django-filter from git+https://github.com/jpardobl/[email protected]#egg=django_filter-dev (from -r /var/lib/openshift/515ebbc650044643fa00000d/app-root/repo/requirements.txt (line 1)) 
remote: Found command 'git' at '/usr/bin/git' 
remote: Command /usr/bin/git config remote.origin.url failed with error code 1 
remote: Exception information: 
remote: Traceback (most recent call last): 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/basecommand.py", line 126, in main 
remote:  self.run(options, args) 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/commands/install.py", line 223, in run 
remote:  requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle) 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/req.py", line 936, in prepare_files 
remote:  req_to_install.update_editable(not self.is_download) 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/req.py", line 384, in update_editable 
remote:  vcs_backend.obtain(self.source_dir) 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/vcs/git.py", line 104, in obtain 
remote:  if self.check_destination(dest, url, rev_options, rev_display): 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/vcs/__init__.py", line 183, in check_destination 
remote:  existing_url = self.get_url(dest) 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/vcs/git.py", line 116, in get_url 
remote:  show_stdout=False, cwd=location) 
remote: File "/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg/pip/__init__.py", line 255, in call_subprocess 
remote:  % (command_desc, proc.returncode)) 
remote: InstallationError: Command /usr/bin/git config remote.origin.url failed with error code 1 

После, мой setup.py файл

from setuptools import setup 

    setup(name='nautivel', 
version='0.8.1', 
description='OpenShift App', 
author='Javier Pardo Blasco', 
author_email='xxxxxxx', 
url='http://jpardobl.com', 
install_requires=( 
'Django == 1.5', 
'argparse == 1.2.1', 
'distribute == 0.6.24', 
'moment == 0.0.15',),) 

Также мой requirements.txt файл

-e git+https://github.com/jpardobl/[email protected]#egg=django_filter-dev 

И, наконец, .openshift/action_hooks/файл построить (он не использует переменные env для уменьшения ошибок при попытках)

!/bin/bash 
    source /var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/bin/activate 
/var/lib/openshift/515ebbc650044643fa00000d/python-2.6/virtenv/bin/pip install -v -r /var/lib/openshift/515ebbc650044643fa00000d/app-root/repo/requirements.txt 

ответ

1

Вместо того, чтобы использовать setup.py для установки, я использую обходной путь. Я устанавливаю модули из крюка действия сборки следующим образом.

# .openshift/action_hooks/build 


#!/bin/bash 
MESSAGES_PATH=$HOME/python-2.6/virtenv/lib/python2.6/site-packages/django-messages-patch-src 
git clone git://github.com/jpardobl/django-messages-patched.git $MESSAGES_PATH 
ln -s $MESSAGES_PATH/django_messages $HOME/python-2.6/virtenv/lib/python2.6/site-packages/messages 

Это все !!!

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