summaryrefslogtreecommitdiff
path: root/manifests/site.pp
blob: 9997e975997fbaf6147b7ade3fe2b0c3d4eee4ff (plain)
1
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
40
41
42
43
define nginx::site(
  $ensure         = present,
  $ssl            = present,
  $source         = 'template',
  $certbot        = true,
  $template       = 'site',
  $backend        = 'weblocal',
  $aliases        = "*.${name}",
  $cache          = false,
  $cache_levels   = '1:2',
  $cache_size     = '10m',
  $cache_inactive = '600s',
  $cache_max_size = '1m',
) {
  nginx::site::config { $name:
    ensure   => $ensure,
    source   => $source,
    template => $template,
    backend  => $backend,
    aliases  => $aliases,
  }

  if $certbot == true {
    certbot::manage { $name:
      aliases  => $aliases,
      pre_hook => '/usr/sbin/service nginx restart',
      require  => Nginx::Site::Config[$name],
    }
  }

  nginx::site::config { "${name}-ssl":
    server_name => $name,
    ensure      => $ssl,
    source      => $source,
    template    => "${template}-ssl",
    backend     => $backend,
    aliases     => $aliases,
    require     => $certbot ? {
      true    => Certbot::Manage[$name],
      default => undef,
    }
  }
}