From 9bee8a31f2305dda884aeab3caf3bf91cd8603ba Mon Sep 17 00:00:00 2001 From: Ewoud Kohl van Wijngaarden Date: Tue, 2 Jul 2013 23:07:00 +0200 Subject: Unify logrotate files into templates --- files/config/host/logrotate.CentOS | 35 ----------------------- files/config/host/logrotate.Debian | 35 ----------------------- manifests/host/cgi.pp | 12 +++----- spec/classes/munin_host_cgi_spec.rb | 57 +++++++++++++++++++++++++++++++++++++ templates/logrotate.conf.erb | 35 +++++++++++++++++++++++ 5 files changed, 96 insertions(+), 78 deletions(-) delete mode 100644 files/config/host/logrotate.CentOS delete mode 100644 files/config/host/logrotate.Debian create mode 100644 spec/classes/munin_host_cgi_spec.rb create mode 100644 templates/logrotate.conf.erb diff --git a/files/config/host/logrotate.CentOS b/files/config/host/logrotate.CentOS deleted file mode 100644 index 411de3f..0000000 --- a/files/config/host/logrotate.CentOS +++ /dev/null @@ -1,35 +0,0 @@ -/var/log/munin/munin-update.log { - daily - missingok - rotate 7 - compress - notifempty - create 640 munin adm -} - -/var/log/munin/munin-graph.log { - daily - missingok - rotate 7 - compress - notifempty - create 660 munin apache -} - -/var/log/munin/munin-html.log { - daily - missingok - rotate 7 - compress - notifempty - create 640 munin adm -} - -/var/log/munin/munin-limits.log { - daily - missingok - rotate 7 - compress - notifempty - create 640 munin adm -} diff --git a/files/config/host/logrotate.Debian b/files/config/host/logrotate.Debian deleted file mode 100644 index 732c871..0000000 --- a/files/config/host/logrotate.Debian +++ /dev/null @@ -1,35 +0,0 @@ -/var/log/munin/munin-update.log { - daily - missingok - rotate 7 - compress - notifempty - create 640 munin adm -} - -/var/log/munin/munin-graph.log { - daily - missingok - rotate 7 - compress - notifempty - create 660 munin www-data -} - -/var/log/munin/munin-html.log { - daily - missingok - rotate 7 - compress - notifempty - create 640 munin adm -} - -/var/log/munin/munin-limits.log { - daily - missingok - rotate 7 - compress - notifempty - create 640 munin adm -} diff --git a/manifests/host/cgi.pp b/manifests/host/cgi.pp index 5b0ecbb..9951a48 100644 --- a/manifests/host/cgi.pp +++ b/manifests/host/cgi.pp @@ -30,13 +30,9 @@ class munin::host::cgi( } file{'/etc/logrotate.d/munin': - source => [ "puppet:///modules/site_munin/config/host/${::fqdn}/logrotate", - "puppet:///modules/site_munin/config/host/logrotate.${::operatingsystem}", - 'puppet:///modules/site_munin/config/host/logrotate', - "puppet:///modules/munin/config/host/logrotate.${::operatingsystem}", - 'puppet:///modules/munin/config/host/logrotate' ], - owner => root, - group => 0, - mode => '0644', + content => template("${module_name}/logrotate.conf.erb"), + owner => root, + group => 0, + mode => '0644', } } diff --git a/spec/classes/munin_host_cgi_spec.rb b/spec/classes/munin_host_cgi_spec.rb new file mode 100644 index 0000000..301f964 --- /dev/null +++ b/spec/classes/munin_host_cgi_spec.rb @@ -0,0 +1,57 @@ +require 'spec_helper' + +describe 'munin::host::cgi' do + #let :pre_condition do + # 'include munin::client' + #end + + context 'on Debian' do + let :facts do + { :operatingsystem => 'Debian' } + end + + it 'should compile' do + should include_class('munin::host::cgi') + end + + it 'should exec set_modes_for_cgi' do + should contain_exec('set_modes_for_cgi').with({ + :command => 'chgrp www-data /var/log/munin /var/log/munin/munin-graph.log && chmod g+w /var/log/munin /var/log/munin/munin-graph.log && find /var/www/munin/* -maxdepth 1 -type d -exec chgrp -R www-data {} \; && find /var/www/munin/* -maxdepth 1 -type d -exec chmod -R g+w {} \;', + :refreshonly => true, + :subscribe => 'Concat::Fragment[munin.conf.header]', + }) + end + + it 'should contain logrotate.conf' do + should contain_file('/etc/logrotate.d/munin').with({ + :content => /^ create 660 munin www-data$/, + :group => 0, + :mode => '0644', + :owner => 'root', + }) + end + end + + context 'on CentOS' do + let :facts do + { :operatingsystem => 'CentOS' } + end + + it 'should exec set_modes_for_cgi' do + should contain_exec('set_modes_for_cgi').with({ + :command => 'chgrp apache /var/log/munin /var/log/munin/munin-graph.log && chmod g+w /var/log/munin /var/log/munin/munin-graph.log && find /var/www/html/munin/* -maxdepth 1 -type d -exec chgrp -R apache {} \; && find /var/www/html/munin/* -maxdepth 1 -type d -exec chmod -R g+w {} \;', + :refreshonly => true, + :subscribe => 'Concat::Fragment[munin.conf.header]', + }) + end + + it 'should contain logrotate.conf' do + should contain_file('/etc/logrotate.d/munin').with({ + :content => /^ create 660 munin apache$/, + :group => 0, + :mode => '0644', + :owner => 'root', + }) + end + end +end diff --git a/templates/logrotate.conf.erb b/templates/logrotate.conf.erb new file mode 100644 index 0000000..0e3e6ca --- /dev/null +++ b/templates/logrotate.conf.erb @@ -0,0 +1,35 @@ +/var/log/munin/munin-update.log { + daily + missingok + rotate 7 + compress + notifempty + create 640 munin adm +} + +/var/log/munin/munin-graph.log { + daily + missingok + rotate 7 + compress + notifempty + create 660 munin <%= @apache_user %> +} + +/var/log/munin/munin-html.log { + daily + missingok + rotate 7 + compress + notifempty + create 640 munin adm +} + +/var/log/munin/munin-limits.log { + daily + missingok + rotate 7 + compress + notifempty + create 640 munin adm +} -- cgit v1.2.3