# along with this program. If not, see <http://www.gnu.org/licenses/>.
class syslog-ng(
- $log_kernel_msgs = hiera('syslog-ng::log_kernel_msgs', true)
+ $log_kernel_msgs = hiera('syslog-ng::log_kernel_msgs', true),
+ $ensure = 'present'
) {
# see https://bugs.launchpad.net/ubuntu/+source/syslog-ng/+bug/1242173
package { 'syslog-ng-core':
- ensure => installed,
+ ensure => $ensure,
}
package { 'syslog-ng':
- ensure => installed,
+ ensure => $ensure,
require => Package['syslog-ng-core'],
}
# syslog-ng service
service { "syslog-ng":
enable => true,
- ensure => running,
+ ensure => $ensure,
hasrestart => true,
hasstatus => false,
# Somehow syslog-ng is not returning if it was killed due to lack of
owner => "root",
group => "root",
mode => 0644,
- ensure => present,
+ ensure => $ensure,
notify => Service["syslog-ng"],
require => File["/etc/syslog-ng"],
}
# config folder
file { "/etc/syslog-ng":
- ensure => directory,
+ ensure => $ensure ? {
+ 'present' => directory,
+ default => absent,
+ },
owner => "root",
group => "root",
require => Package["syslog-ng"],
}
-
}
-class syslog-ng::vserver {
+class syslog-ng::vserver(
+ $ensure = 'present'
+) {
# syslog-ng class for vservers
# where is not possible to log kernel msgs
class { 'syslog-ng':
log_kernel_msgs => false,
+ ensure => $ensure,
}
# Manage this file due to
owner => "root",
group => "root",
mode => 0644,
- ensure => present,
+ ensure => $ensure,
source => "puppet:///modules/syslog-ng/logrotate",
}
owner => "root",
group => "root",
mode => 0644,
- ensure => present,
+ ensure => $ensure,
source => "puppet:///modules/syslog-ng/default",
notify => Service["syslog-ng"],
}