manifests/logrotate.pp (47 lines of code) (raw):

# == Class consul_template::logrotate # class consul_template::logrotate( $logrotate_compress, $logrotate_files, $logrotate_on, $logrotate_period, $restart_sysv = '/sbin/service consul-template restart', $restart_systemd = '/bin/systemctl restart consul-template.service', ) { validate_string($logrotate_compress) validate_integer($logrotate_files) validate_bool($logrotate_on) validate_string($logrotate_period) validate_string($restart_sysv) validate_string($restart_systemd) case $::osfamily { 'RedHat': { case $::operatingsystem { 'RedHat', 'CentOS', 'OracleLinux', 'Scientific': { if(versioncmp($::operatingsystemrelease, '7') > 0) { $postrotate_command = $restart_systemd } elsif (versioncmp($::operatingsystemrelease, '7') < 0) { $postrotate_command = $restart_sysv } else { $postrotate_command = $restart_systemd } } 'Amazon': { $postrotate_command = $restart_sysv } default: { $postrotate_command = $restart_sysv } } } } if $logrotate_on { file { '/etc/logrotate.d/consul-template': ensure => present, content => template("${module_name}/consul-template.logrotate.erb"), owner => 'root', group => 'root', mode => '0644', } } }