为什么从 SVN PIP 安装 python-couchdb 实验分支失败?

发布于 2024-08-12 14:04:14 字数 2748 浏览 10 评论 0原文

我正在为一个项目设置 Fabric/virtualenv/pip 自动化部署,并且需要安装 python-couchdb 的最新实验分支。当然,我将其粘贴在我的 pip 需求文件中,如下所示:

-e svn+http://couchdb-python.googlecode.com/svn/branches/experimental/httplib@195#egg=CouchDB-dev_r195

但是,当我运行部署时,我收到以下错误和回溯:

[192.168.1.200] out: Obtaining CouchDB from svn+http://couchdb-python.googlecode.com/svn/branches/experimental/httplib/#egg=CouchDB (from -r requirements.txt (line 1))
[192.168.1.200] out:   Checking out http://couchdb-python.googlecode.com/svn/branches/experimental/httplib/ to ./src/couchdb
[192.168.1.200] out:   Error [Errno 2] No such file or directory while executing command svn checkout -q http://couchdb-python.googlecode.com/svn/branches/experimental/httplib/ /home/sk/votersdaily/src/couchdb
[192.168.1.200] out: Exception:
[192.168.1.200] out: Traceback (most recent call last):
[192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 482, in main
[192.168.1.200] out:     self.run(options, args)
[192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 675, in run
[192.168.1.200] out:     requirement_set.install_files(finder, force_root_egg_info=self.bundle)
[192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 2409, in install_files
[192.168.1.200] out:     req_to_install.update_editable(not self.is_download)
[192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 1970, in update_editable
[192.168.1.200] out:     vcs_backend.obtain(self.source_dir)
[192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 3420, in obtain
[192.168.1.200] out:     ['svn', 'checkout', '-q'] + rev_options + [url, dest])
[192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 4320, in call_subprocess
[192.168.1.200] out:     cwd=cwd, env=env)
[192.168.1.200] out:   File "/usr/lib/python2.6/subprocess.py", line 621, in __init__
[192.168.1.200] out:     errread, errwrite)
[192.168.1.200] out:   File "/usr/lib/python2.6/subprocess.py", line 1126, in _execute_child
[192.168.1.200] out:     raise child_exception
[192.168.1.200] out: OSError: [Errno 2] No such file or directory

这是我所知道的:

  • 该错误与未找到 setup.py 有关,因为文件是从未下载过。它似乎拒绝创建路径 /home/sk/votersdaily/src/couchdb,但对于其他包,它始终根据需要创建此路径。
  • 我可以以 root 身份运行,也可以以本地用户身份运行,但同样失败。
  • 如果我手动创建该目录,那么它会提示我该目录当前不是 SVN 存储库,并询问我是否要覆盖它。如果我将其清除,它仍然不会签出存储库。
  • 我已经重新安装了 pip 并重新创建了 virtualenv,并且重现了该错误。
  • 我可以在本地工作站(在 virtualenv 中)成功执行此 pip 安装。

建议?我知道这一定是某种库或权限冲突,但我似乎无法确定它,

谢谢。

I'm setting up a Fabric/virtualenv/pip automated deployment for a project and I need to install the latest experimental branch of python-couchdb. Naturally, I stick it in my pip requirements file, like so:

-e svn+http://couchdb-python.googlecode.com/svn/branches/experimental/httplib@195#egg=CouchDB-dev_r195

However, when I run my deployment I receive the following error and traceback:

[192.168.1.200] out: Obtaining CouchDB from svn+http://couchdb-python.googlecode.com/svn/branches/experimental/httplib/#egg=CouchDB (from -r requirements.txt (line 1))
[192.168.1.200] out:   Checking out http://couchdb-python.googlecode.com/svn/branches/experimental/httplib/ to ./src/couchdb
[192.168.1.200] out:   Error [Errno 2] No such file or directory while executing command svn checkout -q http://couchdb-python.googlecode.com/svn/branches/experimental/httplib/ /home/sk/votersdaily/src/couchdb
[192.168.1.200] out: Exception:
[192.168.1.200] out: Traceback (most recent call last):
[192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 482, in main
[192.168.1.200] out:     self.run(options, args)
[192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 675, in run
[192.168.1.200] out:     requirement_set.install_files(finder, force_root_egg_info=self.bundle)
[192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 2409, in install_files
[192.168.1.200] out:     req_to_install.update_editable(not self.is_download)
[192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 1970, in update_editable
[192.168.1.200] out:     vcs_backend.obtain(self.source_dir)
[192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 3420, in obtain
[192.168.1.200] out:     ['svn', 'checkout', '-q'] + rev_options + [url, dest])
[192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 4320, in call_subprocess
[192.168.1.200] out:     cwd=cwd, env=env)
[192.168.1.200] out:   File "/usr/lib/python2.6/subprocess.py", line 621, in __init__
[192.168.1.200] out:     errread, errwrite)
[192.168.1.200] out:   File "/usr/lib/python2.6/subprocess.py", line 1126, in _execute_child
[192.168.1.200] out:     raise child_exception
[192.168.1.200] out: OSError: [Errno 2] No such file or directory

Here is what I know:

  • The error relates to it not finding setup.py, as the files are never downloaded. It seems to be refusing to create the path /home/sk/votersdaily/src/couchdb, but for other packages it has always created this path as needed.
  • I can run as both root and as a local user and it fails the same.
  • If I create the directory manually then it pitches a prompt telling me the directory is not currently an SVN repo and asking if I would like to overwrite it. If I wipe it out it still doesn't checkout the repo.
  • I have reinstalled pip and recreated the virtualenv and the bug is reproduced.
  • I can execute this pip install on my local workstation (in virtualenv) successfully.

Suggestions? I know this must be some sort of library or permission conflict, but I can't seem top pin it down,

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

殤城〤 2024-08-19 14:04:14

根据 John Paulett 的评论——您确实必须在服务器上安装 subversion 才能在服务器上执行它。

如果可能的话,我希望将送到我脸上的鸡蛋冷藏。

Per John Paulett's comment--you must indeed have subversion installed on the server in order to execute it on the server.

I would like the egg delivered to my face chilled, if possible.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文