Which continuous integration software do you use?

2019-04-07 01:35发布

Google says there are:

  • Jenkins ( first impression: not lightweight )
  • Cruise control ( first impression: not lightweight )
  • Bitten ( seems to be dead, last ticket >8 months old)
  • BuildBot

But BuildBot seems a bit outdated, offering no statistics, not very intuitive to configure... Features we are interested in are:

  • Multi platform support for build slaves: Linux, Mac OS X, Windows
  • Easy build slave setup
  • Mercurial support with branch sensitivity
  • Scheduled builds
  • Commit-hook builds
  • Email notification with full debug output
  • Trac integration would be nice but is not a must-have feature

Edit: I favour Jenkins over Hudson by now, since its the real open source fork of Hudson. Oracle just failed.

7条回答
Emotional °昔
2楼-- · 2019-04-07 01:48

As others have recommended, Hudson satisfies your list of requirements. There's also a plugin for Trac integration.

Regarding "lightweight", Hudson configuration is not XML hell. You can do everything via the Web interface. So it's very easy to get up and running.

Hudson's plugin architecture provides a lot of extension points and integration with other tools. (Although it can be a pain to sort through all the possibilities for the plugin that has the behavior you need.)

You can also script it through the remote access API. This is a powerful way to introduce new behavior for your environment without needing to dive into writing a plugin.

查看更多
何必那么认真
3楼-- · 2019-04-07 02:02

Hudson is my recommendation. It's easy to setup and use, it's free, there are a large amount of third-party plugins and good community support.

查看更多
SAY GOODBYE
4楼-- · 2019-04-07 02:02

I have used BuildBot. My experience has been good with it. Installation is a breeze. It uses configuration to setup the master, slave and has various means for communicating result from publishing on web to mail integration.

I have blogged about the buildbot setup. I find it easy. There are few dependencies like twisted that needs to be taken care of.

[Edit: I tried to put together a post on how to configure BuildBot - master.cfg]

查看更多
▲ chillily
5楼-- · 2019-04-07 02:03

Google says there are: [...]

There is a huge wikipedia page on CI software comparison:

http://en.wikipedia.org/wiki/Comparison_of_Continuous_Integration_Software

Personally I am also using buildbot and I think it could fulfill all of your requirements. It's a bit of work to setup because it is a distributed application but frankly as pyfunc said it's a breeze to setup a new slave once you know what two commands to type (one is an "easy_install", the other one a "buildbot create-slave" with the right options).

Also it is still under heavy development and I chose it because it is easily extensible, whereas XML-based tools are confined to the types of build specs which were coded in the tool: perfect for Java/Ant/Maven projects but it can be limited for slightly more complex ones (e.g., involving DB, or embedded software, etc.).

Hope it'll help.

Cheers,
Christophe.

= The act of automating doesn't solve problems, it just automates them --Joseph Weizenbaum =

查看更多
We Are One
6楼-- · 2019-04-07 02:03

Our free hosted CI environment (fazend.com) is powered by CruiseControl 2.8.3, which is a free open-source product, written in Java. One of its benefits (for us) is that it doesn't need any database, everything is in files.

查看更多
forever°为你锁心
7楼-- · 2019-04-07 02:05

I have used Hudson with Mercurial and found it to be excellent. The Feeds, web site, status reports, etc. were all "just the right size" for us in a 20 person shop. Just run it in a VM and forget about it; we did.

查看更多
登录 后发表回答