2017-07-25 16:30:03 +01:00
|
|
|
## cd_nagios::nagios::objects::template_rules.pp
|
|
|
|
|
# Module name: cd_nagios
|
|
|
|
|
# Author: Arne Teuke (arne_teuke@ConfDroid.com)
|
2017-07-26 12:16:25 +01:00
|
|
|
# @summary Class manages /etc/nagios/conf.d/nagios_templates.cfg through
|
|
|
|
|
# concat.
|
2017-07-25 18:56:18 +01:00
|
|
|
# @example cd_nagios::nagios::objects::templates { 'generic contact':
|
|
|
|
|
# ng_template_object => 'contact',
|
2025-05-12 15:56:17 +02:00
|
|
|
# ng_template_object_name => 'generic-contact',
|
2017-07-25 16:39:28 +01:00
|
|
|
# }
|
2017-07-25 16:30:03 +01:00
|
|
|
################################################################################
|
|
|
|
|
class cd_nagios::nagios::objects::template_rules (
|
|
|
|
|
|
|
|
|
|
) inherits cd_nagios::params {
|
|
|
|
|
if $::fqdn == $ng_nagios_server {
|
|
|
|
|
# create the templates.cfg file
|
|
|
|
|
|
|
|
|
|
concat { $ng_target_templates:
|
2025-05-12 15:56:17 +02:00
|
|
|
ensure => present,
|
|
|
|
|
path => $ng_target_templates,
|
|
|
|
|
owner => $ng_user,
|
|
|
|
|
group => $ng_user,
|
|
|
|
|
mode => '0640',
|
|
|
|
|
selrange => s0,
|
|
|
|
|
selrole => object_r,
|
|
|
|
|
seltype => nagios_etc_t,
|
|
|
|
|
seluser => system_u,
|
|
|
|
|
notify => Service[$ng_service],
|
2017-07-25 16:30:03 +01:00
|
|
|
}
|
2017-07-25 16:39:28 +01:00
|
|
|
|
2017-07-26 12:30:34 +01:00
|
|
|
concat::fragment { 'template_header':
|
2025-05-12 15:56:17 +02:00
|
|
|
target => $ng_target_templates,
|
|
|
|
|
content => template($ng_templates_head_erb),
|
|
|
|
|
order => '000',
|
2017-07-25 19:01:03 +01:00
|
|
|
}
|
|
|
|
|
|
2017-07-25 18:56:18 +01:00
|
|
|
# basic templates
|
|
|
|
|
cd_nagios::nagios::objects::templates { 'generic contact':
|
2017-07-25 17:13:25 +01:00
|
|
|
ng_template_object => 'contact',
|
2025-05-12 15:56:17 +02:00
|
|
|
ng_template_object_name => 'generic-contact',
|
2017-07-25 16:39:28 +01:00
|
|
|
}
|
2017-07-25 18:56:18 +01:00
|
|
|
cd_nagios::nagios::objects::templates { 'generic-host':
|
2025-05-12 15:56:17 +02:00
|
|
|
ng_template_object => 'host',
|
|
|
|
|
ng_template_object_name => 'generic-host',
|
2017-07-25 18:56:18 +01:00
|
|
|
}
|
|
|
|
|
cd_nagios::nagios::objects::templates { 'linux-server':
|
2025-05-12 15:56:17 +02:00
|
|
|
ng_template_object => 'host',
|
|
|
|
|
ng_template_object_name => 'linux-server',
|
|
|
|
|
ng_template_object_use => 'generic-host',
|
|
|
|
|
ng_notification_options => 'd,u,r',
|
2017-07-25 18:56:18 +01:00
|
|
|
}
|
|
|
|
|
cd_nagios::nagios::objects::templates { 'windows-server':
|
2025-05-12 15:56:17 +02:00
|
|
|
ng_template_object => 'host',
|
|
|
|
|
ng_template_object_name => 'windows-server',
|
|
|
|
|
ng_template_object_use => 'generic-host',
|
|
|
|
|
ng_notification_options => 'd,u,r',
|
2017-07-25 18:56:18 +01:00
|
|
|
}
|
2017-07-25 19:02:29 +01:00
|
|
|
cd_nagios::nagios::objects::templates { 'generic-switch':
|
2025-05-12 15:56:17 +02:00
|
|
|
ng_template_object => 'host',
|
|
|
|
|
ng_template_object_name => 'generic-switch',
|
|
|
|
|
ng_template_object_use => 'generic-host',
|
|
|
|
|
ng_notification_options => 'd,u,r',
|
2017-07-25 19:02:29 +01:00
|
|
|
}
|
|
|
|
|
cd_nagios::nagios::objects::templates { 'generic-printer':
|
2025-05-12 15:56:17 +02:00
|
|
|
ng_template_object => 'host',
|
|
|
|
|
ng_template_object_name => 'generic-printer',
|
|
|
|
|
ng_template_object_use => 'generic-host',
|
|
|
|
|
ng_notification_options => 'd,u,r',
|
2017-07-25 19:02:29 +01:00
|
|
|
}
|
2017-07-25 18:56:18 +01:00
|
|
|
cd_nagios::nagios::objects::templates { 'generic-service':
|
2025-05-12 15:56:17 +02:00
|
|
|
ng_template_object => 'service',
|
|
|
|
|
ng_template_object_name => 'generic-service',
|
|
|
|
|
ng_max_check_attempts => '3',
|
|
|
|
|
ng_notification_options => 'w,u,c,r',
|
2017-07-25 18:56:18 +01:00
|
|
|
}
|
|
|
|
|
cd_nagios::nagios::objects::templates { 'local-service':
|
2025-05-12 15:56:17 +02:00
|
|
|
ng_template_object => 'service',
|
|
|
|
|
ng_template_object_name => 'local-service',
|
|
|
|
|
ng_max_check_attempts => '4',
|
|
|
|
|
ng_template_object_use => 'generic-service',
|
2017-07-25 18:56:18 +01:00
|
|
|
}
|
2017-07-25 16:30:03 +01:00
|
|
|
}
|
|
|
|
|
}
|