CI/CD Pipelines and Integrated Testing
Continuous integration (CI) and continuous delivery (CD) are two concepts that have been at the heart of software development for many years. The notion that faster compilation and faster delivery of code to environments brings faster feedback has allowed developers to receive and iterate on positive or constructive feedback. The end goal of this process is to release a better software product.
The discovery and usage of design patterns related to Agile software development do not have to be onerous. There are general constructs that help developers to better build and release their products based on the workflow that melds best with their team setup. Platforms such as GitHub take things a step further and can provide solutions to common build and release situations out of the box.
Throughout this chapter, we will explore different patterns, build pipelines using GitHub Actions, and incorporate integration testing that will help safeguard...