If you know me, you’re aware that I’m not an insane fan of unstructured, free-floating scripts that are created by dozens of different developers with varying preferences for how to express what. This statistical analysis has made quite some buzz for instance. My line of argumentation: if you let an operator (such as an ArgoCD or the likes) sync unstructured stuff, all you can basically do is pray that things go well whenever shit hits the fan. And hitting the fan means:
- DevOps-Bogdan leaves and documentation has last been updated a year ago. You’ll see yourself confronted with 26.000 versions of dozens of values.yaml files that take you weeks to understand. You walk to your CTO telling her we’ll not be able to deploy for two weeks. Trust me, I’ve been there.
- Production fails. Why? Dependency on a test database. Only, you don’t know that yet. And you’ll have to go into Git and dissect all of this mess to figure out what went wrong. So much fun. Container-Adam wrote a great piece on this.
Two nuggets of disaster, I have dozens left. The problem is not Gitoops itself, it’s what we’re throwing at it. You might know that we’re following the approach of working against baseline YAML files to structure how manifests get created. Nils recorded a beautiful video to explain our approach to config management in detail. This approach leaves you the flexibility of going into any low-level scripting as a senior developer while ensuring that the final manifests follow a standard structure. All of a sudden debugging, rolling back, and documenting is easy-peasy. We recorded webinars on this topic with our friend Kostis over at Codefresh. This is IDP vs GitOps 1/2 and this is IDP vs GitOps 2/2.
If you’re currently starting your GitOps journey or you’re frustrated with where you are, let's chat. If you’re in the transition phase, ignore this text, lean back, and eat a fresh Mango while letting Flux update a new image. That’s the bit these systems excel at.
Oh there are a few interesting webinars coming up my colleagues asked me to remind you of:
- A workshop on how to Simplify developer experience on EKS, GKE, or AKS with Humanitec, hosted by our CTO Chris Stephenson
- Another hands-on session with our lead QA Nils to show How to set up Vault for your Kubernetes apps
- Our friend Steve Pereira will discuss the 5 Reasons Internal Developer Platforms are next-level DevOps
All the best,
Kooky Kaspar