Skip to content

Commit 922f7c8

Browse files
authored
Merge pull request #425 from replicatedhq/divolgin/results
Analyzers should not return multiple results
2 parents 614aed5 + afa08e5 commit 922f7c8

File tree

2 files changed

+18
-18
lines changed

2 files changed

+18
-18
lines changed

pkg/analyze/host_disk_usage.go

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,9 @@ func (a *AnalyzeHostDiskUsage) Analyze(getCollectedFileContents func(string) ([]
3838
return nil, errors.Wrapf(err, "failed to unmarshal disk usage info from %s", key)
3939
}
4040

41-
var coll resultCollector
41+
result := AnalyzeResult{
42+
Title: a.Title(),
43+
}
4244

4345
for _, outcome := range hostAnalyzer.Outcomes {
4446
result := &AnalyzeResult{Title: a.Title()}
@@ -49,8 +51,7 @@ func (a *AnalyzeHostDiskUsage) Analyze(getCollectedFileContents func(string) ([]
4951
result.Message = outcome.Fail.Message
5052
result.URI = outcome.Fail.URI
5153

52-
coll.push(result)
53-
continue
54+
return []*AnalyzeResult{result}, nil
5455
}
5556

5657
isMatch, err := compareHostDiskUsageConditionalToActual(outcome.Fail.When, diskUsageInfo.TotalBytes, diskUsageInfo.UsedBytes)
@@ -63,16 +64,15 @@ func (a *AnalyzeHostDiskUsage) Analyze(getCollectedFileContents func(string) ([]
6364
result.Message = outcome.Fail.Message
6465
result.URI = outcome.Fail.URI
6566

66-
coll.push(result)
67+
return []*AnalyzeResult{result}, nil
6768
}
6869
} else if outcome.Warn != nil {
6970
if outcome.Warn.When == "" {
7071
result.IsWarn = true
7172
result.Message = outcome.Warn.Message
7273
result.URI = outcome.Warn.URI
7374

74-
coll.push(result)
75-
continue
75+
return []*AnalyzeResult{result}, nil
7676
}
7777

7878
isMatch, err := compareHostDiskUsageConditionalToActual(outcome.Warn.When, diskUsageInfo.TotalBytes, diskUsageInfo.UsedBytes)
@@ -85,16 +85,15 @@ func (a *AnalyzeHostDiskUsage) Analyze(getCollectedFileContents func(string) ([]
8585
result.Message = outcome.Warn.Message
8686
result.URI = outcome.Warn.URI
8787

88-
coll.push(result)
88+
return []*AnalyzeResult{result}, nil
8989
}
9090
} else if outcome.Pass != nil {
9191
if outcome.Pass.When == "" {
9292
result.IsPass = true
9393
result.Message = outcome.Pass.Message
9494
result.URI = outcome.Pass.URI
9595

96-
coll.push(result)
97-
continue
96+
return []*AnalyzeResult{result}, nil
9897
}
9998

10099
isMatch, err := compareHostDiskUsageConditionalToActual(outcome.Pass.When, diskUsageInfo.TotalBytes, diskUsageInfo.UsedBytes)
@@ -107,13 +106,13 @@ func (a *AnalyzeHostDiskUsage) Analyze(getCollectedFileContents func(string) ([]
107106
result.Message = outcome.Pass.Message
108107
result.URI = outcome.Pass.URI
109108

110-
coll.push(result)
109+
return []*AnalyzeResult{result}, nil
111110
}
112111

113112
}
114113
}
115114

116-
return coll.get(a.Title()), nil
115+
return []*AnalyzeResult{&result}, nil
117116
}
118117

119118
func compareHostDiskUsageConditionalToActual(conditional string, totalBytes uint64, usedBytes uint64) (res bool, err error) {

pkg/analyze/host_disk_usage_test.go

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -372,11 +372,17 @@ func TestAnalyzeHostDiskUsage(t *testing.T) {
372372
CollectorName: "ephemeral",
373373
Outcomes: []*troubleshootv1beta2.Outcome{
374374
{
375-
Warn: &troubleshootv1beta2.SingleOutcome{
375+
Fail: &troubleshootv1beta2.SingleOutcome{
376376
When: "available < 10Gi",
377377
Message: "/var/lib/kubelet less than 10Gi available",
378378
},
379379
},
380+
{
381+
Warn: &troubleshootv1beta2.SingleOutcome{
382+
When: "available < 25Gi",
383+
Message: "/var/lib/kubelet less than 25Gi available",
384+
},
385+
},
380386
{
381387
Pass: &troubleshootv1beta2.SingleOutcome{
382388
When: "",
@@ -388,14 +394,9 @@ func TestAnalyzeHostDiskUsage(t *testing.T) {
388394
result: []*AnalyzeResult{
389395
{
390396
Title: "Disk Usage ephemeral",
391-
IsWarn: true,
397+
IsFail: true,
392398
Message: "/var/lib/kubelet less than 10Gi available",
393399
},
394-
{
395-
Title: "Disk Usage ephemeral",
396-
IsPass: true,
397-
Message: "/var/lib/kubelet passed",
398-
},
399400
},
400401
},
401402
}

0 commit comments

Comments
 (0)