Puppet Class: supervisor

Defined in:
manifests/init.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
# File 'manifests/init.pp', line 1

class supervisor {

  require pip

  pip::install { "supervisor": }

  service { "supervisord":
    ensure    => running,
    enable    => true,
    require   => [Pip::Install['supervisor'],
                  File['/etc/init.d/supervisord']],
    stop      => '/etc/init.d/supervisord stop',
    start     => '/etc/init.d/supervisord start',
    restart   => '/etc/init.d/supervisord restart',
    subscribe => File['/etc/supervisord.conf'],
  }

  case $operatingsystem {
    'debian': { $supervisord_conf = "puppet:///modules/supervisor/debian-isnok-initscript" }
    'ubuntu': { $supervisord_conf = "puppet:///modules/supervisor/ubuntu-initscript" }
    'redhat',
    'centos',
    'amazon': { $supervisord_conf = "puppet:///modules/supervisor/redhat-init-mingalevme"}
  }

  file { '/etc/init.d/supervisord':
    source  => $supervisord_conf,
    mode    => '0755',
  }

  file { '/etc/supervisor':
    ensure => directory,
  }

  file { '/etc/supervisord.conf':
    source  => 'puppet:///modules/supervisor/supervisord.conf',
    require => File['/etc/supervisor'],
  }

  file { '/etc/supervisor/conf.d/':
    ensure  => directory,
    recurse => true,
    purge   => true,
    notify  => Service['supervisord'],
    require => File['/etc/supervisor'],
  }
}