configfile { '/etc/nagios/': source => 'system/nagios/', owner => nagios, group => nagios, recurse => true, require => Package['nagios.x86_64'], notify => Service['nagios'], } service { nagios: ensure => running, require => Package['nagios.x86_64'], enable => true, restart => "/etc/init.d/nagios reload" } #### elsewhere define configfile($owner = root, $group = root, $mode = 644, $source, $backup = main, $recurse = false, $ensure = file) { file { $name: mode => $mode, owner => $owner, group => $group, backup => $backup, recurse => $recurse, ensure => $ensure, source => "puppet:///config/$source" } }