Add basic support for email attachments.

This is hopefully at least somewhat proper...
This commit is contained in:
Lance Edgar 2015-06-29 10:50:33 -05:00
parent cd93b6b247
commit 9af88bf4cc

View file

@ -31,6 +31,8 @@ import smtplib
import warnings import warnings
import logging import logging
from email.message import Message from email.message import Message
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from mako.lookup import TemplateLookup from mako.lookup import TemplateLookup
@ -196,8 +198,16 @@ def make_message_config(config, key, body, subject=None, recipients=None, attach
foo.bcc = foo.bcc =
admin@example.com admin@example.com
""" """
if attachments is not None:
message = MIMEMultipart()
message.attach(MIMEText(body))
for attachment in attachments:
message.attach(attachment)
else:
message = Message() message = Message()
message.set_payload(body, 'utf_8')
message.set_type('text/html') message.set_type('text/html')
message['From'] = get_sender(config, key) message['From'] = get_sender(config, key)
if recipients is None: if recipients is None:
recipients = get_recipients(config, key) recipients = get_recipients(config, key)
@ -206,7 +216,6 @@ def make_message_config(config, key, body, subject=None, recipients=None, attach
if subject is None: if subject is None:
subject = get_subject(config, key) subject = get_subject(config, key)
message['Subject'] = subject message['Subject'] = subject
message.set_payload(body, 'utf_8')
return message return message