}
file{'/etc/ejabberd/ejabberd.cfg':
- source => [ "puppet:///modules/site-ejabberd/${fqdn}/ejabberd.cfg",
- "puppet:///modules/site-ejabberd/ejabberd.cfg",
+ source => [ "puppet:///modules/site_ejabberd/${::fqdn}/ejabberd.cfg",
+ "puppet:///modules/site_ejabberd/ejabberd.cfg",
"puppet:///modules/ejabberd/ejabberd.cfg" ],
require => Package['ejabberd'],
notify => Service['ejabberd'],
# Copyright (C) 2007 admin@immerda.ch
# GPLv3
-class ejabberd {
- case $operatingsystem {
+class ejabberd(
+ $domains = $::fqdn,
+ $nagios_domain = hiera('ejabberd_nagios_domain', $::fqdn),
+ $nagios_user = hiera('ejabberd_nagios_user', 'nagios'),
+ $nagios_pwd = hiera('ejabberd_nagios_pwd','')
+) {
+ case $::operatingsystem {
default: { include ejabberd::base }
}
- if $use_nagios {
+ if hiera('use_nagios',false) {
include ejabberd::nagios
}
- if $use_munin {
+ if hiera('use_munin',false) {
include ejabberd::munin
}
- if $use_shorewall {
+ if hiera('use_shorewall',false) {
include shorewall::rules::jabberserver
}
}
class ejabberd::munin {
- case $ejabberd_domains {
- '': { $ejabberd_domains = $fqdn }
- }
- munin::plugin::deploy{'ejabberd_':
- source => "ejabberd/munin/ejabberd_",
+ munin::plugin::deploy{'ejabberd_':
+ source => "ejabberd/munin/ejabberd_",
ensure => absent,
}
+ $domains = join($ejabberd::domains, ' ')
munin::plugin{['ejabberd_users','ejabberd_connections','ejabberd_registrations']:
require => Munin::Plugin::Deploy['ejabberd_'],
ensure => 'ejabberd_',
- config => "env.vhosts ${ejabberd_domains}\ntimeout 20\nuser root\ngroup root"
+ config => "env.vhosts ${domains}\ntimeout 20\nuser root\ngroup root"
}
}
# manifests/nagios.pp
class ejabberd::nagios {
- case $jabber_nagios_domain {
- '': { $jabber_nagios_domain = $fqdn }
- }
- nagios::service{ "jabber_${fqdn}": check_command => "check_jabber!${jabber_nagios_domain}" }
+ nagios::service{ "jabber_${::fqdn}": check_command => "check_jabber!${ejabberd::nagios_domain}" }
@@nagios_command{
'check_jabber_ssl':
command_line => '$USER1$/check_jabber -S -p 5223 -H $ARG1$',
}
- nagios::service{ "jabber_ssl_${fqdn}": check_command => "check_jabber_ssl!${jabber_nagios_domain}" }
+ nagios::service{ "jabber_ssl_${::fqdn}": check_command => "check_jabber_ssl!${ejabberd::nagios_domain}" }
@@nagios_command{
'check_jabber_cert':
command_line => '$USER1$/check_jabber -S -D 10 -p 5223 -H $ARG1$',
}
- nagios::service{ "jabber_cert_${fqdn}": check_command => "check_jabber_cert!${jabber_nagios_domain}" }
-
- case $jabber_nagios_user {
- '': { $jabber_nagios_user = 'nagios' }
- }
+ nagios::service{ "jabber_cert_${::fqdn}": check_command => "check_jabber_cert!${ejabberd::nagios_domain}" }
@@nagios_command{
'check_jabber_login':
require => Nagios::Plugin['check_jabber_login'];
}
- case $jabber_nagios_pwd {
- '': { info("no \$jabber_nagios_pwd supplied for ${fqdn}! Can't test jabber login") }
- default: {
- nagios::service{ "jabber_login_${fqdn}": check_command => "check_jabber_login!${jabber_nagios_user}@${jabber_nagios_domain}!${jabber_nagios_pwd}" }
+ case $ejabberd::nagios_pwd {
+ '': { info("no \$ejabberd::nagios_pwd supplied for ${::fqdn}! Can't test jabber login") }
+ default: {
+ nagios::service{ "jabber_login_${::fqdn}": check_command => "check_jabber_login!${ejabberd::nagios_user}@${ejabberd::nagios_domain}!${ejabberd::nagios_pwd}" }
}
}
}