Revert syncer back to SSA patch to correctly remove fields #1530
+10
−8
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
Merge patch does not support removal of the fields. This change reverts syncer to the original SSA patch implementation, to allow CAPIProvider to always enforce spec of the downstream resource.
To support fields removal in syncer, an alternative is to use
patch.Helper
implementation, to allowCAPIProvider
to always enforce spec of the downstream resource, but it also enforcesstatus
changes, which overrides downstream provider status. SSA patch does not have this side effect, and is simpler than implementing similar logic.This change should also stabilize the short e2e CI, where failing OCI fetchConfig url was persisted, causing test cases running after the one which set the field fail on expectation of docker provider being healthy.
Depends on #1548 (comment)
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 #
Special notes for your reviewer:
Checklist: