DEV Community

Cover image for The Adventures of Blink S3e9: GitOps
Ben Link
Ben Link

Posted on

The Adventures of Blink S3e9: GitOps

Hey friends, and welcome back to The Adventures of Blink!

Before we dig into today's adventure, if you get something good out of this β€” if you learn something or find it interesting β€” please let me know by hitting the like button. That feedback helps me know what's working (and what isn't!). Also, hit subscribe so you don't miss any upcoming adventures. Let's ride!

Today's Topic

Today's adventure is a little more of a discussion than a demo, but it's super important, especially given how much we've been talking about Git this season.

We're diving into GitOps.

TL/DR: YouTube

Don't feel like reading this? I got you. Here's a Youtube link:

What is GitOps?

GitOps is a strategy where we manage all of our operations: infrastructure, applications, even data, using Git.

The idea is simple but powerful:

Everything that defines your system lives as code in your Git repository.

This means we should be able to:

  • Create our entire system from scratch just by using what's in Git.
  • Get from zero to fully functional quickly, with minimal manual effort.
  • Use the automation we've been learning to make it happen.

Why GitOps?

Why bother with GitOps? Here's why:

Automation Saves Work

Rather than pulling an all-nighter during launch week, automation means deployments are just a button press.

Deployments become:

  • Consistent
  • Reliable
  • Low-stress

Eliminate Configuration Drift

Drift happens when system configurations change in undocumented ways... often during "quick fixes."

This creates problems like:

  • Hidden bugs that surface during big releases
  • Failed disaster recoveries because backup environments don't match production

By keeping everything in Git, we prevent drift and ensure our systems are always in a known state.

Meet Compliance and Security Requirements

If you're subject to audits, you need to document system configurations and adhere to them.

Without GitOps, manual changes constantly invalidate your documentation.

With GitOps, your system config is always up to date... and traceable.

Mantras for Practicing GitOps

If you want to embrace GitOps, start by living these two mantras:

πŸ›‘ Never Do Anything Manually

  • Never deploy by hand.
  • Use an existing automation tool, or script a new one.
  • Even if it's "just a small setting," automate it.
  • Always change your system through automation, so changes are documented and repeatable.

πŸš€ Deploy Frequently

Deployments shouldn't be scary.

Fear of deployment is a sign you aren't doing it often enough.

  • Make deployments frequent and normal.
  • Practice deploying until it's second nature.
  • Trust your automation.

Note: In bigger organizations, traditional "change management" processes (like paperwork and approvals) can slow you down.

GitOps challenges those old ways β€” and that's a good thing!

(We'll cover feature flagging in a future adventure to explain how to separate "deploying" from "releasing"!)

Common GitOps Challenges

GitOps is awesome, but it's not "free." Here are a few realities to expect:

🐒 Slower at First

  • Automation takes time to set up.
  • There's a learning curve.
  • You'll move slower initially, but it's an investment that pays off with speed and reliability later.

It's like going to the gym:

You don't start off lifting heavy. You build strength over time.

πŸ”’ Secrets Management is Hard

Your Git repo should never contain sensitive credentials.

But automation still needs access to secrets. How do you handle it?

Some common strategies:

  • Encrypted credentials stored in the repo (with keys managed separately)
  • External secret stores like HashiCorp Vault

Secrets management requires careful setup, so don't rush it.

Wrapping Up: Your Homework

Take a look at your current systems and ask yourself:

"If my entire system vanished, could I recreate it from scratch using only what's in Git?"

If the answer is no, start making a list of the steps you'd need to automate.

That's your roadmap for starting your GitOps journey!

Thanks for hanging out on this adventure with me. πŸš€

Let's keep building better systems together.

Stay awesome!

Blink

Image of Datadog

Get the real story behind DevSecOps

Explore data from thousands of apps to uncover how container image size, deployment frequency, and runtime context affect real-world security. Discover seven key insights that can help you build and ship more secure software.

Read the Report

Top comments (0)

Billboard image

Try REST API Generation for Snowflake

DevOps for Private APIs. Automate the building, securing, and documenting of internal/private REST APIs with built-in enterprise security on bare-metal, VMs, or containers.

  • Auto-generated live APIs mapped from Snowflake database schema
  • Interactive Swagger API documentation
  • Scripting engine to customize your API
  • Built-in role-based access control

Learn more

πŸ‘‹ Kindness is contagious

Explore a trove of insights in this engaging article, celebrated within our welcoming DEV Community. Developers from every background are invited to join and enhance our shared wisdom.

A genuine "thank you" can truly uplift someone’s day. Feel free to express your gratitude in the comments below!

On DEV, our collective exchange of knowledge lightens the road ahead and strengthens our community bonds. Found something valuable here? A small thank you to the author can make a big difference.

Okay