Newer
Older
##############################################################################
# Create rsyslog.conf
##############################################################################
#
# This define is used by the base::syslog module. It is not execpted
# to be used directly, but the actions of base::syslog overridden as
# needed.
#
# The use_ variables allow for the following transitions.
#
# 1. From an rsyslog configuration that pulls in an old syslog.conf
# to a configuration that is all rsyslog and uses rsyslog
# fragments.
#
# 2. From v5 to v7 of rsyslog. To use the default v7 configuration
# the syslog.conf transition must be complete.
#
# Example:
#
# This example uses the default rsyslog version 7 configuration.
#
# class s_ldap::conf::syslog-dev inherits base::syslog {
# Base::Syslog::Config::Rsyslog['/etc/rsyslog.conf'] {
# use_syslog_conf => false,
# use_v5 => false,
# }
# }
$ensure = 'present',
$source = undef,
$owner = 'root',
$group = 'root',
$mode = '0644',
$replace = true,
$use_syslog_conf = true,
$use_default = true,
$use_v5 = true,
if !$use_syslog_conf {
if use_v5 {
$rsyslog_tmpl = 'etc/rsyslog.d/20-templates-v5.conf'
$rsyslog_def = 'etc/rsyslog.d/95-default-v5.conf.erb'
} else {
$rsyslog_tmpl = 'etc/rsyslog.d/20-templates.conf'
$rsyslog_def = 'etc/rsyslog.d/95-default.conf.erb'
}
if $use_default {
file {
'/etc/rsyslog.d/20-templates.conf':
ensure => present,
source => "puppet:///modules/base/syslog/$rsyslog_tmpl",
owner => $owner,
group => $group,
mode => $mode,
notify => Service['syslog'];
'/etc/rsyslog.d/95-default.conf':
ensure => present,
content => template("base/syslog/$rsyslog_def"),
owner => $owner,
group => $group,
mode => $mode,
notify => Service['syslog'];
}
} else {
file {
'/etc/rsyslog.d/20-templates.conf':
ensure => absent,
notify => Service['syslog'];
'/etc/rsyslog.d/95-default.conf':
ensure => absent,
notify => Service['syslog'];
}
# Template for the base rsyslog configuration.
if $source {
$template = undef
} else {
$template = template('base/syslog/rsyslog.conf.erb')
}
file { $name:
ensure => $ensure,
source => $source,
content => $template,
owner => $owner,
group => $group,
mode => $mode,
replace => $replace,
notify => Service['syslog'],
}