Isopod: Expressive DSL Framework for Kubernetes Config
github.com
github.com
jkcfg reduced the amount of configuration code/data in our system by an order of magnitude or so.
Amen! Was exactly my thinking.
> "Eww Javascript" but everybody knows it.
Well I don’t (at least not well) that’s why starlark was such a good choice - everyone on the team already knows this subset of python fairly well. Also because it has this amazing Go interpreter now it was much easier to integrate with native Kubernetes libraries.
For deletion I explored a similar approach used in helm3 - use tombstone object (crd) for every deploy and store the state there. Kubernetes objects are simply deleted if they didn’t appear in kube.put in the latest release and for any other state you can use “remove” callback from config itself because full config is stashed in kubernetes for every deploy.
A framework to make configs for > A framework that handles devops for > A framework that handles containers (docker) for > A framework of an app