Include hiera classes
[mirror/dsa-puppet.git] / manifests / site.pp
1 Package {
2         require => File['/etc/apt/apt.conf.d/local-recommends']
3 }
4
5 File {
6         owner  => root,
7         group  => root,
8         mode   => '0444',
9         ensure => file,
10 }
11
12 Exec {
13         path => '/usr/bin:/usr/sbin:/bin:/sbin'
14 }
15
16 Service {
17         hasrestart => true,
18         hasstatus  => true,
19 }
20
21 node default {
22         # this is magic: it will include whatever classes says we should
23         # include, based on the value of the "classes" array
24         hiera_include('classes')
25
26         include munin
27         include syslog_ng
28         include sudo
29         include ssh
30         include debian_org
31         include monit
32         include time
33         include ssl
34         include hardware
35         include nagios::client
36         include resolv
37         include roles
38         include motd
39         include unbound
40         include bacula::client
41         include autofs
42         include dsa_lvm
43         include grub
44         include multipath
45         include popcon
46         include portforwarder
47         include postgres
48         include haveged
49         include huge_mem
50         include tcp_bbr
51         include certregen::client
52
53         include roles::pubsub::client
54         class { 'roles::udldap::client':
55                 ensure => absent
56         }
57
58         if getfromhash($site::nodeinfo, 'ganeti') {
59                 include ganeti2
60         }
61
62         if $::kernel == 'Linux' {
63                 include linux
64                 include acpi
65         }
66
67         if $::mta == 'exim4' {
68                 if getfromhash($site::nodeinfo, 'heavy_exim') {
69                         include exim::mx
70                 } else {
71                         include exim
72                 }
73         } elsif $::mta == 'postfix' {
74                 include postfix
75         } else {
76                 include exim
77         }
78
79         if $::apache2 {
80                 include apache2
81         }
82
83         if $::hostname in [buxtehude,milanollo,lw01,lw02,lw03,lw04,lw09,lw10,senfter,gretchaninov,sibelius] {
84                 include nfs_server
85         }
86
87         if $::brokenhosts {
88                 include hosts
89         }
90
91         if $::samhain {
92                 include samhain
93         }
94
95         if $::hostname in [geo3,wieck] {
96                 include debian_org::radvd
97         }
98
99         if $::spamd {
100                 munin::check { 'spamassassin': }
101         }
102
103         if $::hostname == 'pkgmirror-csail' {
104                 include varnish_pkgmirror
105         }
106 }