-
Notifications
You must be signed in to change notification settings - Fork 310
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
move subnetID reconcilation for AWSEndpointServices #988
move subnetID reconcilation for AWSEndpointServices #988
Conversation
return []reconcile.Request{} | ||
} | ||
|
||
// This is a pretty fragile but without a client or context with which to list the |
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.
An alternate would be to use a client and list the endpointservices here, the main drawback is that we can't handle errors
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.
Yeah, I thought of this but we still don't avoid a fragile mapping in that the HCP namespace has to be assumed from the nodepool Namespace and the node pool clusterName. All in all, it added complexity and was still fragile.
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.
I thought of this but we still don't avoid a fragile mapping in that the HCP namespace has to be assumed from the nodepool Namespace and the node pool clusterName
Could fetch HC from nodePool.spec.clusterName.
Then HCP_namespace(HC)
is a stronger contract.
Then list endpoints.
?
That said I think I lean towards the simplicity of current approach.
It'd be good though to document this 2 dependents aws endpoints controllers at some point may be here https://hypershift-docs.netlify.app/reference/controller-architecture/
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.
Sounds like this is acceptable for now
b76aeef
to
53ea622
Compare
53ea622
to
5153d38
Compare
/retest |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: alvaroaleman, sjenning The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
4 similar comments
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
@sjenning: The following test failed, say
Full PR test history. Your PR dashboard. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
What this PR does / why we need it:
#951 accidentally worked due to the
NodePool
being updated after the creation of theAWSEndpointServices
, however, reconciliation of.spec.subnetIDs
onAWSEndpointServices
currently happens on a controller that doesn't watchAWSEndpointServices
.This moves the reconciliation of
subnetIDs
to theAWSEndpointServiceReconciler
and adds aNodePool
watch to that controller.The mapping of
NodePools
<->AWSEndpointServices
is a little fragile. I'm open to suggestions.Which issue(s) this PR fixes (optional, use
fixes #<issue_number>(, fixes #<issue_number>, ...)
format, where issue_number might be a GitHub issue, or a Jira story:Fixes #
Checklist