Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Continuous Integration Servers [closed]

People also ask

What are continuous integration servers?

A continuous integration server (sometimes known as a build server) essentially manages the shared repository and acts as a referee for the code coming in. When developers commit to the repository, the CI server initiates a build and documents the results of the build.

What happens in a continuous integration when a state fails?

A successful CI build may lead to further stages of continuous delivery. If a build fails, the CI system blocks it from progressing to further stages. The team receives a report and repairs the build quickly, typically within minutes. All competitive technology companies today practice continuous integration.

What is CI server in DevOps?

Continuous integration is a DevOps software development practice where developers regularly merge their code changes into a central repository, after which automated builds and tests are run.

Does continuous integration uses a Centralised server?

Continuous Integration is the practice of frequently integrating code changes in a centralized shared repository and validating the build through automated tests. Any issue arising from the integration is fixed at this stage to ensure a running build comprising of all packaged changes on a continuous basis.


I recently implemented a Hudson server. Having previously used Cruise Control, I am very satisfied with Hudson and very impressed with its ease of setup and use. Adding new projects is infinitely easier than it was with Cruise Control.


Edit: We use Hudson now.

A while ago I looked into a bunch of these with the following requirements:

  • Java code
  • Ant builds
  • Groovy builds
  • Distributed builds
  • SCM trigger integration
  • http reports
  • smtp reports

The Continuous Integration Feature Matrix is a great place to start.

I ended up selecting AnthillPro and am using it successfully, just scratching at the surface of what we can and hope to use it for.


Jetbrains TeamCity looked really good when we looked at it. It is java based so should be easy for your teamn to extend, and can do distributed builds etc... There's a freebie version you can evaluate.


I have been looking into this too and although I initially was looking at CruiseControl, I heard good things about Hudson and decided to give it a try. I am completely blown away by how easy it was to get started (just download and run) and the configuration is done through the GUI so there's no fiddling around with XML config files.

Within minutes I had performed my first Ant build. I now have it running as a Windows service on a server which is available 24/7 both in the office and via VPN. Upgrading is as simple as downloading the new war file and restarting.

Support for junit reports is out of the box. Installing additional plugins is also very easy and I have added plugins for Trac, Cobertura, FindBugs and PMD. Code and test quality is increasing as it's very satisfying to see the trend graphs rising!

I now use it to manage all of my builds for test and production environments. Since I manage several web applications this gives me more time to spend on actual programming. I honestly can't remember how I managed without it.


Atlassian's Bamboo looks nice but I don't have any experience with it. Looks to be similar in features to Cruise or TeamCity.


Like some other people here, I really love Hudson.

It is extremly easy to install (it's just a war file to deploy), to configure and to use. In addition, it offers a lot of functionalities that are not always available on others systems (build matrix, master and slaves, security on server or project level...)

The number of existing plugins is quite important now, and creating its own plugin is not that hard...

To finish, this application evolves really fast: we are currently on the 257th release and they made more than 100 releases since one year!

For french people, I wrote a quite complete guide to use Hudson here.