From 01dd7b7b6854a45265016bb7871059fc384123db Mon Sep 17 00:00:00 2001 From: Igor Beliakov <46579601+weisdd@users.noreply.github.com> Date: Thu, 25 Aug 2022 16:34:06 +0200 Subject: [PATCH] Omit empty results, make pretty output less verbose (#767) * Pretty output: remove 2 leading line breaks and 1 trailing after container results Signed-off-by: Igor Beliakov * validator: don't add empty results in ApplyAllSchemaChecksToAllResources Signed-off-by: Igor Beliakov * Fix MockPod() fixture: - Since now result is considered non-empty only if Kind and Name are set, needed to adjust MockPod() to make it contain Name. Signed-off-by: Igor Beliakov Co-authored-by: Robert Brennan --- pkg/validator/output.go | 4 ++-- pkg/validator/schema.go | 4 +++- test/fixtures.go | 3 +++ 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/pkg/validator/output.go b/pkg/validator/output.go index bff4a474..3e328a6e 100644 --- a/pkg/validator/output.go +++ b/pkg/validator/output.go @@ -188,7 +188,7 @@ func fillString(id string, l int) string { // GetPrettyOutput returns a human-readable string func (res AuditData) GetPrettyOutput(useColor bool) string { color.NoColor = !useColor - str := titleColor.Sprint(fmt.Sprintf("\n\nPolaris audited %s %s at %s\n", res.SourceType, res.SourceName, res.AuditTime)) + str := titleColor.Sprint(fmt.Sprintf("Polaris audited %s %s at %s\n", res.SourceType, res.SourceName, res.AuditTime)) str += color.CyanString(fmt.Sprintf(" Nodes: %d | Namespaces: %d | Controllers: %d\n", res.ClusterInfo.Nodes, res.ClusterInfo.Namespaces, res.ClusterInfo.Controllers)) str += color.GreenString(fmt.Sprintf(" Final score: %d\n", res.Score)) str += "\n" @@ -217,7 +217,7 @@ func (res Result) GetPrettyOutput() string { func (res PodResult) GetPrettyOutput() string { str := res.Results.GetPrettyOutput() for _, cont := range res.ContainerResults { - str += cont.GetPrettyOutput() + "\n" + str += cont.GetPrettyOutput() } return str } diff --git a/pkg/validator/schema.go b/pkg/validator/schema.go index d0eb775c..41f0eb65 100644 --- a/pkg/validator/schema.go +++ b/pkg/validator/schema.go @@ -173,7 +173,9 @@ func ApplyAllSchemaChecksToAllResources(conf *config.Configuration, resourceProv if err != nil { return results, err } - results = append(results, result) + if result.Kind != "" && result.Name != "" { + results = append(results, result) + } } return results, nil } diff --git a/test/fixtures.go b/test/fixtures.go index 102d8277..7d724dee 100644 --- a/test/fixtures.go +++ b/test/fixtures.go @@ -60,6 +60,9 @@ func MockContainer(name string) corev1.Container { func MockPod() corev1.Pod { c1 := MockContainer("test") p := corev1.Pod{ + ObjectMeta: metav1.ObjectMeta{ + Name: "test", + }, Spec: corev1.PodSpec{ Containers: []corev1.Container{ c1,