]> git.openstreetmap.org Git - chef.git/commitdiff
Do all mail deliveries via a controlled set of queues
authorTom Hughes <tom@compton.nu>
Thu, 25 Feb 2021 21:20:15 +0000 (21:20 +0000)
committerTom Hughes <tom@compton.nu>
Thu, 25 Feb 2021 21:22:18 +0000 (21:22 +0000)
cookbooks/exim/attributes/default.rb
cookbooks/exim/recipes/default.rb
cookbooks/exim/templates/default/default.erb [new file with mode: 0644]
cookbooks/exim/templates/default/exim4.conf.erb
roles/mail.rb

index 77b8d87166fceea30b8efa16f70d4f6bdf782350..21e999109794dc7cb5fe7d63a8fafb33bd91e355 100644 (file)
@@ -3,6 +3,7 @@ default[:exim][:relay_to_domains] = []
 default[:exim][:relay_from_hosts] = ["127.0.0.1", "::1"]
 default[:exim][:daemon_smtp_ports] = [25]
 default[:exim][:trusted_users] = []
+default[:exim][:queue_run_max] = 1
 default[:exim][:smarthost_name] = nil
 default[:exim][:smarthost_via] = "mail.openstreetmap.org:26"
 default[:exim][:routes] = {}
index f1c9ddf22bb2269e7806531f299eab238027756a..8a1fd5efb562c22d0b7924ca975d191a3dd7eeaf 100644 (file)
@@ -163,6 +163,14 @@ if node[:exim][:dkim_selectors]
   end
 end
 
+template "/etc/default/exim4" do
+  source "default.erb"
+  owner "root"
+  group "root"
+  mode "044"
+  notifies :restart, "service[exim4]"
+end
+
 template "/etc/exim4/exim4.conf" do
   source "exim4.conf.erb"
   owner "root"
diff --git a/cookbooks/exim/templates/default/default.erb b/cookbooks/exim/templates/default/default.erb
new file mode 100644 (file)
index 0000000..2fb3dcc
--- /dev/null
@@ -0,0 +1,23 @@
+# DO NOT EDIT - This file is being maintained by Chef
+
+# 'combined' -   one daemon running queue and listening on SMTP port
+# 'no'       -   no daemon running the queue
+# 'separate' -   two separate daemons
+# 'ppp'      -   only run queue with /etc/ppp/ip-up.d/exim4.
+# 'nodaemon' - no daemon is started at all.
+# 'queueonly' - only a queue running daemon is started, no SMTP listener.
+# setting this to 'no' will also disable queueruns from /etc/ppp/ip-up.d/exim4
+QUEUERUNNER='combined'
+# how often should we run the queue
+QUEUEINTERVAL='30s'
+# options common to quez-runner and listening daemon
+COMMONOPTIONS=''
+# more options for the daemon/process running the queue (applies to the one
+# started in /etc/ppp/ip-up.d/exim4, too.
+QUEUERUNNEROPTIONS=''
+# special flags given to exim directly after the -q. See exim(8)
+QFLAGS=''
+# options for daemon listening on port 25
+SMTPLISTENEROPTIONS=''
+# only warn once about each error
+E4BCD_WATCH_PANICLOG='once'
index ab7a72da9fbfbcdd275732d36fcc623cbcf0b9fa..2d1d96e1288751dac4ed8ae2073abe63f089dc9f 100644 (file)
@@ -358,6 +358,12 @@ timeout_frozen_after = 7d
 trusted_users = <%= node[:exim][:trusted_users].join(" : ") %>
 
 
+# Do all deliveries via a limited set of queues.
+
+queue_only = true
+queue_run_max = <%= node[:exim][:queue_run_max] %>
+
+
 
 ######################################################################
 #                       ACL CONFIGURATION                            #
index 5783e1bda2f5ae2c1e793b94e9d4d823f317b58f..77b3bf3f40a860cc90a8bf932f420aafecc9bb3c 100644 (file)
@@ -26,6 +26,7 @@ default_attributes(
       "a.mx.openstreetmaps.org",
       "a.mx.osm.io"
     ],
+    :queue_run_max => 5,
     :smarthost_name => "mail.openstreetmap.org",
     :smarthost_via => false,
     :dns_blacklists => ["zen.spamhaus.org"],