X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fapache2%2Fmanifests%2Fsite.pp;h=4588a60242e707202e15557c8fd5d1aef55a89bf;hb=81539d50730aeffc1418d8f597a90587ba1594a0;hp=708e6fa0133e6462c1336a3e3bff7dae47cb8592;hpb=3eb533e5499e66423bafdedaf6c7d08ead1772de;p=mirror%2Fdsa-puppet.git diff --git a/modules/apache2/manifests/site.pp b/modules/apache2/manifests/site.pp index 708e6fa01..4588a6024 100644 --- a/modules/apache2/manifests/site.pp +++ b/modules/apache2/manifests/site.pp @@ -1,14 +1,20 @@ define apache2::site ( - $config = undef, - $template = undef, - $ensure = present, - $site = undef + $source=undef, + $content=undef, + $ensure=present, + $site=undef ) { include apache2 - if ! ($config or $template) { - err ( "No configuration found for ${name}" ) + case $ensure { + present: { + if ! ($source or $content) { + fail ( "No configuration found for ${name}" ) + } + } + absent: {} + default: { fail ( "Unknown ensure value: '$ensure'" ) } } if $site { @@ -21,28 +27,35 @@ define apache2::site ( $link_target = $ensure ? { present => $target, - absent => absent, - default => err ( "Unknown ensure value: '$ensure'" ), + absent => absent } - if $template { + if $content { file { $target: ensure => $ensure, - content => template($template), + content => $content, require => Package['apache2'], notify => Service['apache2'], } } else { file { $target: ensure => $ensure, - source => $config, + source => $source, require => Package['apache2'], notify => Service['apache2'], } } - file { "/etc/apache2/sites-enabled/${name}": - ensure => $link_target, - notify => Service['apache2'], + if $ensure == present { + file { "/etc/apache2/sites-enabled/${name}": + ensure => link, + target => $link_target, + notify => Service['apache2'], + } + } else { + file { "/etc/apache2/sites-enabled/${name}": + ensure => absent, + notify => Service['apache2'], + } } }