def run_notify(self, reset_history=False, test_mail=False): mail = Sendmail(self._config['mail']) if reset_history: logging.info("Reset history") self.hdb.reset() self.get_projects() for project_identifier, project in self.projects.items(): for issue in rm.get_issues(project['id']): time_window = rm.in_time_window(project, issue) if time_window: if self.hdb.not_sent(issue['id'], time_window['name']): if time_window['rcpt']: issue['rcpt'] = time_window['rcpt'] issue['project_identifier'] = project_identifier issue['project_sla'] = project['sla'] issue['time_window'] = time_window['name'] issue['time_after_creation'] = time_diff( issue['created_on'], False) issue['created_on_local'] = str( date_from_redmine(issue['created_on'], True)) issue['notify_roles'] = issue_get_notify_roles( time_window) issue['important'] = time_window[ 'important'] if 'important' in time_window else False if test_mail: issue['rcpt_origin'] = copy.deepcopy( issue['rcpt']) issue['rcpt'] = self._config['main'][ 'test_email'] issue_log_info(issue) if mail.send_issue(issue=issue, important=issue['important']): self.hdb.sent(issue['id'], issue['time_window']) else: issue_log_debug(issue, 'No notify roles!') else: issue_log_debug(issue, 'In history!')