Put the bsmtp file under puppet
[mirror/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           purge   => true
19         ;
20         "/etc/exim4/exim4.conf":
21           content => template("exim/eximconf.erb"),
22           require => Package["exim4-daemon-heavy"],
23           notify  => Exec["exim4 reload"]
24         ;
25         "/etc/exim4/manualroute":
26           require => Package["exim4-daemon-heavy"],
27           source  => [ "puppet:///exim/per-host/$fqdn/manualroute",
28                        "puppet:///exim/common/manualroute" ]
29           ;
30         "/etc/exim4/blacklist":
31           require => Package["exim4-daemon-heavy"],
32           source  => [ "puppet:///exim/per-host/$fqdn/blacklist",
33                        "puppet:///exim/common/blacklist" ]
34           ;
35         "/etc/exim4/callout_users":
36           require => Package["exim4-daemon-heavy"],
37           source  => [ "puppet:///exim/per-host/$fqdn/callout_users",
38                        "puppet:///exim/common/callout_users" ]
39           ;
40         "/etc/exim4/grey_users":
41           require => Package["exim4-daemon-heavy"],
42           source  => [ "puppet:///exim/per-host/$fqdn/grey_users",
43                        "puppet:///exim/common/grey_users" ]
44           ;
45         "/etc/exim4/helo-check":
46           require => Package["exim4-daemon-heavy"],
47           source  => [ "puppet:///exim/per-host/$fqdn/helo-check",
48                        "puppet:///exim/common/helo-check" ]
49           ;
50         "/etc/exim4/bsmtp":
51           require => Package["exim4-daemon-heavy"],
52           content => template("exim/bsmtp.erb")
53           ;
54         "/etc/exim4/locals":
55           require => Package["exim4-daemon-heavy"],
56           content => template("exim/locals.erb")
57           ;
58         "/etc/exim4/localusers":
59           require => Package["exim4-daemon-heavy"],
60           source  => [ "puppet:///exim/per-host/$fqdn/localusers",
61                        "puppet:///exim/common/localusers" ]
62           ;
63         "/etc/exim4/rbllist":
64           require => Package["exim4-daemon-heavy"],
65           source  => [ "puppet:///exim/per-host/$fqdn/rbllist",
66                        "puppet:///exim/common/rbllist" ]
67           ;
68         "/etc/exim4/rcpthosts":
69           require => Package["exim4-daemon-heavy"],
70           source  => [ "puppet:///exim/per-host/$fqdn/rcpthosts",
71                        "puppet:///exim/common/rcpthosts" ]
72           ;
73         "/etc/exim4/rhsbllist":
74           require => Package["exim4-daemon-heavy"],
75           source  => [ "puppet:///exim/per-host/$fqdn/rhsbllist",
76                        "puppet:///exim/common/rhsbllist" ]
77           ;
78         "/etc/exim4/virtualdomains":
79           require => Package["exim4-daemon-heavy"],
80           content => template("exim/virtualdomains.erb")
81           ;
82         "/etc/exim4/whitelist":
83           require => Package["exim4-daemon-heavy"],
84           source  => [ "puppet:///exim/per-host/$fqdn/whitelist",
85                        "puppet:///exim/common/whitelist" ]
86           ;
87         "/etc/logrotate.d/exim4-base":
88           require => Package["exim4-daemon-heavy"],
89           source  => [ "puppet:///exim/per-host/$fqdn/logrotate-exim4-base",
90                        "puppet:///exim/common/logrotate-exim4-base" ]
91           ;
92         "/etc/logrotate.d/exim4-paniclog":
93           require => Package["exim4-daemon-heavy"],
94           source  => [ "puppet:///exim/per-host/$fqdn/logrotate-exim4-paniclog",
95                        "puppet:///exim/common/logrotate-exim4-paniclog" ]
96           ;
97         "/etc/exim4/local-settings.conf":
98           require => Package["exim4-daemon-heavy"],
99           source  => [ "puppet:///exim/per-host/$fqdn/local-settings.conf",
100                        "puppet:///exim/common/local-settings.conf" ],
101           notify  => Exec["exim4 reload"]
102           ;
103         "/etc/exim4/local-auto.conf":
104           require => Package["exim4-daemon-heavy"],
105           content => template("exim-local-auto.erb"),
106           notify  => Exec["exim4 reload"]
107           ;
108         "/etc/exim4/ssl/thishost.crt":
109           require => Package["exim4-daemon-heavy"],
110           source  => "puppet:///exim/certs/$fqdn.crt",
111           owner   => root,
112           group   => Debian-exim,
113           mode    => 640
114           ;
115         "/etc/exim4/ssl/thishost.key":
116           require => Package["exim4-daemon-heavy"],
117           source  => "puppet:///exim/certs/$fqdn.key",
118           owner   => root,
119           group   => Debian-exim,
120           mode    => 640
121           ;
122         "/etc/exim4/ssl/ca.crt":
123           require => Package["exim4-daemon-heavy"],
124           source  => "puppet:///exim/certs/ca.crt",
125           owner   => root,
126           group   => Debian-exim,
127           mode    => 640
128           ;
129         "/etc/exim4/ssl/ca.crl":
130           require => Package["exim4-daemon-heavy"],
131           source  => "puppet:///exim/certs/ca.crl",
132           owner   => root,
133           group   => Debian-exim,
134           mode    => 640
135           ;
136     }
137
138     exec { "exim4 reload":
139         path        => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin",
140         refreshonly => true,
141     }
142 }