view modules/website/manifests/http.pp @ 277:13825cc1ec57

Replace deprecated validation methods Puppet now supports data types
author IBBoard <dev@ibboard.co.uk>
date Sun, 26 Jan 2020 12:08:03 +0000
parents 1df1e161bbb5
children af7df930a670
line wrap: on
line source

define website::http(
    $docroot            = undef,
    $docroot_owner      = 'root',
    $docroot_group      = 'root',
    $serveraliases      = [],
    $ensure             = 'present',
    $custom_fragment    = undef
  ) {
  if ! defined(Class['website']) {
    fail('You must include the website base class before using any website defined resources')
  }

  $shortname = domain_to_short_name($name)
  $logpart = $shortname

  if $docroot == undef {
    $siteroot = "${website::basedir}/${shortname}"
  } else {
    $siteroot = $docroot
  }

  apache::vhost { $name:
    port            => '80',
    docroot         => $siteroot,
    docroot_owner   => $docroot_owner,
    docroot_group   => $docroot_group,
    docroot_mode    => '2775',
    custom_fragment => $custom_fragment,
    logroot         => '/var/log/apache/',
    access_log_file => "access_${logpart}.log",
    access_log_format => "%h %l %u %t \\\"%r\\\" %>s %b \\\"%{Referer}i\\\" \\\"%{User-agent}i\\\" %{Host}i",
    serveraliases   => $serveraliases,
    ensure          => $ensure,
  }
}