4 ms·
The comment you're replying to describes concerns about maintenance burden from the programmatic nature of Nix. I think "declared in YAML, pointing to a Docker
by rgoulter 5y ago
The comment you're replying to describes concerns about maintenance burden from the programmatic nature of Nix.
I think "declared in YAML, pointing to a Docker image", and "declared in Nix, pointing to some more Nix elsewhere in the codebase" is relatively moot to this point. (If you wrote the image, you'll know what it's expected to do; if you don't know the Nix you're pointing to, it's as opaque as a Docker image).
Configuring with a program vs using a plain structured file have different trade-offs.
- dnr 5y agoDoes anyone write k8s manifests in raw yaml? They're so complicated that they're generated using some templating language (helm or kustomize or whatever is popular these days, I'm a little out of the loop). So you still have something programmatic. Think of Nix as just a better and more principled templating language. (I mean, look at NixOS configs: they're much closer to "plain structured files" than "programs".) The promise that I see (I haven't seen this fully realized but it should be possible) is that instead of yaml plus some ad-hoc templating language plus dockerfile plus makefile, everything is in a single language top to bottom.
- rgoulter 5y agoI think it's better to put in terms of trade-offs, rather than "this is better than that". https://mikehadlow.blogspot.com/2012/05/configuration-complexity-clock.html https://mikehadlow.blogspot.com/2012/05/configuration-comple... (I use NixOS btw).
- rezonant 5y agoHelm charts are basically just collections of k8s yamls, it doesn't serve to simplify them, only to make them parameterized