Defined Type: apache::vhost::custom

Defined in:
manifests/vhost/custom.pp

Overview

See README.md for usage information

Parameters:

  • content (Any)
  • ensure (Any) (defaults to: 'present')
  • priority (Any) (defaults to: '25')
  • verify_config (Any) (defaults to: true)


2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'manifests/vhost/custom.pp', line 2

define apache::vhost::custom(
  $content,
  $ensure = 'present',
  $priority = '25',
  $verify_config = true,
) {
  include ::apache

  ## Apache include does not always work with spaces in the filename
  $filename = regsubst($name, ' ', '_', 'G')

  ::apache::custom_config { $filename:
    ensure        => $ensure,
    confdir       => $::apache::vhost_dir,
    content       => $content,
    priority      => $priority,
    verify_config => $verify_config,
  }

  # NOTE(pabelanger): This code is duplicated in ::apache::vhost and needs to
  # converted into something generic.
  if $::apache::vhost_enable_dir {
    $vhost_symlink_ensure = $ensure ? {
      present => link,
      default => $ensure,
    }

    file { "${priority}-${filename}.conf symlink":
      ensure  => $vhost_symlink_ensure,
      path    => "${::apache::vhost_enable_dir}/${priority}-${filename}.conf",
      target  => "${::apache::vhost_dir}/${priority}-${filename}.conf",
      owner   => 'root',
      group   => $::apache::params::root_group,
      mode    => $::apache::file_mode,
      require => Apache::Custom_config[$filename],
    }
  }
}