]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/exim/recipes/default.rb
Only install osmadmins on 12.04 machines
[chef.git] / cookbooks / exim / recipes / default.rb
index 219629f592a997e3a14c04c863694732fb3a6b96..b92bc31f43a924472a9f80c9ea3b0e3040a7769a 100644 (file)
@@ -60,7 +60,7 @@ end
 relay_to_domains = node[:exim][:relay_to_domains]
 
 node[:exim][:routes].each_value do |route|
-  relay_to_domains = relay_to_domains | route[:domains]
+  relay_to_domains = relay_to_domains | route[:domains] if route[:host]
 end
 
 relay_from_hosts = node[:exim][:relay_from_hosts]
@@ -78,7 +78,14 @@ template "/etc/exim4/exim4.conf" do
   mode 0644
   variables :relay_to_domains => relay_to_domains.sort,
             :relay_from_hosts => relay_from_hosts.sort
-  notifies :restart, resources(:service => "exim4")
+  notifies :restart, "service[exim4]"
+end
+
+template "/etc/exim4/callout_exempt_senders" do
+  source "callout_exempt_senders.erb"
+  owner "root"
+  group "Debian-exim"
+  mode 0644
 end
 
 search(:accounts, "*:*").each do |account|
@@ -119,7 +126,7 @@ end
 munin_plugin "exim_mailqueue"
 munin_plugin "exim_mailstats"
 
-if not relay_to_domains.empty? or not node[:exim][:local_domains].empty?
+if node[:exim][:smarthost_name]
   node[:exim][:daemon_smtp_ports].each do |port|
     firewall_rule "accept-inbound-smtp-#{port}" do
       action :accept
@@ -130,6 +137,17 @@ if not relay_to_domains.empty? or not node[:exim][:local_domains].empty?
       source_ports "1024:"
     end
   end
+else
+  node[:exim][:daemon_smtp_ports].each do |port|
+    firewall_rule "accept-inbound-smtp-#{port}" do
+      action :accept
+      source "bm:mail.openstreetmap.org"
+      dest "fw"
+      proto "tcp:syn"
+      dest_ports port
+      source_ports "1024:"
+    end
+  end
 end
 
 if node[:exim][:smarthost_via]