Open ilya-lesikov opened 3 months ago
Specialized language
KCL is gaining momentum in the cloud native community right now. It joined CNCF last September only. According to the latest CNCF projects' velocity reports, it had:
Can't find an up-to-date list of new projects adopting it, though.
CUE is used by Timoni, so we can get some feedback from its users to see whether it's a good fit.
Problem
Go templates which are used to generate Kubernetes manifests in Helm are difficult to write, read, debug and maintain. They have issues with performance, values mutability, template name collisions and others.
Solution (if you have one)
From what we know, Go templates cannot be improved much. We could add a few template functions to the library, the tooling can be improved, but not much else.
We should consider an alternative to Go templating in Nelm. This can be one of:
Another templating language won't solve much, so we left with general-purpose languages and specialized languages like Cue.
Additional information
Helm 3 has
--post-renderer
flag which allows usage of any other language to generate manifests, but it is rarely used due to: