From 12c5274718b978df487189632932baab2190b6c8 Mon Sep 17 00:00:00 2001 From: Maxim Goncharenko Date: Fri, 17 May 2019 14:51:54 +0300 Subject: [PATCH] I have applied notes from review --- pkg/engine/validation.go | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/pkg/engine/validation.go b/pkg/engine/validation.go index b218823ea4..2927fe0c3a 100644 --- a/pkg/engine/validation.go +++ b/pkg/engine/validation.go @@ -73,7 +73,13 @@ func Validate(policy kubepolicy.Policy, rawResource []byte, gvk metav1.GroupVers } func validateMap(resourcePart, patternPart interface{}) bool { - pattern := patternPart.(map[string]interface{}) + pattern, ok := patternPart.(map[string]interface{}) + + if !ok { + fmt.Printf("Validating error: expected Map, found %T\n", patternPart) + return false + } + resource, ok := resourcePart.(map[string]interface{}) if !ok { @@ -95,7 +101,13 @@ func validateMap(resourcePart, patternPart interface{}) bool { } func validateArray(resourcePart, patternPart interface{}) bool { - patternArray := patternPart.([]interface{}) + patternArray, ok := patternPart.([]interface{}) + + if !ok { + fmt.Printf("Validating error: expected array, found %T\n", patternPart) + return false + } + resourceArray, ok := resourcePart.([]interface{}) if !ok {