kapp-controller
kapp-controller copied to clipboard
Support Kustomize
Describe the problem/challenge you have Want to deploy and app which uses Kustomize
Describe the solution you'd like A means of supporting Kustomize
Vote on this request
This is an invitation to the community to vote on issues, to help us prioritize our backlog. Use the "smiley face" up to the right of this comment to vote.
👍 "I would like to see this addressed as soon as possible" 👎 "There are other more important things to focus on right now"
We are also happy to receive and review Pull Requests if you want to help working on this issue.
Thanks for opening this issue @pbarker. We have always been thinking about supporting Kustomize with kapp-controller but had not received an issue request for it until now.
Curious a bit about what your use case is if you do not mind sharing?
Also, do you have any proposed UX for exposing this via kapp-controller's API?
Talking about an specific example:
Someone might want to deploy an application that has been designed to be deployed via Kustomize files (https://github.com/kubeflow/manifests). This repository provides a huge amount of manifests that uses Kustomize to generate the deployment descriptors.
As can be seen in the README.md, kustomize build <component> is used to generate the kubernetes manifests.
It would be ideal, if there was a way to support kustomize build in a similar way to helm, image, ... in the fetch or in the templatesection of App CR, so that we could get the manifests. Then a user could also chain ytt, kbld, etc... in a typical way to overlay configuration modifications.
Main potential problem I see with this is the version of kustomize as 3.x and 4.x seem to provide different output as reflected on the second question in the README
Supporting kustomize will be very helpful in expanding kapp controller audience beyond the vmware / tanzu group. I'm a big fan of ytt, but unfortunately ytt is rarely adopted except by tanzu. I see people tend to customize yaml with kustomize.