在tox环境中为pip install命令设置https proxy

时间:2014-05-14 19:06:26

标签: python https proxy pip tox

我需要在 tox 环境中为 pip 安装命令设置 https代理

Currenly,我有类似的东西:

...
[toxenv:test]
install_command = pip install {opts} {packages}
commands = 
    <command1>
    <command2>
...

如果我只使用pip命令,例如:

pip install <package>

我会遇到错误,因为我在代理之后。

所以我做了类似这样的事情,它就像一个sharm:

https_proxy=<proxy_url> pip install <package>

但是,问题是我需要为pip install命令设置代理 ,以及其他命令( command1 command2 ,...) https_proxy 应该取消设置。

所以问题是如何在tox中为pip install命令设置设置https_proxy,并为所有其他命令设置 not set

P.S。做这样的事情并不奏效:

install_command = https_proxy=<proxy_url> pip install {opts} {packages}

P.s.s。 pip --proxy 选项也不起作用,因为它仅设置 http_proxy 。< / p>

事先谢谢!

1 个答案:

答案 0 :(得分:3)

您可以在tox会话中设置env变量,并将pip命令包装在脚本中

proxy_pip.sh

#!/bin/bash
https_proxy=$my_https_proxy http_proxy=$http_proxy pip $@

tos.ini

[testenv]
setenv =    
   my_http_proxy = <proxy_url>
   my_https_proxy = <proxy_url>
install_command = proxy_pip.sh install {opts} {packages}
commands = 
    <command1>
    <command2>