Summary
In this chapter, we covered some fundamental lessons around the CI and CD of our domain services. We examined some common patterns, such as environment-based deployments, using artifact repositories to store build artifacts for later use, and more advanced concepts such as triggers, gating, and feature flags. We explored how to set up initial CI and CD pipelines using GitHub Actions, including the use of GitHub Packages for storing our artifacts once the builds are complete. We rounded out our pipeline discussion by reviewing some common types of integration testing, and how those tests could be added to our pipelines to further automate our testing and ensure quality is baked into our pipelines.
In the next chapter, we will be taking our testing game even further by incorporating fault injection and chaos testing into our pipelines. This is just one aspect that can help us identify issues with application resiliency and reliability, which is critical when dealing with an...