Ping check actually pings

This commit is contained in:
2021-01-02 06:29:12 -09:00
parent ad3d9fb4d4
commit 4e67a31552
7 changed files with 56 additions and 17 deletions

18
main.go
View File

@ -44,7 +44,7 @@ func main() {
}
fmt.Fprintf(os.Stdout, "%s\n", string(o))
case "check", "config", "":
case "config", "":
_, err := config.ReadConfig(*cfgPath, *debuglvl)
if err != nil {
fmt.Fprintf(os.Stderr, "%s\n", err.Error())
@ -52,26 +52,26 @@ func main() {
}
fmt.Fprintf(os.Stdout, "Config is OK.\n")
case "test":
cfg, err := config.ReadConfig(*cfgPath, *debuglvl)
if err != nil {
fmt.Fprintf(os.Stderr, "%s\n", err.Error())
os.Exit(1)
}
case "check":
tn := flag.Arg(1)
if tn == "" {
fmt.Fprintf(os.Stderr, "test requires a host or group\n")
os.Exit(1)
}
cfg, err := config.ReadConfig(*cfgPath, 0)
if err != nil {
fmt.Fprintf(os.Stderr, "%s\n", err.Error())
os.Exit(1)
}
group, exists := cfg.Groups[tn]
if !exists {
fmt.Fprintf(os.Stderr, "group or host is not defined\n")
os.Exit(1)
}
err = group.Check()
err = group.Check(*debuglvl)
if err != nil {
fmt.Fprintf(os.Stderr, "Check failed: %s\n", err.Error())
os.Exit(1)