From d0217a3faf4e1ce4464ca3ab19dd74e5d7419544 Mon Sep 17 00:00:00 2001 From: shravan Date: Tue, 25 Feb 2020 23:57:16 +0530 Subject: [PATCH] 527 minor fixes --- pkg/policyStatus/0_main.go | 1 + pkg/policyStatus/generatedResourceCount.go | 8 +++++++- pkg/policyStatus/violationCount.go | 8 +++++++- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/pkg/policyStatus/0_main.go b/pkg/policyStatus/0_main.go index 75e94b2c20..8f7987d882 100644 --- a/pkg/policyStatus/0_main.go +++ b/pkg/policyStatus/0_main.go @@ -37,6 +37,7 @@ func NewSync(c *versioned.Clientset, sc <-chan struct{}, pms *policystore.Policy stop: sc, client: c, policyStore: pms, + listener: make(chan statusUpdater), } } diff --git a/pkg/policyStatus/generatedResourceCount.go b/pkg/policyStatus/generatedResourceCount.go index 9f5d013437..f951cf759c 100644 --- a/pkg/policyStatus/generatedResourceCount.go +++ b/pkg/policyStatus/generatedResourceCount.go @@ -16,7 +16,13 @@ func (s *Sync) UpdatePolicyStatusWithGeneratedResourceCount(generateRequest v1.G func (vc *generatedResourceCount) updateStatus() { vc.sync.cache.mutex.Lock() - status := vc.sync.cache.data[vc.generateRequest.Spec.Policy] + status, exist := vc.sync.cache.data[vc.generateRequest.Spec.Policy] + if !exist { + policy, _ := vc.sync.policyStore.Get(vc.generateRequest.Spec.Policy) + if policy != nil { + status = policy.Status + } + } status.ResourcesGeneratedCount += len(vc.generateRequest.Status.GeneratedResources) diff --git a/pkg/policyStatus/violationCount.go b/pkg/policyStatus/violationCount.go index 93f02fded1..dd7ed30574 100644 --- a/pkg/policyStatus/violationCount.go +++ b/pkg/policyStatus/violationCount.go @@ -18,7 +18,13 @@ func (s *Sync) UpdatePolicyStatusWithViolationCount(policyName string, violatedR func (vc *violationCount) updateStatus() { vc.sync.cache.mutex.Lock() - status := vc.sync.cache.data[vc.policyName] + status, exist := vc.sync.cache.data[vc.policyName] + if !exist { + policy, _ := vc.sync.policyStore.Get(vc.policyName) + if policy != nil { + status = policy.Status + } + } var ruleNameToViolations = make(map[string]int) for _, rule := range vc.violatedRules {