X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fexim%2Fmanifests%2Finit.pp;h=b2c1e71faba525339422400fa5c6ba074248b4ba;hb=85e69a1445c82de137d48da44ed9f30ab643d209;hp=1686b04735bda5a9e25b00956f6d022a7959bb2f;hpb=21d0fb04331cc17561e3a6ab49954470c9236a2c;p=mirror%2Fdsa-puppet.git diff --git a/modules/exim/manifests/init.pp b/modules/exim/manifests/init.pp index 1686b0473..b2c1e71fa 100644 --- a/modules/exim/manifests/init.pp +++ b/modules/exim/manifests/init.pp @@ -1,7 +1,28 @@ class exim { - package { exim4-daemon-heavy: ensure => latest } + package { exim4-daemon-heavy: ensure => installed } + case $hostname { + handel: { + file { + "/etc/exim4/exim4.conf": + content => template("exim/eximconf.erb"), + require => Package["exim4-daemon-heavy"], + notify => Exec["exim4 reload"] + ; + } + } + default: { + file { + "/etc/exim4/exim4.conf": + source => [ "puppet:///exim/per-host/$fqdn/exim4.conf", + "puppet:///exim/common/exim4.conf" ], + require => Package["exim4-daemon-heavy"], + notify => Exec["exim4 reload"] + ; + } + } + } file { "/etc/exim4/": ensure => directory, @@ -10,11 +31,17 @@ class exim { mode => 755, purge => true ; - "/etc/exim4/exim4.conf": - source => [ "puppet:///exim/per-host/$fqdn/exim4.conf", - "puppet:///exim/common/exim4.conf" ], + "/etc/exim4/ssl": + ensure => directory, + owner => root, + group => Debian-exim, + mode => 750, + purge => true + ; + "/etc/exim4/manualroute": require => Package["exim4-daemon-heavy"], - notify => Exec["exim4 reload"] + source => [ "puppet:///exim/per-host/$fqdn/manualroute", + "puppet:///exim/common/manualroute" ] ; "/etc/exim4/blacklist": require => Package["exim4-daemon-heavy"], @@ -38,8 +65,7 @@ class exim { ; "/etc/exim4/locals": require => Package["exim4-daemon-heavy"], - source => [ "puppet:///exim/per-host/$fqdn/locals", - "puppet:///exim/common/locals" ] + content => template("exim/locals.erb") ; "/etc/exim4/localusers": require => Package["exim4-daemon-heavy"], @@ -63,8 +89,7 @@ class exim { ; "/etc/exim4/virtualdomains": require => Package["exim4-daemon-heavy"], - source => [ "puppet:///exim/per-host/$fqdn/virtualdomains", - "puppet:///exim/common/virtualdomains" ] + content => template("exim/virtualdomains.erb") ; "/etc/exim4/whitelist": require => Package["exim4-daemon-heavy"], @@ -81,6 +106,45 @@ class exim { source => [ "puppet:///exim/per-host/$fqdn/logrotate-exim4-paniclog", "puppet:///exim/common/logrotate-exim4-paniclog" ] ; + "/etc/exim4/local-settings.conf": + require => Package["exim4-daemon-heavy"], + source => [ "puppet:///exim/per-host/$fqdn/local-settings.conf", + "puppet:///exim/common/local-settings.conf" ], + notify => Exec["exim4 reload"] + ; + "/etc/exim4/local-auto.conf": + require => Package["exim4-daemon-heavy"], + content => template("exim-local-auto.erb"), + notify => Exec["exim4 reload"] + ; + "/etc/exim4/ssl/thishost.crt": + require => Package["exim4-daemon-heavy"], + source => "puppet:///exim/certs/$fqdn.crt", + owner => root, + group => Debian-exim, + mode => 640 + ; + "/etc/exim4/ssl/thishost.key": + require => Package["exim4-daemon-heavy"], + source => "puppet:///exim/certs/$fqdn.key", + owner => root, + group => Debian-exim, + mode => 640 + ; + "/etc/exim4/ssl/ca.crt": + require => Package["exim4-daemon-heavy"], + source => "puppet:///exim/certs/ca.crt", + owner => root, + group => Debian-exim, + mode => 640 + ; + "/etc/exim4/ssl/ca.crl": + require => Package["exim4-daemon-heavy"], + source => "puppet:///exim/certs/ca.crl", + owner => root, + group => Debian-exim, + mode => 640 + ; } exec { "exim4 reload": @@ -89,11 +153,7 @@ class exim { } } -class exim-extended inherits exim { - file { - "/etc/exim4/test": - require => Package["exim4-daemon-heavy"], - content => template("exim-test.erb") - ; - } +class eximmx inherits exim { + include clamav + include postgrey }