| 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
61
 | class nodo::role::web inherits nodo::base::vserver {
  # Hidden services
  $hidden = hiera('apache::site::hidden', false)
  if $hidden == true {
    include onion
  }
  # Munin
  munin::plugin { [ 'apache_accesses', 'apache_processes', 'apache_volume' ]:
    ensure => present,
  }
  munin::plugin { [ 'mysql_queries', 'mysql_slowqueries', 'mysql_bytes', 'mysql_threads' ]:
    ensure => present,
    config => "user root",
  }
  # Classes for web nodes
  include database
  include users::virtual
  include nodo::utils::web
  # The websites class
  require websites
  # Reprepro configuration
  $reprepro         = hiera('nodo::web::reprepro', false)
  $reprepro_basedir = '/var/reprepro'
  case $reprepro {
    true,'enabled': {
      class { 'reprepro':
        basedir   => '/var/reprepro',
        uploaders => hiera('nodo::web::reprepro_uploaders', [ ]),
      }
      include reprepro::cron
    }
    'disabled': {
      class { 'reprepro::disabled':
        basedir => '/var/reprepro',
      }
    }
    'purged': {
      class { 'reprepro::purged':
        basedir => '/var/reprepro',
      }
    }
    false,default: { }
  }
  $git_daemon = hiera('nodo::web::git_daemon', True)
  if $git_daemon != false {
    class { 'git::daemon': }
  }
  backupninja::svn { "svn":
    src => "/var/svn",
  }
}
 |