GitOps
In the earlier sections, we talked about how applications can be packaged and how we could create the underlying IaC. At this point, we might rely on the manual execution of the deployments (hopefully not) or on some kind of CI/CD pipeline. Although this is a good start, there is a smarter way to do this. This section deals with GitOps, its principles, and how we can use it to deploy our applications.
When we think of the things we learned until now, a typical CI/CD pipeline (simplified) might look like this:
Figure 6.6 – Overview of the current deployment process
In the beginning, we build our code, test it, and store the artifacts in some repository; furthermore, we create a deployment configuration and store this in some kind of repository. After that, we create the infrastructure in a codified way and are ready to deploy our application using the respective command. As we saw in the preceding figure, we could put all of this into a...