竹子比 哈德森(又名詹金斯)与任何其他CI系统

Kar*_*ran 119 java continuous-integration hudson bamboo

那里的任何人都有哈德森和竹子的经验吗?有关这些产品的相对优势和劣势的任何想法?

好的,既然人们不断提及其他CI产品,我会进一步打开它.这是我的一般问题.我想为新项目设置CI系统.该项目可能包含Java组件(WAR和JAR),一些python模块,甚至可能包含.NET组件.所以我想要一个能够:

  1. 处理多种语言,
  2. 将工件部署到服务器(即,如果所有单元测试都通过,则部署战争.)
  3. 我还想要一些与合适的代码覆盖工具集成的东西.
  4. 好看的报告很好,但不是必需的.
  5. 出现问题时的多种通知机制.
  6. 我不担心托管.我将在本地服务器或Amazon实例上运行它.
  7. 此外,这可能是天空中的馅饼,但还有什么东西可以构建iPhone应用程序?

jen*_*ens 50

免责声明:我在Bamboo工作,因此我不打算评论其他CI产品的功能,因为我对它们的体验有限.

要满足您的具体要求:

处理多种语言

Bamboo具有多种语言的开箱即用支持.客户将它与Java,.Net,PHP,JavaScript等一起使用.尽管如此,大多数构建服务器都是通用的,至少可以执行一个可以启动构建过程的脚本.

将工件部署到服务器(即,如果所有单元测试都通过,则部署战争.)

Bamboo 2.7支持Build Stages,它允许您将构建分解为Unit Test Stage和Deploy Stage.仅当单元测试阶段成功时,构建才会转到Deploy Stage.在竹3.0,我们将支持神器共享阶段之间,让您在第一阶段创建工件(如你的战争),并在以下阶段使用此神器进行测试和部署.

我还想要一些与合适的代码覆盖工具集成的东西.

Bamboo支持Clover,还有Cobertura的插件.

好看的报告很好,但不是必需的.

Bamboo有很多报告很好,但不是必需的:)

出现问题时的多种通知机制.

Bamboo可以通过电子邮件,RSS,IM,IDE插件或整个团队可见的漂亮墙板通知您.

我不担心托管.我将在本地服务器或Amazon实例上运行它.

根据经验,托管您自己的CI服务器通常更便宜.但是,如果您需要扩展,Bamboo可以轻松地将您的构建分发给其他本地代理,或通过Elastic代理扩展到Amazon.

此外,这可能是天空中的馅饼,但还有什么东西可以构建IPhone应用程序?

与您的第一个问题的答案类似,大多数CI服务器将能够以某种方式构建iPhone应用程序.虽然可能需要更多的脚本.

价格: Bamboo不是免费的(除了我们的免费入门许可证)/ libre/open-source,但如果您购买商业许可证并获得全面支持,您将获得Bamboo的源代码.与CI服务器所需的计算能力和潜在维护成本相比,Bamboo许可证的成本相当小.

希望这可以帮助.

  • Bamboo的定价结构存在缺陷.它不区分具有并行构建的用户和仅需要远程代理进行跨平台测试的用户.如果你尝试为Windows,Linux和Mac(甚至可能是每个版本的不同版本)运行一个小型构建服务器,价格会迅速上涨到每年数千美元.更好的方法是为并发构建收费. (15认同)

Ste*_*eld 39

我没有使用过Bamboo,但是我已经使用过Hudson,Cruise和TFS,并且在所有这些中,Hudson都是最好的.设置起来非常简单,并且有一个非常好的Web GUI用于项目配置.Hudson的优点在于它支持几乎任何语言和功能,你可以想要假设有人为它编写了一个插件,他们可能拥有它.

http://wiki.hudson-ci.org/display/HUDSON/Plugins

我们使用它来运行定时间隔的.NET,Java和C++构建以及使用自动化测试工具的SVN签名,这很棒.在我离开前的那个地方在我离开之前开始了一些iPhone开发,我相信他们也在使用Hudson.

再加上它是免费的!


Gil*_*ili 35

Bamboo vs Hudson处于一个非常肤浅的层面,似乎归结为:

  • 竹子:易于使用,外观美观
  • 詹金斯:粗糙的边缘,但比竹子更灵活

Bamboo和Jenkins都有很多错误(你遇到问题)但至少在Jenkins你更有可能在修复之前有一个解决方法.有了Bamboo,你就等着更新了.

  • @keiki,是的,不.是的,你获得商业支持,但它需要花费很多钱(你需要问问自己,成本/收益是否合理).值得注意的是,您将遇到的许多问题都是由缺少的功能引起的.Atlassian将尽力为您提供帮助,但最终他们的资源有限,可能需要数年才能添加您要求的功能(取决于他们的受欢迎程度). (3认同)

小智 16

免责声明:我正在和詹金斯合作.

在我们的组织中(相当大,超过100名开发人员),我们发现这两个功能非常有用:

  1. 带有矩阵项目安全策略的CAS插件
  2. 构建管道插件
  3. LTS发布时间表.

关于你的问题:

  1. SCP PLUGIN或SSH PLUGIN
  2. 我们使用FINDBUGS,静态分析收集器插件,静态代码分析插件,任务扫描程序插件
  3. 之前的第3点+ Jenkins DocLinks插件
  4. 我们使用电子邮件Jenkins Email Extension Plugin,但它也支持其他系统,如rss,twitter发布,短信...
  5. 我们在本地运行Tomcat Hosting.
  6. 是.


Puc*_*uce 5

好吧,到目前为止我还没有使用过Bamboo,但一个区别是Hudson是免费的/ libre /开源软件.

  • downvoted - 这个答案是真实的,但是微不足道(大概有人知道这两种产品都知道这一点); OP正在寻找功能比较. (10认同)