-
Notifications
You must be signed in to change notification settings - Fork 16
[release/v25.1.x] pkg/kube: extract Syncer from lifecycle client
#1048
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
|
This PR is stale because it has been open 5 days with no activity. Remove stale label or comment or this will be closed in 5 days. |
|
This PR is stale because it has been open 5 days with no activity. Remove stale label or comment or this will be closed in 5 days. |
|
This PR is stale because it has been open 5 days with no activity. Remove stale label or comment or this will be closed in 5 days. |
|
This PR is stale because it has been open 5 days with no activity. Remove stale label or comment or this will be closed in 5 days. |
|
This PR was closed because it has been stalled for 5 days with no activity. |
|
This is likely failing due to needing #1109 |
a3d1af8 to
ceac074
Compare
|
This PR is stale because it has been open 5 days with no activity. Remove stale label or comment or this will be closed in 5 days. |
|
This is also failing due to missing #1121 |
Extract the simple syncing logic from `lifecycle.ResourceClient` into a generic and dedicated `kube.Syncer` struct. Future work (Console CR) will utilize this new struct to implement the bulk of its logic. Additionally fix a subtle bug in the existing sync algorithm. As `client.InNamespace` was never provided to the `ResourceClient`'s `List` calls, it would default to `"default"`. As the tests used the default namespace, this issue wasn't visible. The primary trouble is that `Sync` would not correct delete resources due to `List` not returning them. It's likely NodePools were affected in some way but how is unclear. (cherry picked from commit 4cf6660)
Add validation to `kube.Syncer` that asserts that Cluster scoped objects do NOT have `.Namespace` set. Setting .Namespace on cluster scoped objects causes a key mismatch in the `toDelete` map which results in the syncer deleting objects it's just created. (cherry picked from commit 43ad1a4)
ceac074 to
e3a1404
Compare
Backport
This will backport the following commits from
maintorelease/v25.1.x:Questions ?
Please refer to the Backport tool documentation