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