Coverage for airflow.operators.email_operator: 63%

# Coverage for airflow.operators.email_operator : 63%

## 16 statements 10 run 6 missing 0 excluded

Hot-keys on this page

r m x p toggle line displays

j k next/prev highlighted chunk

0 (zero) top of page

1 (one) first highlighted chunk

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | from airflow.models import BaseOperator from airflow.utils import send_email from airflow.utils import apply_defaults class EmailOperator(BaseOperator): """ Sends an email. :param to: list of emails to send the email to :type to: list or string (comma or semicolon delimited) :param subject: subject line for the email (templated) :type subject: string :param html_content: content of the email (templated), html markup is allowed :type html_content: string :param files: file names to attach in email :type files: list """ template_fields = ('subject', 'html_content') template_ext = ('.html',) ui_color = '#e6faf9' @apply_defaults def __init__( self, to, subject, html_content, files=None, *args, **kwargs): super(EmailOperator, self).__init__(*args, **kwargs) self.to = to self.subject = subject self.html_content = html_content self.files = files or [] def execute(self, context): send_email(self.to, self.subject, self.html_content, files=self.files)