在Travis CI中缓存从源代码构建的依赖项有多安全

2024-10-05 14:26:44 发布

您现在位置:Python中文网/ 问答频道 /正文

这个问题涉及到Travis CI的缓存功能。在

我的项目(quamash)有一些非常奇怪的依赖关系。它需要用PySide、PyQt4和python3.3和python3.4上的PyQt5测试6次,才能真正测试所有代码。(我还需要在*nix平台和windows平台上进行测试,因为每个平台都使用不同的asyncio后端,但这并不真正相关)。在

PySide很简单,因为它可以与pip一起安装。我只是有预装的轮子(它们现在被保留在github上,但它们不需要,可能更干净,不需要)

我可以得到Qt4(从precise)和Qt5(从ppa)的二进制包。精确的PyQt4(python3-qt4)包是针对python3.2的,因此它毫无价值。PyQt5完全不可用。在

安装一个全局包然后使用它无论如何都很困难。在

< P> QYT4/5在SIP中有一个公共依赖关系,SIP是一个C++的Python绑定生成器。(所有3项均由河岸计算开发)

使用PySide,我的测试在一分钟内完成,但是PyQt的构建需要大约5分钟的时间(两个版本都是2倍)。我想一个大约10分钟的构建并不是那么糟糕,但它看起来只是一种浪费,因为它主要用于依赖关系。在

我可以安全地缓存PyQt&SIP构建目录,然后每次都从它们运行sudo make install?我应该建立一个.deb文件吗?然后安装到virtualenv?)在


Tags: 项目代码功能travisci关系windowsnix