cleanup
[mirror/dsa-puppet.git] / modules / apache2 / manifests / site.pp
index 3429238..8fa5fdf 100644 (file)
@@ -1,14 +1,16 @@
 define apache2::site (
        $config = undef,
-       $template = undef,
+       $template = false,
        $ensure = present,
        $site = undef
 ) {
 
        include apache2
 
-       if ! ($config or $template) {
-               err ( "No configuration found for ${name}" )
+       if $ensure == present {
+               if ! ($config or $template) {
+                       fail ( "No configuration found for ${name}" )
+               }
        }
 
        if $site {
@@ -22,22 +24,25 @@ define apache2::site (
        $link_target = $ensure ? {
                present => $target,
                absent  => absent,
-               default => err ( "Unknown ensure value: '$ensure'" ),
+               default => fail ( "Unknown ensure value: '$ensure'" ),
        }
 
-       if $template {
-               file { $target:
-                       ensure  => $ensure,
-                       content => template($template),
-                       require => Package['apache2'],
-                       notify  => Service['apache2'],
+       case $template {
+               false: {
+                       file { $target:
+                               ensure  => $ensure,
+                               source  => $config,
+                               require => Package['apache2'],
+                               notify  => Service['apache2'],
+                       }
                }
-       } else {
-               file { $target:
-                       ensure  => $ensure,
-                       source  => $config,
-                       require => Package['apache2'],
-                       notify  => Service['apache2'],
+               default: {
+                       file { $target:
+                               ensure  => $ensure,
+                               content => template($template),
+                               require => Package['apache2'],
+                               notify  => Service['apache2'],
+                       }
                }
        }