New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement a CLI plugin for helm #32174
Comments
|
/cc @Sgitario (kubernetes), @ebullient (cli), @geoand (kubernetes), @maxandersen (cli) |
|
There is already a community driven extension for helm (https://github.com/quarkiverse/quarkus-helm). |
|
The extension generates helm. The cli here is to be able to invoke/install the helm binary to use the output of the extension. That's at least how I understand @iocanel s description |
|
Not sure that it could help as the project has been created 6 years ago around Helm2, is using Fabric8 Java client: see microbean-helm - https://stackoverflow.com/questions/40783681/kubernetes-helm-java-api |
I am afraid that this doesn't help. In helm v2 most of the job was done server side and therefore it was possible to just create a client the sends the charts to the server. In helm v3 all the work is done in the client side. This means that we need to use the client or rewrite the thing in java. |
I fully agree. If we use then the helm binary, how will it be possible to configure the quarkus client to figure out the path to be used to access the binary ? How will it be possible to know how the |
|
All the information we need can be easily be obtained from the project. |
|
so this extension is just to help wrap invocation of helm with standard parameters? |
Yes. We should, of course, review which helm commands we will invoke but for the standard one Remark: As the quarkus helm extension supports also to include helm dependencies, then it will also be possible when we execute the |
|
This might not be as trivial as I initially thought as it most probably requires: #32567 |
|
Thanks. My suggestion, just by the bye, is that we always print out the helm command we're invoking (once parameters have been determined), to make the magic understandable. |
|
Added to quarkus-helm. |
|
Can you share the commit/PR where code and/or documented has been pushed please ? @iocanel |
|
@cmoulliard here you are: quarkiverse/quarkus-helm#249 |
Description
Currently, when using quarkus with helm, the user need to use the
helmcli in order to install, uninstall and update the chart.These commands do require some arguments that are boilerplate.
For example:
It would be great if we had a very simple cli plugin that could pickup the boilerplating values from the project. So, that the user would just need to write:
Implementation ideas
AFAIK Helm v3 is working purely on client side (there is no server side). This means that we pretty much have to reuse the
helmbinary, as I don't think there is a java library that we can use for installing the chart itself.The CLI itself could be a picocli moudle under the helm extension, and we could declarate that the extension brings in a cli plugin using something like: https://github.com/quarkiverse/quarkus-authzed-client/blob/main/runtime/src/main/resources/META-INF/quarkus-extension.yaml#L12
The text was updated successfully, but these errors were encountered: