icingadb/tests/object_sync_test.conf
2025-04-04 12:16:14 +02:00

93 lines
2 KiB
Text

{{range .GenericPrefixes}}
object CheckCommand "{{.}}-checkcommand" {
command = ["true"]
}
object EventCommand "{{.}}-eventcommand" {
command = ["true"]
}
object NotificationCommand "{{.}}-notificationcommand" {
command = ["true"]
}
object Endpoint "{{.}}-endpoint" {}
object Zone "{{.}}-zone" {
parent = "master"
endpoints = ["{{.}}-endpoint"]
}
object Host "{{.}}-host" {
check_command = "hostalive"
}
object HostGroup "{{.}}-hostgroup" {}
object Service "{{.}}-service" {
host_name = "{{.}}-host"
check_command = "dummy"
}
object ServiceGroup "{{.}}-servicegroup" {}
object TimePeriod "{{.}}-timeperiod" {}
object User "{{.}}-user" {}
object UserGroup "{{.}}-usergroup" {}
{{end}}
{{range .NotificationUserGroups}}
object UserGroup "{{.}}" {
}
{{end}}
{{range $user, $groups := .NotificationUsers}}
object User "{{$user}}" {
groups = [
{{range $group, $_ := $groups}}
"{{$group}}",
{{end}}
]
}
{{end}}
object TimePeriod "workhours" {
ranges = {}
}
object TimePeriod "never-ever" {
ranges = {}
}
template Host "dependency-host-template" {
check_command = "dummy"
max_check_attempts = 1
check_interval = 300s
vars.dummy_text = "I'm just testing something"
vars.dummy_state = 0
}
for (suffix in ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"]) {
object Host "Host"+suffix {
import "dependency-host-template"
}
}
{{range $dependencyGroups := .DependencyGroups}}
{{range $dependencyGroup := .Groups}}
{{range $parent := .Parents}}
{{range $child := $dependencyGroup.Children}}
object Dependency "dependency"+random() {
parent_host_name = "{{$parent}}"
child_host_name = "{{$child}}"
ignore_soft_states = {{$dependencyGroup.IgnoreSoftStates}}
states = [ {{NaturalJoin $dependencyGroup.StatesFilter ", "}} ]
period = "{{$dependencyGroup.TimePeriod}}"
redundancy_group = "{{$dependencyGroup.RedundancyGroupName}}"
}
{{end}}
{{end}}
{{end}}
{{end}}