3 ms·
The problem with k8s is the lack of stable interfaces within the codebase. The resources themselves are well-versioned but even though the codebase is split up
by canucklady 4y ago
The problem with k8s is the lack of stable interfaces within the codebase. The resources themselves are well-versioned but even though the codebase is split up the individual pieces have dependencies on each other down to specific minor releases. The "separate" repos are so tightly coupled you wonder why they don't just smush them all together.
If you've ever tried to develop software that depends on k8s modules you know what I mean - you inevitably get a diamond dependency conflict that go mod can't easily handle because some package needs version 0.45 of apimachinery but something else needs 0.46 (made up versions but you get the point). If they wanted to have many small repos they should have some rigor around versioning and public interfaces between those repos, rather than this magic manifest of specific releases that work together.
- deleted 4y ago[deleted]
- dehrmann 4y agoSome of this is Google devs think in monorepos, where external interfaces and dependencies are somewhat easier problems.