我有一个 Jenkins 实例,它使用来自requirements.txt的伴随PyPI包构建我的项目。然而,与TravisCI构建一样,每次从头开始构建都非常耗时,这意味着构建需要 > 4-5 分钟,这比理想情况要慢得多。
我正在寻找一种在本地缓存下载包的方法,因此当启动具有相同依赖项的构建时,不必从 PyPI 获取,它可以在本地获取,当版本发生更改时,它可以获取像现在一样的上游包。
有没有这样的项目,因为今晚谷歌搜索并没有透露太多信息。
我有一个 Jenkins 实例,它使用来自requirements.txt的伴随PyPI包构建我的项目。然而,与TravisCI构建一样,每次从头开始构建都非常耗时,这意味着构建需要 > 4-5 分钟,这比理想情况要慢得多。
我正在寻找一种在本地缓存下载包的方法,因此当启动具有相同依赖项的构建时,不必从 PyPI 获取,它可以在本地获取,当版本发生更改时,它可以获取像现在一样的上游包。
有没有这样的项目,因为今晚谷歌搜索并没有透露太多信息。
pip 开箱即用地支持这个
pip install --download-cache=DIR
如果请求现有文件,则从缓存中读取。这也可以通过环境变量来完成PIP_DOWNLOAD_CACHE
;
你可以像鸡蛋代理缓存一样
http://pypi.python.org/pypi/collective.eggproxy
这就像所有下载的鸡蛋的本地代理一样,使 Jenkins 更加健壮,例如针对 PyPI 经常发生的超时。
除此之外,您还可以使用 setuptools 的 PYCACHE 功能。看