Puppet Class: varnish::config

Defined in:
manifests/config.pp

Overview



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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'manifests/config.pp', line 1

class varnish::config {
  case $::osfamily {
    'Debian': {
      if versioncmp($::operatingsystemmajrelease, '8') >= 0 {
        include ::systemd

        file { '/etc/systemd/system/varnish.service':
          ensure  => 'file',
          owner   => 'root',
          group   => 'root',
          mode    => '0644',
          source  => '/lib/systemd/system/varnish.service',
          replace => false,
        }

        Varnish_param {
          ensure  => present,
          require => File['/etc/systemd/system/varnish.service'],
          notify  => Exec['systemctl-daemon-reload'],
        }

        varnish_param {
          'listen_address':       value => $::varnish::listen_address;
          'listen_port':          value => $::varnish::listen_port;
          'admin_listen_address': value => $::varnish::admin_listen_address;
          'admin_listen_port':    value => $::varnish::admin_listen_port;
          'group':                value => $::varnish::group;
          'user':                 value => $::varnish::user;
          'secret_file':          value => $::varnish::secret_file;
          'storage':              value => $::varnish::storage;
          'ttl':                  value => $::varnish::ttl;
          'vcl_conf':             value => $::varnish::vcl_conf;
        }
      } else {
        fail "${::operatingsystem}${::operatingsystemmajrelease} not yet supported"
      }
    }
    'RedHat': {
      Varnish_param {
        ensure  => present,
      }

      varnish_param {
        'listen_address':       value => $::varnish::listen_address;
        'listen_port':          value => $::varnish::listen_port;
        'admin_listen_address': value => $::varnish::admin_listen_address;
        'admin_listen_port':    value => $::varnish::admin_listen_port;
        'group':                value => $::varnish::group;
        'user':                 value => $::varnish::user;
        'secret_file':          value => $::varnish::secret_file;
        'storage':              value => $::varnish::storage;
        'ttl':                  value => $::varnish::ttl;
        'vcl_conf':             value => $::varnish::vcl_conf;
      }
    }
    default: {
      fail "Unsupported Operating System family: ${::osfamily}"
    }
  }
}