2024-06-11 05:44:56 发布
网友
我开始用一个Python代码库做一个业余项目,我想建立某种形式的持续集成(即每次签入时运行一组测试用例,在测试失败时向负责人发送nag电子邮件),类似于CruiseControl团队城市。
我意识到我可以在大多数vcse中使用钩子来实现这一点,但这需要测试与版本控制服务器在同一台机器上运行,这并不像我希望的那样优雅。有人对一个小型的、用户友好的、开源的、适合于Python代码库的持续集成系统有什么建议吗?
我们在工作时跑Buildbot - Trac。因为我的代码库还不是发布周期的一部分,所以我并没有过多地使用它。但是我们在不同的环境(OSX/Linux/Win)上运行测试,它发送电子邮件——而且是用Python编写的。
一种可能是哈德逊。它是用Java编写的,但与Python项目集成:
Hudson embraces Python
不过,我自己从来没有试过。
(更新,2011年9月:在商标纠纷后,Hudson被重命名为Jenkins。)
其次是Buildbot-Trac集成。您可以在Buildbot website上找到有关集成的更多信息。在我之前的工作中,我们编写并使用了他们提到的插件(tracbb)。 插件所做的是重写所有的Buildbot url,以便您可以在Trac中使用Buildbot。(http://example.com/tracbb)。
Buildbot真正好的地方在于它的配置是用Python编写的。您可以将自己的Python代码直接集成到配置中。编写自己的构建步骤来执行特定任务也非常容易。
我们使用构建步骤从SVN获取源代码,提取依赖项,将测试结果发布到WebDAV,等等。
我写了一个X10接口,这样我们就可以用构建结果发送信号。当建造失败时,我们打开了一盏红色的熔岩灯。建造成功后,一盏绿色熔岩灯亮了。好时光:-)
我们在工作时跑Buildbot - Trac。因为我的代码库还不是发布周期的一部分,所以我并没有过多地使用它。但是我们在不同的环境(OSX/Linux/Win)上运行测试,它发送电子邮件——而且是用Python编写的。
一种可能是哈德逊。它是用Java编写的,但与Python项目集成:
不过,我自己从来没有试过。
(更新,2011年9月:在商标纠纷后,Hudson被重命名为Jenkins。)
其次是Buildbot-Trac集成。您可以在Buildbot website上找到有关集成的更多信息。在我之前的工作中,我们编写并使用了他们提到的插件(tracbb)。 插件所做的是重写所有的Buildbot url,以便您可以在Trac中使用Buildbot。(http://example.com/tracbb)。
Buildbot真正好的地方在于它的配置是用Python编写的。您可以将自己的Python代码直接集成到配置中。编写自己的构建步骤来执行特定任务也非常容易。
我们使用构建步骤从SVN获取源代码,提取依赖项,将测试结果发布到WebDAV,等等。
我写了一个X10接口,这样我们就可以用构建结果发送信号。当建造失败时,我们打开了一盏红色的熔岩灯。建造成功后,一盏绿色熔岩灯亮了。好时光:-)
相关问题 更多 >
编程相关推荐