Fix noisy reconcile errors (#275)

Certain errors are better ignored to instead rely on the child resource
to trigger a new reconcile.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

## Release Notes

* **Bug Fixes**
* Enhanced error handling in group resolution to prevent silent failures
and ensure proper error notification
* Improved system resilience by gracefully handling missing or
unavailable Kubernetes resources without triggering reconciliation
failures
* Optimized setup key processing workflow to enhance overall system
robustness and reliability

<!-- review_stack_entry_start -->

[![Review Change
Stack](https://storage.googleapis.com/coderabbit_public_assets/review-stack-in-coderabbit-ui.svg)](https://app.coderabbit.ai/change-stack/netbirdio/kubernetes-operator/pull/275?utm_source=github_walkthrough&utm_medium=github&utm_campaign=change_stack)

<!-- review_stack_entry_end -->

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
This commit is contained in:
Philip Laine
2026-05-29 09:58:14 +02:00
committed by GitHub
parent dcd9dfdb4e
commit c5eaa832d3
3 changed files with 10 additions and 8 deletions
+4 -5
View File
@@ -53,11 +53,6 @@ func (r *SetupKeyReconciler) Reconcile(ctx context.Context, req ctrl.Request) (c
return r.reconcileDelete(ctx, sp, setupKey)
}
autoGroupIDs, err := netbirdutil.GetGroupIDs(ctx, r.Client, r.Netbird, setupKey.Spec.AutoGroups, setupKey.Namespace)
if err != nil {
return ctrl.Result{}, err
}
controllerutil.AddFinalizer(setupKey, k8sutil.Finalizer("setupkey"))
err = sp.Patch(ctx, setupKey)
if err != nil {
@@ -65,6 +60,10 @@ func (r *SetupKeyReconciler) Reconcile(ctx context.Context, req ctrl.Request) (c
}
// Check if setup key is up to date.
autoGroupIDs, err := netbirdutil.GetGroupIDs(ctx, r.Client, r.Netbird, setupKey.Spec.AutoGroups, setupKey.Namespace)
if err != nil {
return ctrl.Result{}, err
}
ok, err := func() (bool, error) {
if setupKey.Status.SetupKeyID == "" {
return false, nil