更新这现在是 Travis 的一流功能:http: //blog.travis-ci.com/2013-12-05-speed-up-your-builds-cache-your-dependencies/
我一直在玩这个,看起来你可以像这样缓存 virtualenv 站点包(更新你的 python 版本的路径):
cache:
directories:
- /home/travis/virtualenv/python2.7/lib/python2.7/site-packages
有一个小问题,它不缓存bin
或src
目录。我尝试缓存整个 virtualenv 目录,但是对于通过 git 安装到src
目录中的依赖项,我遇到了奇怪的错误。
您仍然面临使旧要求无效的问题。如果您从需求中删除某些内容,它将保留在 virtualenv 中,因此您必须使用 pip ( pip remove foo
) 显式删除它,或者等到 Travis 创建 API 以使缓存无效...
另一个选项是使用--download-cache
pip 选项,然后将该目录添加到缓存中:
cache:
directories:
- $HOME/.pip-cache/
install:
- pip install -r requirements.txt --download-cache $HOME/.pip-cache
这将使下载速度更快,但仍然需要编译和安装所有要求!