nurse/check/api.go

38 lines
702 B
Go
Raw Normal View History

2022-04-28 16:35:02 +00:00
package check
import (
"context"
"errors"
"github.com/baez90/nurse/config"
2022-04-28 16:35:02 +00:00
"github.com/baez90/nurse/grammar"
)
var (
ErrNoSuchCheck = errors.New("no such check")
ErrConflictingCheck = errors.New("check with same name already registered")
)
type (
Unmarshaler interface {
UnmarshalCheck(c grammar.Check, lookup config.ServerLookup) error
}
2022-04-28 16:35:02 +00:00
SystemChecker interface {
Unmarshaler
Execute(ctx context.Context) error
}
CallUnmarshaler interface {
UnmarshalCall(c grammar.Call) error
}
2022-05-13 13:38:19 +00:00
CheckerLookup interface {
Lookup(c grammar.Check, srvLookup config.ServerLookup) (SystemChecker, error)
}
ModuleLookup interface {
Lookup(modName string) (CheckerLookup, error)
}
)