5

我有一个 Jenkins 实例,它使用来自requirements.txt的伴随PyPI包构建我的项目。然而,与TravisCI构建一样,每次从头开始构建都非常耗时,这意味着构建需要 > 4-5 分钟,这比理想情况要慢得多。

我正在寻找一种在本地缓存下载包的方法,因此当启动具有相同依赖项的构建时,不必从 PyPI 获取,它可以在本地获取,当版本发生更改时,它可以获取像现在一样的上游包。

有没有这样的项目,因为今晚谷歌搜索并没有透露太多信息。

4

2 回答 2

9

pip 开箱即用地支持这个

pip install --download-cache=DIR

如果请求现有文件,则从缓存中读取。这也可以通过环境变量来完成PIP_DOWNLOAD_CACHE

于 2013-01-19T20:06:39.590 回答
0

你可以像鸡蛋代理缓存一样

http://pypi.python.org/pypi/collective.eggproxy

这就像所有下载的鸡蛋的本地代理一样,使 Jenkins 更加健壮,例如针对 PyPI 经常发生的超时。

除此之外,您还可以使用 setuptools 的 PYCACHE 功能。看

什么是 Python 鸡蛋缓存 (PYTHON_EGG_CACHE)?

于 2013-01-19T18:47:36.050 回答