-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
🌱 MD reconciler: improve integration test #7596
🌱 MD reconciler: improve integration test #7596
Conversation
Signed-off-by: Stefan Büringer buringerst@vmware.com
@@ -340,8 +341,8 @@ func TestMachineDeploymentReconciler(t *testing.T) { | |||
// expect old MachineSets with old labels to be deleted | |||
// | |||
oldLabels := deployment.Spec.Selector.MatchLabels | |||
oldLabels[clusterv1.MachineDeploymentLabelName] = deployment.Name |
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.
oldLabels is only used to validate somewhere below that all MachineSets with the oldLabels have been deleted.
But those MachineSets will never have the MachineDeploymentLabelName
set with the current code.
So this PR ensures we have a unique set of labels in selector which are then changed to other labels with no overlap.
This way we can clearly verify that the old MachineSets have been deleted.
The test did not fail as:
- oldLabels never matched MachineSets vs. (current test)
- oldLabels don't match a MachineSet after MachineSet deletion (test after this PR)
are both accepted.
Please note: #7591 will ensure that MachineDeploymentLabelName
will be set on all MachineSets, but this would break the current validation as the oldLabels would match old and new MachineSets.
/assign @fabriziopandini |
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 catching this!
/lgtm
/approve
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: fabriziopandini 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 |
/cherry-pick release-1.3 |
@sbueringer: new pull request created: #7602 In response to this:
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. |
/cherry-pick release-1.2 |
@sbueringer: new pull request created: #7607 In response to this:
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. |
Signed-off-by: Stefan Büringer buringerst@vmware.com
What this PR does / why we need it:
Extracted from #7591 to make clear that the unit test validation was broken before any prod code changes.
Which issue(s) this PR fixes (optional, in
fixes #<issue number>(, fixes #<issue_number>, ...)
format, will close the issue(s) when PR gets merged):Fixes #