class apache( String $package_name, Stdlib::Absolutepath $config_file, String $service_name, Stdlib::Ensure::Service $ensure = 'running', Boolean $enable = true, ) { package { $package_name: ensure => installed, before => File[$config_file], } file { $config_file: ensure => file, content => template('apache/httpd.conf'), notify => Service[$service_name], } service { $service_name: ensure => $ensure, enable => $enable, } }