我在chroot环境中运行setup.py/pip时遇到问题。
这是独家新闻:
正常目录位置:
/src/qa/libs
Chroot-ed location
#!/usr/bin/env
from __future__ import (unicode_literals, print_function, division,
absolute_import)
from setuptools import find_packages, setup
test = [
'mock',
'pytest',
'pytest-cov',
]
setup(
name='libs',
version=0.1,
description='Some desc',
long_description=open('README').read(),
author='insert_author_here',
author_email='insert_email_here',
packages=find_packages(),
package_dir={},
include_package_data=True,
tests_require=test,
install_requires=[],
keywords=['qa', 'framework'],
extras_require={
'test': test,
}
)
这是我的setup.py文件:
python setup.py develop
在libs
目录中运行Installed /src/qa/libs
Processing dependencies for libs==0.1
Finished processing dependencies for libs==0.1 # <-- It hangs here
时,在安装过程中一切都会顺利进行,直到最后。
HashMap
当我目前不在chroot(环境所需)并且看起来setuptools / distribute似乎陷入递归文件系统中寻找要清理的东西时,就不会发生这种情况。知道如何解决这个问题吗?
使用pip安装requirements.txt文件没有这样的问题,所以我认为它可能是setup.py文件的结构。
答案 0 :(得分:2)
事实证明,在创建virtualenv并安装此软件包的bash脚本期间发生了挂起。我通过使用bash -x my_script
命令执行脚本来解决这个问题,该命令显示挂起发生时的实际执行命令。
setup.py文件正确安装软件包并成功退出。