def send_with_cc()

in dusty/reporters/email/helper.py [0:0]


    def send_with_cc(self, mail_to, mail_cc, subject, html_body="", attachments=None):  # pylint: disable=R0913
        """ Send mail """
        message = MIMEMultipart("alternative")
        message["From"] = self.login
        message["To"] = ", ".join(mail_to)
        message["Cc"] = ", ".join(mail_cc)
        message["Subject"] = subject
        message.attach(MIMEText(html_body, "html"))
        if attachments:
            if isinstance(attachments, str):
                attachments = [attachments]
            for item in attachments:
                if isinstance(item, tuple):
                    filepath, filename = item
                else:
                    filepath = item
                    filename = item.split('/')[-1]
                with open(filepath, "rb") as file:
                    part = MIMEBase("application", "octet-stream")
                    part.set_payload(file.read())
                encoders.encode_base64(part)
                part.add_header(
                    "Content-Disposition",
                    f"attachment; filename= {filename}"
                )
                message.attach(part)
        try:
            self.connect()
            self.connection.sendmail(message["From"], mail_to + mail_cc, message.as_string())
        except:  # pylint: disable=W0702
            log.exception("Failed to send email")
            error = Error(
                tool="EMail",
                error="Failed to send email",
                details=f"```\n{traceback.format_exc()}\n```"
            )
            self.context.errors.append(error)
        finally:
            if self.connection:
                self.connection.quit()