-
Notifications
You must be signed in to change notification settings - Fork 3.4k
clustermesh: pass down targetPort to MCS-API derived service #36875
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
Conversation
4b77167
to
374fcf6
Compare
/test |
/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 the fix, and sorry for the delay in the review.
Overall makes sense to me. Please see the comment inline about the potential issue with the pointers to slice elements.
374fcf6
to
9a17611
Compare
No worries, I am just aiming for the 1.17 release but apart from that I don't have any specific deadlines. Thanks again for your thorough review as always 🫡. |
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! One alternative proposal that looks more straightforward to me, but feel free to ignore if you prefer the current one.
This commit pass down the targetPort in a MCS-API derived Service from the local Service. We only need targetPort for local Endpoints so we do not need to globally sync this as ports are synced from endpoints on remote clusters that already account for targetPort. Thus we just take the ports merged globally from the ServiceImport and add the context of the targetPorts if we need to on the local cluster. This also clarifies the EndpointSlice sync on target port as the targetPort field is now available into the slim Service copy done by Cilium be we shouldn't actually use it as targetPort may be a string and we do not have this info from remote clusters. Signed-off-by: Arthur Outhenin-Chalandre <arthur@cri.epita.fr>
9a17611
to
4d590e8
Compare
/test |
/ci-eks |
This commit pass down the targetPort in a MCS-API derived Service from the local Service. We only need targetPort for local Endpoints so we do not need to globally sync this as ports are synced from endpoints on remote clusters that already account for targetPort. Thus we just take the ports merged globally from the ServiceImport and add the context of the targetPorts if we need to on the local cluster.
This also clarifies the EndpointSlice sync on target port as the targetPort field is now available into the slim Service copy done by Cilium be we shouldn't actually use it as targetPort may be a string and we do not have this info from remote clusters.
Fixes: #36735