-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
envoy: Better track updates when qualifying Envoy resource names #29020
envoy: Better track updates when qualifying Envoy resource names #29020
Conversation
/test |
a890abc
to
1847dbc
Compare
Fixed |
/test |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for fixing the issue! I won't block this PR for a personal opinion on the "pointer passing" part! 😃
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the fix! 👍
I've left a couple of comments inline, but I understand that, being also a bugfix, we might not want to block this further. Maybe we can improve the updated
pattern in a follow up PR?
1847dbc
to
f2b7388
Compare
Factor out TcpProxy resource name qualifications to a helper function and check for nil pointers. Signed-off-by: Jarno Rajahalme <jarno@isovalent.com>
Pass a boolean "updated" pointer to api.ResourceQualifiedName() in order to better track if updates were done or not. In the case of Http Connection Manager RouteConfig the need for the update was ignored, so this is a bug fix for that. This omission hid a bug where HCM RouteConfigs in our examples (and tests) refer to "envoy-admin" cluster while unqualified cluster names should no longer be accessible to CEC/CCEC. Fix this by renaming "envoy-admin" as "/envoy-admin". This requres all references to "envoy-admin" cluster to be changed to "/envoy-admin", including in any CEC/CCEC users may have. Factor out the TCP proxy qualification logic to qualifyTcpProxyResourceNames() which is similar to qualifyRouteConfigurationResourceNames() to keep the main logic simpler. Signed-off-by: Jarno Rajahalme <jarno@isovalent.com>
f2b7388
to
bcaeb41
Compare
/test |
Just noticed (due to a failing test in I see two paths to fis this:
Both are breaking changes for any user CEC/CCEC that may exist. As such, 1. seems to be a better way forward, so I'll do it in this PR, open to your feedback of cause :-) (ping @mhofstetter) |
Makes sense. Thanks a lot! |
Pass a boolean "updated" pointer to api.ResourceQualifiedName() in order to better track if updates were done or not.
In the case of Http Connection Manager RouteConfig the need for the update was ignored, so this is a bug fix for that.
Factor out the TCP proxy qualification logic to
qualifyTcpProxyResourceNames() which is similar to qualifyRouteConfigurationResourceNames() to keep the main logic simpler.
Fixes: #26037