Gehel has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/341782 )
Change subject: logrotate - introduce a generic logrotate template ...................................................................... logrotate - introduce a generic logrotate template We seem to have a lot of logrotate templates, most of which are fairly similar. We already have a logrotate module with a very basic defined type which manages the creation of the logrotate configuration files but not their content. It seems natural to extend this defined type to provide a default template. The approach taken here is to provide a set of parameters to configure logrotate, but not to provide an open ended hash of parameters. This makes the parameters more discoverable and ensures some validity checking. Change-Id: Ic7b09086397d8b86fbcde3ceee1fa762c904b7f1 --- M modules/eventlogging/manifests/server.pp D modules/eventlogging/templates/logrotate.erb M modules/geoip/manifests/data/maxmind.pp D modules/geoip/templates/geoipupdate.logrotate.erb M modules/logrotate/manifests/conf.pp 5 files changed, 34 insertions(+), 31 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/operations/puppet refs/changes/82/341782/1 diff --git a/modules/eventlogging/manifests/server.pp b/modules/eventlogging/manifests/server.pp index 34bd6ec..ad4e5dc 100644 --- a/modules/eventlogging/manifests/server.pp +++ b/modules/eventlogging/manifests/server.pp @@ -105,9 +105,15 @@ } logrotate::conf { 'eventlogging': - ensure => present, - content => template('eventlogging/logrotate.erb'), - require => File[$log_dir], + ensure => present, + file_pattern => "${log_dir}/*.log", + not_if_empty => true, + max_age => 30, + rotate => 2, + date_ext => true, + compress => true, + delay_compress => true, + missing_ok => true, } # Temporary conditional while we migrate eventlogging service over to diff --git a/modules/eventlogging/templates/logrotate.erb b/modules/eventlogging/templates/logrotate.erb deleted file mode 100644 index 82e1271..0000000 --- a/modules/eventlogging/templates/logrotate.erb +++ /dev/null @@ -1,13 +0,0 @@ -# This file is managed by Puppet. -# puppet:///eventlogging/logrotate.erb -# Rotate eventlogging daemon runtime logs -# -<%= @log_dir %>/*.log { - notifempty - maxage 30 - rotate 2 - dateext - compress - delaycompress - missingok -} diff --git a/modules/geoip/manifests/data/maxmind.pp b/modules/geoip/manifests/data/maxmind.pp index 570be56..6f1d3cd 100644 --- a/modules/geoip/manifests/data/maxmind.pp +++ b/modules/geoip/manifests/data/maxmind.pp @@ -90,8 +90,11 @@ # logrotate for geoipupdate.log logrotate::conf { 'geoipupdate': - ensure => present, - content => template('geoip/geoipupdate.logrotate.erb'), - require => Cron['geoipupdate'], + ensure => present, + file_pattern => $geoipupdate_log, + size => '1M', + rotate => 1, + missing_ok => true, + not_if_empty => true, } } diff --git a/modules/geoip/templates/geoipupdate.logrotate.erb b/modules/geoip/templates/geoipupdate.logrotate.erb deleted file mode 100644 index 36f48a7..0000000 --- a/modules/geoip/templates/geoipupdate.logrotate.erb +++ /dev/null @@ -1,11 +0,0 @@ -# Note: This file is managed by Puppet. - -# Rotate geoipupdate.log generated by -# the geoipupdate cron job. - -<%= @geoipupdate_log %> { - size 1M - rotate 1 - missingok - notifempty -} diff --git a/modules/logrotate/manifests/conf.pp b/modules/logrotate/manifests/conf.pp index e3ad5eb..2294f4b 100644 --- a/modules/logrotate/manifests/conf.pp +++ b/modules/logrotate/manifests/conf.pp @@ -8,7 +8,25 @@ $ensure = present, $source = undef, $content = undef, + $file_pattern = undef, + $not_if_empty = false, + $max_age = undef, + $rotate = undef, + $date_ext = false, + $compress = false, + $delay_compress = false, + $missing_ok = false, + $size = undef, ) { + + if $source or $content { + $real_content = $content + } else { + if $file_pattern == undef { + fail('$file_pattern needs to be defined when using default template') + } + $real_content = template('logrotate/logrotate.erb') + } file { "/etc/logrotate.d/${title}": ensure => $ensure, @@ -16,6 +34,6 @@ group => 'root', mode => '0444', source => $source, - content => $content, + content => $real_content, } } -- To view, visit https://gerrit.wikimedia.org/r/341782 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic7b09086397d8b86fbcde3ceee1fa762c904b7f1 Gerrit-PatchSet: 1 Gerrit-Project: operations/puppet Gerrit-Branch: production Gerrit-Owner: Gehel <guillaume.leder...@wikimedia.org> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits