Continuous Integration

  • Dalton J
N/ACitations
Citations of this article
13Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Continuous Integration (CI) systems are systems that build and test software automatically and regularly. Though their primary benefit lies in avoiding long periods between build and test runs, CI systems can also simplify and automate the execution of many otherwise tedious tasks. These include cross­platform testing, the regular running of slow, data­intensive, or difficult­to­configure tests, verification of proper performance on legacy platforms, detection of infrequently failing tests, and the regular production of up­to­date release products. And, because build and test automation is necessary for implementing continuous integration, CI is often a first step towards a continuous deployment framework wherein software updates can be deployed quickly to live systems after testing. Continuous integration is a timely subject, not least because of its prominence in the Agile software methodology. There has been an explosion of open source CI tools in recent years, in and for a variety of languages, implementing a huge range of features in the context of a diverse set of architectural models. The purpose of this chapter is to describe common sets of features implemented in continuous integration systems, discuss the architectural options available, and examine which features may or may not be easy to implement given the choice of architecture. Below, we will briefly describe a set of systems that exemplify the extremes of architectural choices available when designing a CI system. The first, Buildbot, is a master/slave system; the second, CDash is a reporting server model; the third Jenkins, uses a hybrid model; and the fourth, Pony­Build, is a Python­based decentralized reporting server that we will use as a foil for further discussion.

Cite

CITATION STYLE

APA

Dalton, J. (2019). Continuous Integration. In Great Big Agile (pp. 151–152). Apress. https://doi.org/10.1007/978-1-4842-4206-3_22

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free