summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--manifests/init.pp32
1 files changed, 23 insertions, 9 deletions
diff --git a/manifests/init.pp b/manifests/init.pp
index 33c8d27..4cdbe02 100644
--- a/manifests/init.pp
+++ b/manifests/init.pp
@@ -84,15 +84,29 @@ class apache {
define site($ensure = present, $docroot = false, $redirect = false,
$redirect_match = false, $protocol = 'http',
- $server_alias = false, $use = false, $ticket = false) {
- file { "${apache2_sites}-available/$title":
- ensure => $ensure,
- content => template('apache/site.erb'),
- owner => root,
- group => root,
- mode => 0644,
- require => File["${apache2_macros}"],
- notify => Service["apache"],
+ $server_alias = false, $use = false, $ticket = false,
+ $source = false) {
+
+ if $source {
+ file { "${apache2_sites}-available/$title":
+ ensure => $ensure,
+ source => $source,
+ owner => root,
+ group => root,
+ mode => 0644,
+ require => File["${apache2_macros}"],
+ notify => Service["apache"],
+ }
+ } else {
+ file { "${apache2_sites}-available/$title":
+ ensure => $ensure,
+ content => template('apache/site.erb'),
+ owner => root,
+ group => root,
+ mode => 0644,
+ require => File["${apache2_macros}"],
+ notify => Service["apache"],
+ }
}
$status = $ensure ? {