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

[Bug] Reinstalling a Promise where the API Plural changes prevents kratix from reconciling resource requests #27

Closed
aclevername opened this issue Aug 24, 2023 · 0 comments · Fixed by #35
Labels
bug Something isn't working

Comments

@aclevername
Copy link
Member

aclevername commented Aug 24, 2023

Steps to reproduce:

  1. Install a promise
  2. Delete the promise
  3. Update the promise.yaml so the plural of the API changes
  4. Install the promise
  5. Make a resource request

We want a pipeline to get triggered for the request, but in reality nothing happens. Kratix is misbehaving.

Underlying Issue

Kubernetes clients cache a history of known CRDs, for example:
Screenshot 2023-08-24 at 12 52 12

If you delete the CRD and create it again, with the plural changed the cache doesn't get updated, preventing the get from working:
Screenshot 2023-08-24 at 12 53 34

This same issue is happening internally in the Kratix controller. We watch for the new CRD created by the Promise, but because we've cached the old plural we are unable to reconcile as we try to fetch the old plural instead of the new.

Workaround

Restarting the Kratix pod resolves the issue as this resets the cache.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant