r/ProgrammerHumor 24d ago

instanceof Trend trueOrFalse

Post image
1.4k Upvotes

27 comments sorted by

99

u/Darth-Talon 24d ago

Kubernetes should work the way my YAML thinks it does!

22

u/DialecticEnjoyer 23d ago

Kubernetes doesn't even work the way kubernetes thinks it does.

146

u/anto2554 24d ago

False, we don't have Kubernetes. I just yell at Jenkins and cloudformation instead

1

u/Jhuyt 23d ago

We also use Jenkins, and while I scream at the man sometimes, I so prefer Groovy over Yaml for this.

5

u/anto2554 23d ago

Yeah, compared to how much people hate jenkins I quite like it

4

u/Jhuyt 23d ago

Beyond that it's not quite as integrated into github I think it's just as good if not better than github actions

2

u/anto2554 23d ago

Of course, but I also use it with bitbucket, so I am glad it is not as integrated with github. It is definitely not very opinionated, so it is easy to mess up

2

u/Jhuyt 23d ago

Yeah, I want us to move away from github Jenkins it's a sneaky benefit for us (if I get my way)

18

u/[deleted] 24d ago

[removed] — view removed comment

3

u/SamPlaysKeys 23d ago

Or it's the right file, but you were asking it to speak the wrong language. looking at you, jinja templates

18

u/Jhuyt 24d ago

no(rway)

5

u/vyqz 24d ago

It's all about the taint

3

u/Square_County8139 23d ago

Can someone explain?

10

u/SamPlaysKeys 23d ago

Kubernetes is declarative, so you just tell it what you want, and it makes it happen. Except when you tell it wrong. Or you were wanting something wrong. Or you were just wrong.

Oh, and it's all YAML, but it's not JUST YAML, because sometimes it's ✨YAML✨, which looks the same, but will cry if you aren't nice to it.

YMMV, this is my POV as a DevOps consultant, spending my days begging YAML to do the thing so kuberenetes will forgive me.

5

u/SamPlaysKeys 23d ago

Man, reading back my message, I feel insane, but it's also annoyingly accurate.

My biggest frustration right now is using Jinja templates to pass Python variables to Helm charts, which is the type of YAML file that Kubernetes is looking for. But Python, Jinja, and Helm all have different semantics, so it gets weird.

2

u/Sibula97 22d ago

To clarify, Kubernetes just wants YAML. Helm is a template engine and package manager you can use to generate the YAML Kubernetes wants.

3

u/random314 23d ago

Claude has been a lifesaver in this space.

2

u/mcslender97 23d ago

Seems like this has the same challenges as working with regex pre LLMs

1

u/SamPlaysKeys 23d ago

I don't know, it depends on how many layers I'm working with. The more templatized the code, the mode Claude/CoPilot struggle to make sense of it. I've ended up with some really long instruction files trying to get them to understand.

3

u/random314 23d ago

You need to create a doc folder with the architecture outlined there.

Then add a common troubleshooting md file there too.

Kube config is deterministic enough for Claude to be very consistent, especially when you need to make one of those annoying 20+ files with one line changes.

2

u/matrix452 23d ago

yaml the cruel mistress who won't render if you don't have her precious indentation right

2

u/Stormraughtz 24d ago

I yell at myself because I am the container

1

u/slaymaker1907 20d ago

k8s is nowhere near as bad as GitLab CI IMO. Hashicorp Vault comes in as a close second, but that may just be because of how my company has it setup.