-
Notifications
You must be signed in to change notification settings - Fork 702
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
Cannot view newly created flux 2 package from UX #4173
Comments
ah, its the GetInstalledPackageResourceRefs API that is failing:
|
Ah, I think I got to the bottom of it. A bit of history first: Prior to (I am linking to the file in my most recent PR, where I switched to using native Flux types, but you can find same code in main too)
This logic was coded by looking at flux public docs Rather, how about we somehow make the |
I have temporarily solved this problem by just deleting I understand the concern that @gfichtenholt mentioned:
However, we are using We really want to use both(using By the way, |
Thank you for your feedback.
Would love to understand why you had to do that. As far as I can tell, setting targetNamespace or not setting it are both perfectly valid use cases for flux. One user might prefer the field set (i.e. what kubeapps is doing today). Another user (you?) might prefer the field NOT set. Difficult to accommodate both :-). Regardless, whether or not to set the targetNamespace when kubeapps is creating a CR may be argued is a separate issue from the one that causes the error in this case. You may decide to file an issue asking not to set the targetNamespace on CRs that kubeapps creates, state your reasoning, etc. but that would be a separate issue we can discuss
If you examine the code snippet for
I am not convinced it is yet.
Would love to consider your use cases, if you can point me to them. Thanks |
cough, yes, the first thing I plan to fix is that error - updating to use Rafa's component which cleans the error to present something useful to the UX (something we've wanted to do since updating to use the apis server).
To help me understand, can you explain why you're keen to explicitly set the
Yes, we could explicitly compute the default value to match what flux does... and as you say, since Kubeapps is just a frontend and people could create the
Yep, I'm sure you'll find a sane way there.
This is my second preference too, if you're not keen to remove the
We want to do the best we can to interact with any
Right, I agree - we don't want to encode any conventions that make assumptions we can avoid (like just pretending That is, the problem from my POV is that, because we are explicitly setting the So, for example, I think @hongkunyoo's main use-case that has been mentioned is that they are wanting to interact with HelmReleases via both kubeapps and kubectl. Pushing that even further, if I as a user, want to also use the So in summary, I'm keen to do what Flux does by default... if a user creates a Anyway, see what you think Greg. Up to you to decide, I just want to be sure we think what a user would expect when creating an app in Kubeapps. I'll approve either way, unless others have other thoughts? |
by that you mean Flux CLI? |
Here is what I think:
|
To answer 'can you explain why you're keen to explicitly set the TargetNamespace (I think you said previously because you prefer to be explicit and avoid defaults) while you're also keen not to set the ReleaseName'. At the time I was coding this part of the plug-in, there were 3 different and potentially distinct namespaces that I had to deal with (discussion in #3640 (comment)). The issue was "in my face" so to speak, I had to make a choice to in order to move on. We had a discussion, I interpreted the outcome of this discussion in one way (turns out possibly mis-interpreted), coded it up and moved on. With |
I think I made it little complicated by suggesting some incorrect solution. On the other hand, as @absoludity mentioned, I would like to have same helm release name as |
thank you, understood. I suggest we fix this issue the way I suggested above. In addition, I will file a new issue 'do not set targetNamespace, but set the releaseName field when creating Flux HelmRelease CR per customer request or default Flux CLI behavior' or something similar and assign to myself. |
Yes - agree 100% with everything here. |
Ah, whew! (wipes cold sweat off his forehead). Thank you! Will proceed as stated. JUst FYI: checked what Flux CLI does by default:
So:
This doesn't mean we have to do exactly the same thing. But that discussion will go into a new issue |
Thanks Greg. Let us know if this is a small change that you'll be able to do soon. We'll plan to release with this fixed (though the UX isn't finished for flux, it'll unblock people trying it out). |
ETA 1 day. Working out all unit test issues |
Great, thanks Greg. No stress if it takes a bit longer, just wanted to be sure you knew. |
yes, I knew. Working on unit/integration tests as usual... production code = 25% of the work, tests = 75% |
Cannot view newly created flux 2 package from UX
Description:
Kubeapps UX fails to display a newly installed flux2 package
Steps to reproduce the issue:
HelmRepository
manually viakubectl
(I used bitnami's repo)Expected result:
Created package can be viewed
Actual result:
The UI displays an error returned from the plugin:
Application not found: Unable to get the resource refs for the package "test-apache" using the plugin "fluxv2.packages": rpc error: code = NotFound desc = Unable to find Helm release "test-apache" in namespace "kubeapps-user-namespace": release: not found
Additional information you deem important (e.g. issue happens only occasionally):
The issue appears to be that the plugin code currently assumes that the flux HelmRelease and the actual helm release object have the same name, but they do not:
The reason for the different names is due to the defaults that flux uses depending whether the
targetNamespace
is set on the release as outlined on #4172 .The text was updated successfully, but these errors were encountered: