diff --git a/internal/controller/util/json_util.go b/internal/controller/util/json_util.go index 6d0c03fb6..e97a2020f 100644 --- a/internal/controller/util/json_util.go +++ b/internal/controller/util/json_util.go @@ -30,7 +30,7 @@ const ( pInterval = 100 ) -func EvaluateCheckHook(k8sClient client.Client, hook *kubeobjects.HookSpec, log logr.Logger) (bool, error) { +func EvaluateCheckHook(k8sClient client.Reader, hook *kubeobjects.HookSpec, log logr.Logger) (bool, error) { if hook.LabelSelector == nil && hook.NameSelector == "" { return false, fmt.Errorf("either nameSelector or labelSelector should be provided to get resources") } @@ -91,7 +91,7 @@ func EvaluateCheckHookForObjects(objs []client.Object, hook *kubeobjects.HookSpe return finalRes, err } -func getResourcesList(k8sClient client.Client, hook *kubeobjects.HookSpec) ([]client.Object, error) { +func getResourcesList(k8sClient client.Reader, hook *kubeobjects.HookSpec) ([]client.Object, error) { resourceList := make([]client.Object, 0) var objList client.ObjectList @@ -128,14 +128,14 @@ func getResourcesList(k8sClient client.Client, hook *kubeobjects.HookSpec) ([]cl return resourceList, nil } -func getResourcesUsingLabelSelector(c client.Client, hook *kubeobjects.HookSpec, +func getResourcesUsingLabelSelector(c client.Reader, hook *kubeobjects.HookSpec, objList client.ObjectList, ) ([]client.Object, error) { filteredObjs := make([]client.Object, 0) selector, err := metav1.LabelSelectorAsSelector(hook.LabelSelector) if err != nil { - return filteredObjs, fmt.Errorf("error during labelSelector to selector conversion") + return filteredObjs, fmt.Errorf("error converting labelSelector to selector") } listOps := &client.ListOptions{ @@ -145,13 +145,13 @@ func getResourcesUsingLabelSelector(c client.Client, hook *kubeobjects.HookSpec, err = c.List(context.Background(), objList, listOps) if err != nil { - return filteredObjs, err + return filteredObjs, fmt.Errorf("error listing resources using labelSelector: %w", err) } return getObjectsBasedOnType(objList), nil } -func getResourcesUsingNameSelector(c client.Client, hook *kubeobjects.HookSpec, +func getResourcesUsingNameSelector(c client.Reader, hook *kubeobjects.HookSpec, objList client.ObjectList, ) ([]client.Object, error) { filteredObjs := make([]client.Object, 0) @@ -169,7 +169,7 @@ func getResourcesUsingNameSelector(c client.Client, hook *kubeobjects.HookSpec, err = c.List(context.Background(), objList, listOps) if err != nil { - return filteredObjs, err + return filteredObjs, fmt.Errorf("error listing resources using nameSelector: %w", err) } return getObjectsBasedOnType(objList), nil diff --git a/internal/controller/vrg_kubeobjects.go b/internal/controller/vrg_kubeobjects.go index da0a52996..2d4fba5c3 100644 --- a/internal/controller/vrg_kubeobjects.go +++ b/internal/controller/vrg_kubeobjects.go @@ -288,7 +288,7 @@ func (v *VRGInstance) kubeObjectsCaptureStartOrResume( func (v *VRGInstance) executeHook(hook kubeobjects.HookSpec, log1 logr.Logger) error { if hook.Type == "check" { - hookResult, err := util.EvaluateCheckHook(v.reconciler.Client, &hook, log1) + hookResult, err := util.EvaluateCheckHook(v.reconciler.APIReader, &hook, log1) if err != nil { log1.Error(err, "error occurred during check hook ")