]> git.donarmstrong.com Git - dsa-puppet.git/blob - modules/exim/manifests/init.pp
let's see how bad puppet's scoping is
[dsa-puppet.git] / modules / exim / manifests / init.pp
1 class exim {
2     activate_munin_check {
3             "exim_mailqueue":;
4             "exim_mailstats":;
5             "postfix_mailqueue":  ensure => absent;
6             "postfix_mailstats":  ensure => absent;
7             "postfix_mailvolume": ensure => absent;
8     }
9
10
11     package { exim4-daemon-heavy: ensure => installed }
12
13     file {
14         "/etc/exim4/":
15           ensure  => directory,
16           owner   => root,
17           group   => root,
18           mode    => 755,
19           purge   => true
20         ;
21         "/etc/exim4/ssl":
22           ensure  => directory,
23           owner   => root,
24           group   => Debian-exim,
25           mode    => 750,
26           require => Package["exim4-daemon-heavy"],
27           purge   => true
28         ;
29         "/etc/mailname":
30           content => template("exim/mailname.erb"),
31         ;
32         "/etc/exim4/exim4.conf":
33           content => template("exim/eximconf.erb"),
34           require => Package["exim4-daemon-heavy"],
35           notify  => Exec["exim4 reload"]
36         ;
37         "/etc/exim4/manualroute":
38           require => Package["exim4-daemon-heavy"],
39           content => template("exim/manualroute.erb")
40           ;
41         "/etc/exim4/host_blacklist":
42           require => Package["exim4-daemon-heavy"],
43           source  => [ "puppet:///exim/per-host/$fqdn/host_blacklist",
44                        "puppet:///exim/common/host_blacklist" ]
45           ;
46         "/etc/exim4/blacklist":
47           require => Package["exim4-daemon-heavy"],
48           source  => [ "puppet:///exim/per-host/$fqdn/blacklist",
49                        "puppet:///exim/common/blacklist" ]
50           ;
51         "/etc/exim4/callout_users":
52           require => Package["exim4-daemon-heavy"],
53           source  => [ "puppet:///exim/per-host/$fqdn/callout_users",
54                        "puppet:///exim/common/callout_users" ]
55           ;
56         "/etc/exim4/grey_users":
57           require => Package["exim4-daemon-heavy"],
58           source  => [ "puppet:///exim/per-host/$fqdn/grey_users",
59                        "puppet:///exim/common/grey_users" ]
60           ;
61         "/etc/exim4/helo-check":
62           require => Package["exim4-daemon-heavy"],
63           source  => [ "puppet:///exim/per-host/$fqdn/helo-check",
64                        "puppet:///exim/common/helo-check" ]
65           ;
66         "/etc/exim4/locals":
67           require => Package["exim4-daemon-heavy"],
68           content => template("exim/locals.erb")
69           ;
70         "/etc/exim4/localusers":
71           require => Package["exim4-daemon-heavy"],
72           source  => [ "puppet:///exim/per-host/$fqdn/localusers",
73                        "puppet:///exim/common/localusers" ]
74           ;
75         "/etc/exim4/rbllist":
76           require => Package["exim4-daemon-heavy"],
77           source  => [ "puppet:///exim/per-host/$fqdn/rbllist",
78                        "puppet:///exim/common/rbllist" ]
79           ;
80         "/etc/exim4/rcpthosts":
81           require => Package["exim4-daemon-heavy"],
82           source  => [ "puppet:///exim/per-host/$fqdn/rcpthosts",
83                        "puppet:///exim/common/rcpthosts" ]
84           ;
85         "/etc/exim4/rhsbllist":
86           require => Package["exim4-daemon-heavy"],
87           source  => [ "puppet:///exim/per-host/$fqdn/rhsbllist",
88                        "puppet:///exim/common/rhsbllist" ]
89           ;
90         "/etc/exim4/virtualdomains":
91           require => Package["exim4-daemon-heavy"],
92           content => template("exim/virtualdomains.erb")
93           ;
94         "/etc/exim4/whitelist":
95           require => Package["exim4-daemon-heavy"],
96           source  => [ "puppet:///exim/per-host/$fqdn/whitelist",
97                        "puppet:///exim/common/whitelist" ]
98           ;
99         "/etc/logrotate.d/exim4-base":
100           require => Package["exim4-daemon-heavy"],
101           source  => [ "puppet:///exim/per-host/$fqdn/logrotate-exim4-base",
102                        "puppet:///exim/common/logrotate-exim4-base" ]
103           ;
104         "/etc/logrotate.d/exim4-paniclog":
105           require => Package["exim4-daemon-heavy"],
106           source  => [ "puppet:///exim/per-host/$fqdn/logrotate-exim4-paniclog",
107                        "puppet:///exim/common/logrotate-exim4-paniclog" ]
108           ;
109         "/etc/exim4/local-auto.conf":
110           require => Package["exim4-daemon-heavy"],
111           content => template("exim-local-auto.erb"),
112           notify  => Exec["exim4 reload"]
113           ;
114         "/etc/exim4/ssl/thishost.crt":
115           require => Package["exim4-daemon-heavy"],
116           source  => "puppet:///exim/certs/$fqdn.crt",
117           owner   => root,
118           group   => Debian-exim,
119           mode    => 640
120           ;
121         "/etc/exim4/ssl/thishost.key":
122           require => Package["exim4-daemon-heavy"],
123           source  => "puppet:///exim/certs/$fqdn.key",
124           owner   => root,
125           group   => Debian-exim,
126           mode    => 640
127           ;
128         "/etc/exim4/ssl/ca.crt":
129           require => Package["exim4-daemon-heavy"],
130           source  => "puppet:///exim/certs/ca.crt",
131           owner   => root,
132           group   => Debian-exim,
133           mode    => 640
134           ;
135         "/etc/exim4/ssl/ca.crl":
136           require => Package["exim4-daemon-heavy"],
137           source  => "puppet:///exim/certs/ca.crl",
138           owner   => root,
139           group   => Debian-exim,
140           mode    => 640
141           ;
142     }
143
144     exec { "exim4 reload":
145         path        => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin",
146         refreshonly => true,
147     }
148 }