Chapter 10. Continuous delivery in microservices
This chapter covers
- Using microservices in a continuous-delivery pipeline
- Executing tests on the pipeline
- Understanding the coded pipeline
- Building the Jenkins pipeline
- Deploying services with certainty
We hope this book has broadened your insight and expanded your skill set for developing tests for a microservices architecture. The purpose of these tests is to enable changes to any service with the certainty that no regression has been introduced when you refactor, fix bugs, or add a new feature.
The questions now are when to execute the tests, where to execute them, and how the tests are related to the deployment of the production service. In this chapter, you’ll see how the traditional continuous delivery (CD) pipeline has evolved to serve a microservices architecture, and how to build a pipeline programmatically that focuses on test execution.
We’ll assume that you have some experience with CD of your applications, and perhaps some basic use of Jenkins (https://jenkins.io) as a CD server. There are several other good build-automation servers out there, such as Travis CI (https://travis-ci.org) and Bamboo (www.atlassian.com/software/bamboo), but we had to pick one to focus on, and we chose Jenkins. The principles described in this chapter more or less apply to whichever CD server you may end up choosing.