Chapter 14: CI/CD Pipelines with GitOps
In the last chapter, we introduced GitOps, why we need it, its principles, and various types of GitOps deployments. We also looked at different kinds of repositories we would create to implement GitOps and the branching strategy choices for each of them. We then looked at a hands-on example of GitOps with declarative infrastructure and config management, where we used Terraform to create a Kubernetes cluster using GitOps. Now, we will deep dive into GitOps and look at application management and the end-to-end GitOps life cycle using CI/CD pipelines.
In this chapter, we're going to cover the following main topics:
- Continuous integration with GitHub Actions
- Release gating with pull requests
- Continuous deployment with Flux CD
- Managing sensitive configuration and Secrets