X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fexim%2Fmanifests%2Finit.pp;h=b2c1e71faba525339422400fa5c6ba074248b4ba;hb=85e69a1445c82de137d48da44ed9f30ab643d209;hp=815ff16781ff89ad9d0d4dce6b460fe8dd99670b;hpb=7569c8f545e7675a56fc711d5fa646b04031ed7a;p=mirror%2Fdsa-puppet.git diff --git a/modules/exim/manifests/init.pp b/modules/exim/manifests/init.pp index 815ff1678..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,3 +153,7 @@ class exim { } } +class eximmx inherits exim { + include clamav + include postgrey +}