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