diff options
Diffstat (limited to 'manifests/config/file.pp')
-rw-r--r-- | manifests/config/file.pp | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/manifests/config/file.pp b/manifests/config/file.pp new file mode 100644 index 0000000..6fa98c4 --- /dev/null +++ b/manifests/config/file.pp @@ -0,0 +1,37 @@ +define lighttpd::config::file( + $ensure = present, + $conf_source = 'absent', + $content = 'absent' +){ + file{"/etc/lighttpd/conf.d/${name}.conf": + ensure => $ensure, + notify => Service['lighttpd'], + owner => root, group => 0, mode => 0644; + } + + case $content { + 'absent': { + File["/etc/lighttpd/conf.d/${name}.conf"]{ + source => $conf_source ? { + 'absent' => [ + "puppet://$server/modules/site-lighttpd/conf.d/$fqdn/$name.conf", + "puppet://$server/modules/site-lighttpd/conf.d/$lighttpd_cluster_node/$name.conf", + "puppet://$server/modules/site-lighttpd/conf.d/$operatingsystem.$lsbdistcodename/$name.conf", + "puppet://$server/modules/site-lighttpd/conf.d/$operatingsystem/$name.conf", + "puppet://$server/modules/site-lighttpd/conf.d/$name.conf", + "puppet://$server/modules/lighttpd/conf.d/$name.conf", + "puppet://$server/modules/lighttpd/conf.d/$operatingsystem.$lsbdistcodename/$name.conf", + "puppet://$server/modules/lighttpd/conf.d/$operatingsystem/$name.conf", + "puppet://$server/modules/lighttpd/conf.d/$name.conf" + ], + default => "puppet://$server/$conf_source", + } + } + } + default: { + File["/etc/lighttpd/conf.d/${name}.conf"]{ + content => $content, + } + } + } +} |