From 977dcc38a248cfe2b312e1892e3af7c05e087752 Mon Sep 17 00:00:00 2001 From: Prateek Pandey Date: Thu, 10 Nov 2022 20:40:29 +0530 Subject: [PATCH] fix: set rule response status as skip if precondition failed (#5162) exisiting UpdateRequest gets delete if precondition failed for the matched rule in case of skip rule response. Signed-off-by: Prateek Pandey Signed-off-by: Prateek Pandey --- pkg/engine/background.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkg/engine/background.go b/pkg/engine/background.go index d1bde7fd96..73b55c7bb9 100644 --- a/pkg/engine/background.go +++ b/pkg/engine/background.go @@ -131,7 +131,15 @@ func filterRule(rule kyvernov1.Rule, policyContext *PolicyContext) *response.Rul // evaluate pre-conditions if !variables.EvaluateConditions(logger, ctx, copyConditions) { logger.V(4).Info("skip rule as preconditions are not met", "rule", ruleCopy.Name) - return nil + return &response.RuleResponse{ + Name: ruleCopy.Name, + Type: ruleType, + Status: response.RuleStatusSkip, + RuleStats: response.RuleStats{ + ProcessingTime: time.Since(startTime), + RuleExecutionTimestamp: startTime.Unix(), + }, + } } // build rule Response