OP#436 add service groups

This commit is contained in:
2026-03-01 16:23:15 +01:00
parent 7242b2733a
commit 1f08549f91
4 changed files with 76 additions and 2 deletions

View File

@@ -12,7 +12,7 @@ class confdroid_nagios::nagios::config (
require confdroid_nagios::nagios::objects::add_contact_rules
require confdroid_nagios::nagios::objects::add_contactgroups_rules
require confdroid_nagios::nagios::objects::add_hostgroup_rules
#require confdroid_nagios::nagios::objects::add_servicegroup_rules
require confdroid_nagios::nagios::objects::add_servicegroup_rules
#require confdroid_nagios::nagios::objects::add_timeperiod_rules
require confdroid_nagios::nagios::resources::resource
}

View File

@@ -0,0 +1,39 @@
## confdroid_nagios::nagios::objects::add_servicegroup_rules.pp
# Module name: confdroid_nagios
# Author: 12ww1160 (12ww1160@confdroid.com)
# @summary Class manages /etc/nagios_conf.d/nagios_servicegroups_add.cfg and
# additional servicegroups through external Puppet rules via define.
# @example
# confdroid_nagios::nagios::objects::add_servicegroups { 'example_servicegroup':
# ng_servicegroup_name => 'example_servicegroup',
# ng_servicegroup_alias => 'Example Servicegroup',
# }
################################################################################
class confdroid_nagios::nagios::objects::add_servicegroup_rules (
) inherits confdroid_nagios::params {
if $ng_nagios_server == $fqdn {
# manage /etc/nagios_conf.d/nagios_servicegroups_add.cfg
concat { $ng_tgt_servicegroup_add:
ensure => present,
path => $ng_tgt_servicegroup_add,
owner => 'nagios',
group => 'nagios',
mode => '0640',
selrange => s0,
selrole => object_r,
seltype => nagios_etc_t,
seluser => system_u,
notify => Service[$ng_nagios_service],
}
# manage file header
concat::fragment { 'servicegroups_header':
target => $ng_tgt_servicegroup_add,
content => template($ng_tgt_svcgrp_head_erb),
order => '000',
}
}
}

View File

@@ -0,0 +1,35 @@
## confdroid_nagios::nagios::objects::add_servicegroups.pp
# Module name: confdroid_nagios
# Author: 12ww1160 (12ww1160@confdroid.com)
# # License:
# @summary define populates /etc/nagios/conf.d/nagios_servicegroups_add through
# external Puppet rules.
# @example
# confdroid_nagios::nagios::objects::add_servicegroups { 'example_servicegroup':
# ng_servicegroup_name => 'example_servicegroup',
# ng_servicegroup_alias => 'Example servicegroup',
# }
# @param [string] ng_servicegroup_name Specify the servicegroup short name
# @param [string] ng_servicegroup_alias Specify the servicegroup alias
# (long name).
# @param [string] ng_servicegroup_register Whether you want to register the
# servicegroup
###############################################################################
define confdroid_nagios::nagios::objects::add_servicegroups (
Optional[String] $ng_servicegroup_name = undef,
Optional[String] $ng_servicegroup_alias = undef,
String $ng_servicegroup_register = '1',
) {
$ng_nagios_server = $confdroid_nagios::params::ng_nagios_server
$ng_tgt_servicegroup_add = $confdroid_nagios::params::ng_tgt_servicegroup_add
$ng_tgt_svcgrp_rule_erb = $confdroid_nagios::params::ng_tgt_svcgrp_rule_erb
if $ng_nagios_server == $fqdn {
concat::fragment { $name:
target => $ng_tgt_servicegroup_add,
content => template($ng_tgt_svcgrp_rule_erb),
}
}
}