我想在上传到pypi之前开始测试各个python包(tar.gz,egg,wheel)的安装。也就是说,我喜欢以下流程:
像这样构建:
cd /path/to/mypkg
python setup.py sdist bdist_egg bdist_wheel
然后可能在另一个终端:
pyvenv installtest
pip install /path/to/mypkg/dist/mypkg-0.1.2.tar.gz
pip不允许从文件安装(我认为)。
最接近的我发现并不是很有效:
pip -v install --no-index --find-links /path/to/mkpkg/dist mypkg
在这种情况下,它确实会发现目录中的软件包,但似乎无法安装它们。 (这可能是无关的。)
我见过pip install -e <path>
,但这只适用于SCM安装的路径;它不适用于任意python包tarball。
所以,问题是:有没有办法从本地文件中提取安装包而不是从pypi获取?
答案 0 :(得分:0)
从PyPI本地下载文件并将它们从“downloads”文件夹安装到venv中:
pip download -d downloads -r requirements-dev.txt
virtualenv --clear -q -p python2.7 venv
./venv/bin/pip install -r requirements-dev.txt -f downloads --no-index -U
如果您可以将通常从PyPI获得的所有软件包放入“downloads”目录,则pip install将根据请求从本地文件安装软件包。