nurse/check/endpoint.go
2022-05-13 16:46:31 +02:00

27 lines
610 B
Go

package check
import (
"github.com/baez90/nurse/config"
"github.com/baez90/nurse/grammar"
)
func CheckForScript(script []grammar.Check, lkp ModuleLookup, srvLookup config.ServerLookup) (SystemChecker, error) {
compiledChecks := make([]SystemChecker, 0, len(script))
for i := range script {
rawChk := script[i]
mod, err := lkp.Lookup(rawChk.Initiator.Module)
if err != nil {
return nil, err
}
compiledCheck, err := mod.Lookup(rawChk, srvLookup)
if err != nil {
return nil, err
}
compiledChecks = append(compiledChecks, compiledCheck)
}
return Collection(compiledChecks), nil
}