Skip to content
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

Configure controllers to watch ASO resources and queue reconcile requests for the appropriate CAPZ resources #4339

Open
Tracked by #3402
nojnhuh opened this issue Dec 5, 2023 · 3 comments
Labels
kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release.
Milestone

Comments

@nojnhuh
Copy link
Contributor

nojnhuh commented Dec 5, 2023

/kind cleanup

What needs cleanup:
Currently, CAPZ doesn't use the "watch" feature of Kubernetes clients to react to changes to ASO resources asynchronously. Instead, CAPZ has been liberally returning reconciliation Results with a defined RequeueAfter to effectively poll for status. These RequeueAfter values introduce some potential dead time where an ASO resource has been updated but the CAPZ controller is still waiting until RequeueAfter to re-reconcile the CAPZ resource. This extra time could be cut down with a watch set up on the ASO resources.

Describe the solution you'd like
Configure each controller in its SetupWithManager to watch the appropriate ASO resources and enqueue reconcile requests. #4340 would make this fairly straightforward with the Owns() method of the controller builder.

Anything else you would like to add:
One open question: Should CAPZ watch BYO ASO resources and queue requests based on changes to them?

@k8s-ci-robot k8s-ci-robot added the kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. label Dec 5, 2023
@nojnhuh nojnhuh added this to the next milestone Jan 3, 2024
@mboersma mboersma modified the milestones: next, v1.14 Jan 19, 2024
@nojnhuh nojnhuh modified the milestones: v1.14, next Feb 29, 2024
@mboersma mboersma modified the milestones: next, v1.15 Mar 13, 2024
@dtzar
Copy link
Contributor

dtzar commented Mar 28, 2024

Sounds like this would help with at least the time until the resources are cleaned up re: #4570

@dtzar dtzar added the priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. label Mar 28, 2024
@mboersma mboersma moved this to Todo in CAPZ Planning Apr 4, 2024
@dtzar dtzar modified the milestones: v1.15, next May 2, 2024
@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jul 31, 2024
@dtzar
Copy link
Contributor

dtzar commented Jul 31, 2024

/remove-lifecycle stale

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jul 31, 2024
@mboersma mboersma modified the milestones: next, v1.17 Aug 8, 2024
@dtzar dtzar modified the milestones: v1.17, v1.18 Sep 20, 2024
@dtzar dtzar modified the milestones: v1.18, next Nov 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release.
Projects
Status: Todo
Development

No branches or pull requests

5 participants