Procházet zdrojové kódy

Make error e-mail timeout configurable by adding the EMAIL_TIMEOUT setting. Closes #248.

Ask Solem před 14 roky
rodič
revize
2a3976630c
3 změnil soubory, kde provedl 5 přidání a 4 odebrání
  1. 2 1
      celery/app/base.py
  2. 1 0
      celery/app/defaults.py
  3. 2 3
      celery/loaders/base.py

+ 2 - 1
celery/app/base.py

@@ -226,7 +226,8 @@ class BaseApp(object):
                                 host=self.conf.EMAIL_HOST,
                                 port=self.conf.EMAIL_PORT,
                                 user=self.conf.EMAIL_HOST_USER,
-                                password=self.conf.EMAIL_HOST_PASSWORD)
+                                password=self.conf.EMAIL_HOST_PASSWORD,
+                                timeout=self.conf.EMAIL_TIMEOUT)
 
     def either(self, default_key, *values):
         """Fallback to the value of a configuration key if none of the

+ 1 - 0
celery/app/defaults.py

@@ -132,6 +132,7 @@ NAMESPACES = {
         "PORT": Option(25, type="int"),
         "HOST_USER": Option(None),
         "HOST_PASSWORD": Option(None),
+        "TIMEOUT": Option(2, type="int"),
     },
     "SERVER_EMAIL": Option("celery@localhost"),
     "ADMINS": Option((), type="tuple"),

+ 2 - 3
celery/loaders/base.py

@@ -116,12 +116,12 @@ class BaseLoader(object):
 
     def mail_admins(self, subject, message, fail_silently=False,
             sender=None, to=None, host=None, port=None,
-            user=None, password=None):
+            user=None, password=None, timeout=None):
         from celery.utils import mail
         try:
             message = mail.Message(sender=sender, to=to,
                                     subject=subject, body=message)
-            mailer = mail.Mailer(host, port, user, password)
+            mailer = mail.Mailer(host, port, user, password, timeout)
             mailer.send(message)
         except Exception, exc:
             if not fail_silently:
@@ -130,7 +130,6 @@ class BaseLoader(object):
                 "Mail could not be sent: %r %r" % (
                     exc, {"To": to, "Subject": subject})))
 
-
     @property
     def conf(self):
         """Loader configuration."""