diff --git a/checker/rule.go b/checker/rule.go index f336ba5..d201dd6 100644 --- a/checker/rule.go +++ b/checker/rule.go @@ -44,14 +44,14 @@ func (r *zonemasterRule) ValidateOptions(opts sdk.CheckerOptions) error { return nil } -func (r *zonemasterRule) Evaluate(ctx context.Context, obs sdk.ObservationGetter, opts sdk.CheckerOptions) sdk.CheckState { +func (r *zonemasterRule) Evaluate(ctx context.Context, obs sdk.ObservationGetter, opts sdk.CheckerOptions) []sdk.CheckState { var data ZonemasterData if err := obs.Get(ctx, ObservationKeyZonemaster, &data); err != nil { - return sdk.CheckState{ + return []sdk.CheckState{{ Status: sdk.StatusError, Message: fmt.Sprintf("Failed to get Zonemaster data: %v", err), Code: "zonemaster_error", - } + }} } var errorCount, warningCount int @@ -86,27 +86,27 @@ func (r *zonemasterRule) Evaluate(ctx context.Context, obs sdk.ObservationGetter } statusLine += ": " + strings.Join(criticalMsgs[:n], "; ") } - return sdk.CheckState{ + return []sdk.CheckState{{ Status: sdk.StatusCrit, Message: statusLine, Code: "zonemaster_errors", Meta: meta, - } + }} } if warningCount > 0 { - return sdk.CheckState{ + return []sdk.CheckState{{ Status: sdk.StatusWarn, Message: fmt.Sprintf("%d warning(s) found", warningCount), Code: "zonemaster_warnings", Meta: meta, - } + }} } - return sdk.CheckState{ + return []sdk.CheckState{{ Status: sdk.StatusOK, Message: fmt.Sprintf("All checks passed (%d checks)", len(data.Results)), Code: "zonemaster_ok", Meta: meta, - } + }} } diff --git a/go.mod b/go.mod index dd1b138..ffeb7b4 100644 --- a/go.mod +++ b/go.mod @@ -2,4 +2,4 @@ module git.happydns.org/checker-zonemaster go 1.25.0 -require git.happydns.org/checker-sdk-go v0.0.1 +require git.happydns.org/checker-sdk-go v1.2.0 diff --git a/go.sum b/go.sum index 5282be1..272600a 100644 --- a/go.sum +++ b/go.sum @@ -1,2 +1,2 @@ -git.happydns.org/checker-sdk-go v0.0.1 h1:4RxCJr73HWKxjOyU/6NJMO8lXJmH0gMLA68EzTqLbQI= -git.happydns.org/checker-sdk-go v0.0.1/go.mod h1:aNAcfYFfbhvH9kJhE0Njp5GX0dQbxdRB0rJ0KvSC5nI= +git.happydns.org/checker-sdk-go v1.2.0 h1:v4MpKAz0W3PwP+bxx3pya8w893sVH5xTD1of1cc0TV8= +git.happydns.org/checker-sdk-go v1.2.0/go.mod h1:aNAcfYFfbhvH9kJhE0Njp5GX0dQbxdRB0rJ0KvSC5nI=