免責聲明:我在Bamboo上工作,因此我不打算评论其他CI产品的功能,因为我的经验有限。
要回答您的具体要求:
处理多种语言
奔步对多种语言提供了开箱即用的支持。客户将其与Java,.Net,PHP,JavaScript等一起使用。话虽如此,大多数构建服务器都足够通用,至少可以执行可以启动构建过程的脚本。
将工件部署到服务器(即,如果所有单元测试都通过,则部署战争。
Bamboo 2.7 支持构建阶段,允许您将构建分解为单元测试阶段和部署阶段。仅当单元测试阶段成功时,生成才会进入部署阶段。在 Bamboo 3.0 中,我们将支持阶段之间的神器共享,允许您在第一阶段创建神器(例如您的战争),并在以下阶段使用此神器进行测试和部署。
我还想要一些与体面的代码覆盖率工具集成的东西。
Bamboo支持Clover,并且还为Cobertura提供了一个插件。
好看的报告很好,但不是必需的。
Bamboo有一大堆报告,这些报告很好,但不是必需:)
出现问题时的多种通知机制。
Bamboo可以通过电子邮件,RSS,IM,IDE插件或整个团队可见的漂亮墙板通知您。
我不担心托管。我将在本地服务器或 Amazon 实例上运行它。
根据经验,托管自己的CI服务器通常更便宜。但是,如果您需要扩展,Bamboo 可以轻松将您的构建分发给其他本地代理,或通过 Elastic 代理横向扩展到 Amazon。
另外,这可能是天上掉馅饼,但是有没有东西也可以构建iPhone应用程序?
与第一个问题的答案类似,大多数CI服务器将能够以某种方式构建iPhone应用程序。不过,可能需要更多的脚本。
价格:Bamboo不是免费的(除了我们的免费入门许可证)/自由/开源,但如果你购买商业许可证和完全支持,你会得到Bamboo的源代码。与CI服务器所需的计算能力和潜在维护成本相比,Bamboo许可证的成本相当小。
希望这有帮助。