
Continuous integration is a procedure in agile software development. It describes a process in which the entire code base is regularly built and tested in order to obtain feedback on the integration of new application components.
Continuous integration requires a rethink
Introducing a build server alone is not enough to be successful with CI. It is important that developers check in their code daily so that it can be built and tested. If the build breaks down, no excuses should be made, but the errors should be rectified immediately so that the build is green again. Many companies have found it positive to use information for the CI status to make the status of projects in the company more transparent.
Continuous integration requires agile practices
You can't just install a CI server and start doing continuous integration. For example, you also need a source control system in which the sources are checked in centrally and a build system such as Maven or Ant to be able to build the project and its components. In addition to the build for compile and unit testing, it is also advisable to have extended builds in the CI that, for example, automatically execute the functional test or check the code quality.
Continuous Integration Build Server
There are now many continuous integration build servers. The best known in the open source area are
- Jenkins CI
- Hudson CI
- Cruise Control
There are also some commercial servers that are very popular:
- Atlassian Bamboo
- JetBrains Teamcity