What is GitOps?
Let’s use a real-world example of the above tools when one orders late-night tacos. GitOps is represented by a group of mechanisms combining a source of truth ( a git repo) with a delivery engine. The DoorDash application is the source of truth and the delivery engine is a combination of the restaurant, delivery person, and the software under the hood. The end-user isn’t concerned with all the logistics required to get their meal delivered, but rather the declared object in the application.
Why should I care?
Knowing what applications are deployed in production holds value for the developers and your SREs. GitOps serves as a compass that points your declared application into your environment. Having a seamless point of entry allows developers to deploy application releases with a simplified delivery cadence. GitOps provides faster feedback to developers, which helps to improve the developer experience while increasing a team’s velocity for getting a product to market.
A Practical Approach
Gitops can be broken down into 2 components the Source of Truth(Git) with the CD engine(ArgoCD) in this instance. I’ve attached a repo with some example code.
Although fun, comparing GitOps to Taco delivery won’t help you or your company adopt GitOps for the workflow of your application. So I’ve attached a link to Argo’s quickstart, which has excellent info on getting a CD engine into your environment.
Kuberentes and GitOps
Following DoorDash workflow, giving developers an entry point to Kubernetes that’s as easy as git push. For the developers, what’s most important is the ability to test new features and get back user feedback efficiently quickly. Kubernetes allows for the A/B testing without exposing the complexity of the entire cloud stack to the application developers. Simplifying the Developer workflow is where Gitops truly shines.
Wrapping up
There are many tools out there to manage the GitOps process but what's important are the core concepts. A Source of Truth and a CD engine are the base mechanisms to improve your developer experience and streamline getting your application to market.
Thanks for dropping by and I look forward to connecting with you on LinkedIn and discussing GitOps and your favorite taco joints.