From ecae8953ff0cabb258f5dd733e31c086c1ccf6aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20St=C3=A4bler?= Date: Tue, 27 Aug 2024 11:05:32 +0200 Subject: [PATCH] AuthZ: Provide function to update AppliedEventPoliciesStatus based on a given list of applying policies (#8173) --- pkg/auth/event_policy.go | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/pkg/auth/event_policy.go b/pkg/auth/event_policy.go index 972eb1147ef..a9f1be751a2 100644 --- a/pkg/auth/event_policy.go +++ b/pkg/auth/event_policy.go @@ -316,18 +316,12 @@ type EventPolicyStatusMarker interface { MarkEventPoliciesTrueWithReason(reason, messageFormat string, messageA ...interface{}) } -func UpdateStatusWithEventPolicies(featureFlags feature.Flags, status *eventingduckv1.AppliedEventPoliciesStatus, statusMarker EventPolicyStatusMarker, eventPolicyLister listerseventingv1alpha1.EventPolicyLister, gvk schema.GroupVersionKind, objectMeta metav1.ObjectMeta) error { +func UpdateStatusWithProvidedEventPolicies(featureFlags feature.Flags, status *eventingduckv1.AppliedEventPoliciesStatus, statusMarker EventPolicyStatusMarker, applyingEventPolicies []*v1alpha1.EventPolicy) error { status.Policies = nil - applyingEvenPolicies, err := GetEventPoliciesForResource(eventPolicyLister, gvk, objectMeta) - if err != nil { - statusMarker.MarkEventPoliciesFailed("EventPoliciesGetFailed", "Failed to get applying event policies") - return fmt.Errorf("unable to get applying event policies: %w", err) - } - - if len(applyingEvenPolicies) > 0 { + if len(applyingEventPolicies) > 0 { unreadyEventPolicies := []string{} - for _, policy := range applyingEvenPolicies { + for _, policy := range applyingEventPolicies { if !policy.Status.IsReady() { unreadyEventPolicies = append(unreadyEventPolicies, policy.Name) } else { @@ -357,3 +351,13 @@ func UpdateStatusWithEventPolicies(featureFlags feature.Flags, status *eventingd return nil } + +func UpdateStatusWithEventPolicies(featureFlags feature.Flags, status *eventingduckv1.AppliedEventPoliciesStatus, statusMarker EventPolicyStatusMarker, eventPolicyLister listerseventingv1alpha1.EventPolicyLister, gvk schema.GroupVersionKind, objectMeta metav1.ObjectMeta) error { + applyingEvenPolicies, err := GetEventPoliciesForResource(eventPolicyLister, gvk, objectMeta) + if err != nil { + statusMarker.MarkEventPoliciesFailed("EventPoliciesGetFailed", "Failed to get applying event policies") + return fmt.Errorf("unable to get applying event policies: %w", err) + } + + return UpdateStatusWithProvidedEventPolicies(featureFlags, status, statusMarker, applyingEvenPolicies) +}