in gha_scanner/__init__.py [0:0]
def send_report(self, message, proj_name):
# Message should be a dict containing recips, subject, and body. body is expected to be a list of strings
# TODO: Get a message cache working so we don't annoy people
if proj_name in self.msgcache.keys():
# Fetch the next pester date
def_now = datetime.datetime.now()
np = getattr(self.msgcache[proj_name], "date", def_now)
self.logger.log.debug(f"{np}")
if np <= def_now:
self.logger.log.info(
f"Waiting until {self.msgcache[proj_name]['date']}"
)
return
# Set new next pester date
next_pester = datetime.datetime.now() + datetime.timedelta(
days=self.config["next_pester"]
)
self.msgcache[proj_name] = {"date": next_pester}
self.logger.log.info(f"{self.msgcache}")
try:
self.logger.log.info(f"Sending Message to {message['recips'][-1]}")
asfpy.messaging.mail(
recipients=message["recips"],
subject=message["subject"],
message="\n".join(message["body"]),
)
except smtplib.SMTPRecipientsRefused as e:
self.logger.log.error(f"An error has occurred: {e}")