no reconcile is triggered for machine status/metadata update
logs are updated for much easier tracking
new retry period ConflictRetry is introduced, which is used only when update fails due to conflicts
no machine reconcile on node update events if machine is already Terminating . node events are generated due to changing node conditions or updating of spec.taints
machine reconcile are triggered on update (create/delete) of essential taints .. for example critical-component-taint only..
Some other minor changes have been made as well.
Overall the PR reduces the number of object has been modified... occurrences which saves CPU cycles and improves readability. For any unavoidable occurrences, quick retry is done to update the machine/node object.
Which issue(s) this PR fixes:
Fixes #767
Fixes #838
Special notes for your reviewer:
With these changes machine reconcile couldn't be triggered by annotating the machine object now. A restart of MCM or spec update would be needed to trigger it.
[x] run Integration tests with new provider azure code
[x] try with cluster autoscaler
Release note:
machine controller won't reconcile machine on non-spec update events
What this PR does / why we need it:
This PR does the following:
ConflictRetry
is introduced, which is used only when update fails due to conflictsTerminating
. node events are generated due to changing node conditions or updating of spec.taintsessential taints
.. for examplecritical-component-taint
only..Some other minor changes have been made as well.
Overall the PR reduces the number of
object has been modified...
occurrences which saves CPU cycles and improves readability. For any unavoidable occurrences, quick retry is done to update the machine/node object.Which issue(s) this PR fixes: Fixes #767 Fixes #838
Special notes for your reviewer:
With these changes machine reconcile couldn't be triggered by annotating the machine object now. A restart of MCM or spec update would be needed to trigger it.
Release note: