对于每次部署到我们的测试服务器,我们都会使用pip install -r requirements.txt --upgrade在大约一半的情况下,pip 无法安装一个包,返回一个错误,例如Could not find a version that satisfies the requirement django-brotli==0.1.3 (from -r configuration/environments/dev/../requirements.txt (line 66)) (from versions: )No matching distribution found for django-brotli==0.1.3 (from -r configuration/environments/dev/../requirements.txt (line 66))两个观察:pip 无法安装的软件包确实存在 - 安装在以前和以后的版本中都运行良好。失败的包是任意的我们在不同的 venv 中并行运行多个构建,所以我认为这是一种竞争条件。我已经确保为每个构建过程将环境变量TMPDIR设置为不同的位置,但问题仍然存在。知道 pip 进程还有哪些地方会相互干扰?我正在使用 pip 18.1 和 python 3.5.3
1 回答

白猪掌柜的
TA贡献1893条经验 获得超10个赞
额外的冗长消息似乎表明问题在于 pip 所做的缓存,即使我真的无法弄清楚确切的问题是什么。看起来在某些情况下 pip 试图在缓存中找到版本,但在并行进程能够找到它时却找不到。
由于我添加了该选项,pip --no-cache
因此问题没有再次发生。
添加回答
举报
0/150
提交
取消