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

Refine website controller mechanisms #117

Merged
merged 5 commits into from
Jan 25, 2024
Merged

Refine website controller mechanisms #117

merged 5 commits into from
Jan 25, 2024

Conversation

timebertt
Copy link
Owner

What this PR does / why we need it:

This PR improves several aspects of the website controller's mechanisms:

  • only update the status if needed
  • add Website.status.lastTransitionTime indicating when observedGeneration and/or phase changed the last time (useful for verifying reconciliation latency measurements)
  • refine predicates of owned objects
  • wait for the owned deployment to observe the new generation, and only set the website to ready afterward

This prepares the controller for reconciliation latency measurements during load tests, used for evaluation.

This updates the status centrally and avoids status updates if nothing changed.
Also, this allows adding a transition timestamp to the status as we can detect when the status changed.
- replace custom predicates with `predicate.GenerationChangedPredicate`
- also watch spec changes to `Deployments` to reconcile them back if needed
This allows us to track how long website reconciliations take as observed by the controller itself.
@timebertt timebertt enabled auto-merge (squash) January 25, 2024 14:34
@timebertt timebertt merged commit 2f90345 into main Jan 25, 2024
3 checks passed
@timebertt timebertt deleted the website-controller branch January 25, 2024 14:37
@timebertt timebertt added the enhancement New feature or request label Jan 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant