[英]How to tell tox to use PyPI mirrors for installing packages?
有没有办法告诉tox
测试自动化工具在安装所有包时使用 PyPI 镜像(在tox.ini
显式测试依赖tox.ini
和来自setup.py
依赖项)?
例如, pip install
有一个非常有用的--use-mirrors
选项,可以将镜像添加到包服务器列表中。
Pip 也可以使用环境变量进行配置, tox
允许您在配置中设置:
setenv =
PIP_USE_MIRRORS=...
请注意--use-mirrors
已被弃用; 相反,您可以设置PIP_INDEX_URL
或PIP_EXTRA_INDEX_URL
环境变量,代表--index-url
和--extra-index-url
命令行选项。
例如:
setenv =
PIP_EXTRA_INDEX_URL=http://example.org/index
将添加http://example.org/index
作为替代索引服务器,在主索引没有包时使用。
Tox 可以配置为从不同的默认 PyPI 服务器安装依赖项和包:
作为 tox 命令行参数
tox -i http://pypi.my-alternative-index.org
使用tox.ini
[tox] indexserver = default = http://pypi.my-alternative-index.org
从 pip 文档:
可以使用 PIP_<UPPER_LONG_NAME> 格式使用环境变量设置 pip 的命令行选项。 破折号 (-) 必须替换为下划线 (_)。
来源:https ://pip.pypa.io/en/stable/user_guide/#environment-variables
这转化为设置以下环境变量:
PIP_INDEX_URL=https://server1/pypi/simple
PIP_EXTRA_INDEX_URL=https://server2/pypi/simple
因此,使用 tox,您可以设置:
[testenv]
setenv =
PIP_INDEX_URL=https://server1/pypi/simple
PIP_EXTRA_INDEX_URL=https://server2/pypi/simple
但是,您只能使用 PIP_EXTRA_INDEX_URL 指定一个额外的索引 url。 如果您需要多个,pip 建议在 pip 命令后附加多个--extra-index-url <URL>
,因此如果您需要多个额外的索引 URL,您可以使用 tox 的install_command
:
[testenv]
install_command =
python -m pip install {opts} {packages} --extra-index-url <URL1> --extra-index-url <URL2>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.