Chapter 12. Extending continuous integration


This chapter covers

  • Dealing with slow builds
  • Scaling the CI process
  • Measuring the maturity of the CI process

Now that you have your CI process up and running and you’ve added some capabilities, you may have found that not everything is a bed of roses. Some things don’t work as you expect or become slower as you add more capabilities. You may also have found political or legal issues that cause you pain.

This chapter will help you. We’ll wrap up our discussion of CI by talking about extending your process and how to overcome some of these obstacles. The topics we’ll present in this chapter aren’t necessarily directly related to each other, but they’re important enough that we need to discuss them. You’ll learn how to work with large projects, lots of projects, large and geographically separated teams, and legal roadblocks, and see where your CI process should be headed to make it more efficient and able to handle more of your software pipeline.

We’ll discuss the seven deadly sins of slow software builds and how to receive absolution. You’ll tweak the MSBuild scripts. We’ll look at how to technically scale the TeamCity server builds. And after dealing with Sarbanes-Oxley, we’ll examine the Enterprise CI Maturity Model. Let’s begin with team and project problems.

12.1. Speeding up CI

12.2. Seven deadly sins of slow software builds

12.3. Scaling CI

12.4. Legal roadblocks

12.5. Maturity model for CI

12.6. Summary