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