crossplane-runtime
crossplane-runtime copied to clipboard
A set of libraries for writing Crossplane controllers.
### What problem are you facing? Suppose you want to extend functionality of a resource of which you should not be managing the lifecycle of. To extend functionality of this...
### What problem are you facing? Crossplane users would benefit from the ability to offer service level objectives (SLOs) to their users. To do this they need MR related metrics....
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [github.com/evanphx/json-patch](https://togithub.com/evanphx/json-patch) | `v5.6.0+incompatible` -> `v5.9.0+incompatible` | [](https://docs.renovatebot.com/merge-confidence/)...
### What happened? During scalability testing efforts leading https://github.com/crossplane-contrib/provider-kubernetes/pull/203, I noticed that the controller runtime metrics like `workqueue_depth` and `workqueue_queue_duration_seconds` are not accurate or not reflecting the state of the...
### Description of your changes Using `GetCache()`'s `IndexField` method will use the passed context for the life-cycle of informers started at that moment. This is usually not what is desired,...
### What happened? The provider-terraform Create() implementation runs terraform apply which can take "a while" - certainly tens of seconds and often several minutes. If the provider pod is terminated...
### What happened? MR for GCP NodePool using clusterSelector and serviceAccountSelector oscillated between having only cluster resolved and having only serviceAccount resolved. https://github.com/crossplane/crossplane-runtime/blob/7d7a4e927336b3d601dc390d3e8f65358761e2c2/pkg/reconciler/managed/api.go#L188-L192 uses diff to build a patch for...
### What problem are you facing? Crossplane managed resources currently support referencing a `ProviderConfig` via its object name through `spec.providerConfigRef.name`. This requires the name to be known when creating the...
Add progress logs to the applicators: - print creations - print updates/patches with diff - be silent on noop. Based on https://github.com/crossplane/crossplane-runtime/pull/491 Signed-off-by: Dr. Stefan Schimanski
### Description of your changes We use this: ``` return reconcile.Result{Requeue: true}, errors.Wrap(r.client.Status().Update(ctx, managed), errUpdateManagedStatus) ``` This pattern means that the object is immediately (modulo queue delay) reconciled again. We...