Make kapp controller extensible #1413
Labels
discussion
This issue is not a bug or feature and a conversation is needed to find an appropriate resolution
enhancement
This issue is a feature request
priority/important-longterm
Important over the long term, but may not be staffed and/or may need multiple releases to complete.
Describe the problem/challenge you have
This feature request originates from discussions held during the community meeting on November 21, focusing on reevaluating the architecture of the Kapp controller for enhanced extensibility. Envisioning the entire process of deploying package contents onto the cluster as a pipeline, we engage in "fetching" packages from the specified source, "templating" them based on defined rules corresponding to the tool in use, and finally, "applying" them to the cluster. Each of these steps follows a predefined process, and at present, any requires changes to be made, need to be compiled in the master (or respective main code branch). For instance., in order to support kustomize, a kustomize binary needs to be built and shipped along with kapp-controller (this is just an example, need not necessarily be the case).
Describe the solution you'd like
It would be helpful to re-evaluate the architecture of kapp controller and incorporate extension points at each stage. This would enable users to customize the pipeline at various steps. For example, as a consumer of kapp-controller, I would like to have the flexibility to define custom templating or modification steps for the package fetched from the source. This way, I can leverage the tool's existing capabilities for fetching and applying contents to the cluster while tailoring specific aspects to meet my unique templating requirements.
Anything else you would like to add:
The issue does not describe the expected solution, as this is a larger discussion. This is to put forth an expected user behaviour, and discuss various options to improve the architecture.
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.
The text was updated successfully, but these errors were encountered: