| Index: modules/nagios/manifests/server.pp |
| =================================================================== |
| --- a/modules/nagios/manifests/server.pp |
| +++ b/modules/nagios/manifests/server.pp |
| @@ -4,7 +4,8 @@ |
| $private_key, |
| $is_default=false, |
| $htpasswd_source, |
| - $admins |
| + $admins, |
| + $zone, |
| ) { |
| File { |
| @@ -121,10 +122,9 @@ |
| Nagios_host <| |> { |
| target => '/etc/nagios3/conf.d/hosts.cfg', |
| - require => Package['nagios3'], |
| notify => [File['/etc/nagios3/conf.d/hosts.cfg'], Service['nagios3']] |
| } |
| - |
| + <- |
| Nagios_hostgroup <| |> { |
| target => '/etc/nagios3/conf.d/hostgroups.cfg', |
| require => Package['nagios3'], |
| @@ -146,4 +146,41 @@ |
| require => Package['nagios3'], |
| notify => Service['nagios3'] |
| } |
| + |
| + $nagios_contacts = hiera('nagios_contacts', {}) |
| + create_resources(nagios_contact, $nagios_contacts) |
| + |
| + $nagios_contactgroups = hiera('nagios_contactgroups', {}) |
| + create_resources(nagios_contactgroup, $nagios_contactgroups) |
| + |
| + $nagios_commands = hiera('nagios_commands', {}) |
| + create_resources(nagios_command, $nagios_commands) |
| + |
| + $nagios_services = hiera('nagios_services', {}) |
| + create_resources(nagios_service, $nagios_services) |
| + |
| + $nagios_hosts = hiera('nagios_hosts', {}) |
| + create_resources(nagios_host, $nagios_hosts) |
| + |
| + $nagios_hostgroups = hiera('nagios_hostgroups', {}) |
| + create_resources(nagios_hostgroup, $nagios_hostgroups) |
| + |
| + $nagios_generic = hiera('servers') |
| + create_resources(nagios::server::generic_host, $nagios_generic) |
| + |
| + define generic_host( |
| + $ip, |
| + $ssh_public_key = undef, |
| + $role = undef, |
| + $dns = undef, |
| + $groups = [], |
| + ) { |
| + |
| + $fqdn_name = join([$name, $nagios::server::zone], '.') |
| + |
| + nagios_host {$fqdn_name: |
| + use => 'generic-host', |
| + hostgroups => $groups, |
| + } |
| + } |
| } |