## confdroid_nagios::nagios::objects::template_rules.pp # Module name: confdroid_nagios # Author: 12ww1160 (12ww1160@confdroid.com) # @summary Class manages /etc/nagios/conf.d/nagios_templates.cfg through # concat. # @example # confdroid_nagios::nagios::objects::templates { 'generic contact': # ng_template_object => 'contact', # ng_template_object_name => 'generic-contact', # } ################################################################################ class confdroid_nagios::nagios::objects::template_rules ( ) inherits confdroid_nagios::params { if $ng_nagios_server == $fqdn { # create the templates.cfg file concat { $ng_target_templates: 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], } concat::fragment { 'template_header': target => $ng_target_templates, content => template($ng_templates_head_erb), order => '000', } # basic templates confdroid_nagios::nagios::objects::templates { 'generic contact': ng_template_object => 'contact', ng_template_object_name => 'generic-contact', } confdroid_nagios::nagios::objects::templates { 'generic-host': ng_template_object => 'host', ng_template_object_name => 'generic-host', } confdroid_nagios::nagios::objects::templates { 'linux-server': ng_template_object => 'host', ng_template_object_name => 'linux-server', ng_template_object_use => 'generic-host', ng_notification_options => 'd,u,r', } confdroid_nagios::nagios::objects::templates { 'windows-server': ng_template_object => 'host', ng_template_object_name => 'windows-server', ng_template_object_use => 'generic-host', ng_notification_options => 'd,u,r', } confdroid_nagios::nagios::objects::templates { 'unix-server': ng_template_object => 'host', ng_template_object_name => 'unix-server', ng_template_object_use => 'generic-host', ng_notification_options => 'd,u,r', } confdroid_nagios::nagios::objects::templates { 'generic-printer': ng_template_object => 'host', ng_template_object_name => 'generic-printer', ng_template_object_use => 'generic-host', ng_notification_options => 'd,u,r', } confdroid_nagios::nagios::objects::templates { 'generic-service': ng_template_object => 'service', ng_template_object_name => 'generic-service', ng_max_check_attempts => '3', ng_notification_options => 'w,u,c,r', } confdroid_nagios::nagios::objects::templates { 'local-service': ng_template_object => 'service', ng_template_object_name => 'local-service', ng_max_check_attempts => '4', ng_template_object_use => 'generic-service', } } }