Merge pull request #8 from ibuildthecloud/master

Don't return revision in counts and only return error/transitions states
This commit is contained in:
Darren Shepherd 2020-08-27 21:31:01 -07:00 committed by GitHub
commit f0b94379d1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -68,7 +68,7 @@ func (s *Summary) DeepCopy() *Summary {
type ItemCount struct { type ItemCount struct {
Summary Summary `json:"summary,omitempty"` Summary Summary `json:"summary,omitempty"`
Namespaces map[string]Summary `json:"namespaces,omitempty"` Namespaces map[string]Summary `json:"namespaces,omitempty"`
Revision int `json:"revision,omitempty"` Revision int `json:"-"`
} }
func (i *ItemCount) DeepCopy() *ItemCount { func (i *ItemCount) DeepCopy() *ItemCount {
@ -163,7 +163,7 @@ func (s *Store) Watch(apiOp *types.APIRequest, schema *types.APISchema, w types.
if _, _, _, oldSummary, ok := getInfo(oldObj); ok { if _, _, _, oldSummary, ok := getInfo(oldObj); ok {
if oldSummary.Transitioning == summary.Transitioning && if oldSummary.Transitioning == summary.Transitioning &&
oldSummary.Error == summary.Error && oldSummary.Error == summary.Error &&
oldSummary.State == summary.State { simpleState(oldSummary) == simpleState(summary) {
return nil return nil
} }
itemCount = removeCounts(itemCount, namespace, oldSummary) itemCount = removeCounts(itemCount, namespace, oldSummary)
@ -276,11 +276,11 @@ func removeSummary(counts Summary, summary summary.Summary) Summary {
if summary.Error { if summary.Error {
counts.Error-- counts.Error--
} }
if summary.State != "" { if simpleState(summary) != "" {
if counts.States == nil { if counts.States == nil {
counts.States = map[string]int{} counts.States = map[string]int{}
} }
counts.States[summary.State] -= 1 counts.States[simpleState(summary)] -= 1
} }
return counts return counts
} }
@ -293,15 +293,24 @@ func addSummary(counts Summary, summary summary.Summary) Summary {
if summary.Error { if summary.Error {
counts.Error++ counts.Error++
} }
if summary.State != "" { if simpleState(summary) != "" {
if counts.States == nil { if counts.States == nil {
counts.States = map[string]int{} counts.States = map[string]int{}
} }
counts.States[summary.State] += 1 counts.States[simpleState(summary)] += 1
} }
return counts return counts
} }
func simpleState(summary summary.Summary) string {
if summary.Error {
return "error"
} else if summary.Transitioning {
return "in-progress"
}
return ""
}
func (s *Store) getCount(apiOp *types.APIRequest) Count { func (s *Store) getCount(apiOp *types.APIRequest) Count {
counts := map[string]ItemCount{} counts := map[string]ItemCount{}