diff options
Diffstat (limited to 'manifests')
-rw-r--r-- | manifests/client.pp | 10 | ||||
-rw-r--r-- | manifests/config.pp | 37 | ||||
-rw-r--r-- | manifests/init.pp | 3 | ||||
-rw-r--r-- | manifests/install.pp | 9 | ||||
-rw-r--r-- | manifests/params.pp | 20 | ||||
-rw-r--r-- | manifests/service.pp | 7 |
6 files changed, 86 insertions, 0 deletions
diff --git a/manifests/client.pp b/manifests/client.pp new file mode 100644 index 0000000..a060413 --- /dev/null +++ b/manifests/client.pp @@ -0,0 +1,10 @@ +class rsyslog::client inherits rsyslog { + file { $rsyslog::params::client_conf: + owner => root, + group => root, + ensure => file, + content => template("${module_name}/client.conf.erb"), + require => Class['rsyslog::install'], + notify => Class['rsyslog::service'], + } +} diff --git a/manifests/config.pp b/manifests/config.pp new file mode 100644 index 0000000..18354bf --- /dev/null +++ b/manifests/config.pp @@ -0,0 +1,37 @@ +class rsyslog::config { + file { $rsyslog::params::rsyslog_d: + owner => root, + group => root, + purge => true, + recurse => true, + force => true, + require => Class["rsyslog::install"], + ensure => directory, + } + + file { $rsyslog::params::rsyslog_conf: + owner => root, + group => root, + ensure => file, + source => "puppet:///modules/rsyslog/rsyslog.conf", + require => Class["rsyslog::install"], + notify => Class["rsyslog::service"], + } + + file { $rsyslog::params::rsyslog_default: + owner => root, + group => root, + ensure => file, + source => "puppet:///modules/rsyslog/rsyslog_default", + require => Class["rsyslog::install"], + notify => Class["rsyslog::service"], + } + + file { $rsyslog::params::spool_dir: + owner => root, + group => root, + ensure => directory, + require => Class["rsyslog::install"], + notify => Class["rsyslog::service"], + } +} diff --git a/manifests/init.pp b/manifests/init.pp new file mode 100644 index 0000000..80db400 --- /dev/null +++ b/manifests/init.pp @@ -0,0 +1,3 @@ +class rsyslog { + include rsyslog::params, rsyslog::install, rsyslog::config, rsyslog::service +} diff --git a/manifests/install.pp b/manifests/install.pp new file mode 100644 index 0000000..5521264 --- /dev/null +++ b/manifests/install.pp @@ -0,0 +1,9 @@ +class rsyslog::install { + package { $rsyslog::params::rsyslog_package_name: + ensure => latest, + } + + package { $rsyslog::params::relp_package_name: + ensure => latest, + } +} diff --git a/manifests/params.pp b/manifests/params.pp new file mode 100644 index 0000000..540a93e --- /dev/null +++ b/manifests/params.pp @@ -0,0 +1,20 @@ +class rsyslog::params { + $rsyslog_server = $rsyslog_server ? { + '' => 'log', + default => $rsyslog_server, + } + + case $operatingsystem { + /(Ubuntu|Debian)/: { + $rsyslog_package_name = 'rsyslogr' + $relp_package_name = 'rsyslog-relp' + $rsyslog_d = '/etc/rsyslog.d/' + $rsyslog_conf = '/etc/rsyslog.conf' + $rsyslog_default = '/etc/default/rsyslog' + $spool_dir = '/var/spool/rsyslog/' + $service_name = 'rsyslog' + $client_conf = "${rsyslog_d}client.conf" + $server_conf = "${rsyslog_d}server.conf" + } + } +} diff --git a/manifests/service.pp b/manifests/service.pp new file mode 100644 index 0000000..66c03dc --- /dev/null +++ b/manifests/service.pp @@ -0,0 +1,7 @@ +class rsyslog::service { + service { $rsyslog::params::service_name: + ensure => running, + enable => true, + require => Class["rsyslog::config"], + } +} |