diff --git a/manifests/init.pp b/manifests/init.pp index f9607a542f7c5659c66db03feddafe6cb366ce22..566e2da8bd06ac05bc4b993aaf0acc0d95851a6c 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -14,6 +14,7 @@ class apache { $configfile = '/etc/httpd/conf/httpd.conf' $configdir = '/etc/httpd/conf.d' + $logdir = '/var/log/httpd' } @@ -70,3 +71,26 @@ class apache::service hasstatus => true, hasrestart => true; } } + + + +/* + * Manage the Apache log directory. + * This is mostly intended for those that don't want the defaults. + * By default, it sets ownership and permissions to the same as the + * RedHat packages do. + * To save a little bit of execution time, this is not included by the + * apache::base class, so users need to include it themselves. + */ + +class apache::logdir($owner='root', $group='root', $mode=0700) +{ + include apache + + file { + $apache::logdir: + ensure => directory, + owner => $owner, group => $group, mode => $mode, + require => Package['httpd'], before => Class[apache::service]; + } +}