From ec0d7f40bf60775bc52ec5e61cbefda34bc63c1a Mon Sep 17 00:00:00 2001 From: Qi Wang Date: Tue, 11 Nov 2025 11:39:15 -0500 Subject: [PATCH] OCPBUGS-63307: Add ConfigDriftMonitorStoppedTooOften matcher Add ConfigDriftMonitorStoppedTooOften matcher for image signature validation tests. Fix the run failure ``` 8 events happened too frequently event happened 24 times, something is wrong: node/ci-op-7b9qs4mj-863c8-hkhwh-worker-a-bm2wt hmsg/8a96eaa4fd - reason/ConfigDriftMonitorStopped Config Drift Monitor stopped (19:47:32Z) result=reject ``` Signed-off-by: Qi Wang --- .../duplicated_event_patterns.go | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/pkg/monitortestlibrary/pathologicaleventlibrary/duplicated_event_patterns.go b/pkg/monitortestlibrary/pathologicaleventlibrary/duplicated_event_patterns.go index 7e86cac87ee5..4762422d4b91 100644 --- a/pkg/monitortestlibrary/pathologicaleventlibrary/duplicated_event_patterns.go +++ b/pkg/monitortestlibrary/pathologicaleventlibrary/duplicated_event_patterns.go @@ -502,6 +502,9 @@ func NewUniversalPathologicalEventMatchers(kubeConfig *rest.Config, finalInterva twoNodeEtcdEndpointsMatcher := newTwoNodeEtcdEndpointsConfigMissingEventMatcher(finalIntervals) registry.AddPathologicalEventMatcherOrDie(twoNodeEtcdEndpointsMatcher) + newConfigDriftMonitorStoppedTooOftenEventMatcher := newConfigDriftMonitorStoppedTooOftenEventMatcher(finalIntervals) + registry.AddPathologicalEventMatcherOrDie(newConfigDriftMonitorStoppedTooOftenEventMatcher) + return registry } @@ -1207,3 +1210,23 @@ func newCrioReloadedTooOftenEventMatcher(finalInternals monitorapi.Intervals) Ev allowIfWithinIntervals: crioReloadedIntervals, } } + +func newConfigDriftMonitorStoppedTooOftenEventMatcher(finalIntervals monitorapi.Intervals) EventMatcher { + configDriftMonitorStoppedIntervals := finalIntervals.Filter(func(eventInterval monitorapi.Interval) bool { + return eventInterval.Source == monitorapi.SourceE2ETest && + strings.Contains(eventInterval.Locator.Keys[monitorapi.LocatorE2ETestKey], "SigstoreImageVerification") + }) + for i := range configDriftMonitorStoppedIntervals { + configDriftMonitorStoppedIntervals[i].To = configDriftMonitorStoppedIntervals[i].To.Add(time.Second * -30) + configDriftMonitorStoppedIntervals[i].From = configDriftMonitorStoppedIntervals[i].From.Add(time.Second * -30) + } + + return &OverlapOtherIntervalsPathologicalEventMatcher{ + delegate: &SimplePathologicalEventMatcher{ + name: "ConfigDriftMonitorStoppedTooOften", + messageReasonRegex: regexp.MustCompile(`^ConfigDriftMonitorStopped$`), + jira: "https://issues.redhat.com/browse/OCPBUGS-58376", + }, + allowIfWithinIntervals: configDriftMonitorStoppedIntervals, + } +}