import smtplib import redmine import os import datetime from email.mime.text import MIMEText from jinja2 import Environment, FileSystemLoader project = 'backspace' templates_dir = os.path.join(os.path.dirname(__file__), 'templates') env = Environment(loader=FileSystemLoader(templates_dir), extensions=['jinja2.ext.loopcontrols']) template = env.get_template('summary.jinja2') mail = template.render(issues=redmine.get_issues(project), week_ago=str(datetime.date.today()-datetime.timedelta(7))) # Prepare MIME Mail msg = MIMEText(mail.encode('utf-8'), 'plain', 'utf-8') msg['Subject'] = settings.summary_subject msg['From'] = settings.summary_from msg['To'] = settings.summary_to if settings.summary_reference: msg['References'] = settings.summary_reference # Actually send mail smtp = smtplib.SMTP(settings.summary_host, settings.summary_port)
site = mwclient.Site('www.hackerspace-bamberg.de', path='/') site.login(settings.mediawiki_user, settings.mediawiki_pass) page = site.Pages[settings.mediawiki_page] for rev in page.revisions(limit=1): wiki_time = datetime.fromtimestamp(mktime(rev['timestamp'])) break offset = 0 offset_add = 100 total_count = 1 issues_by_category = defaultdict(list) # retrieve issues for issue in redmine.get_issues(project): if parser.parse(issue['updated_on']).replace(tzinfo=None) > wiki_time: wiki_update = True if 'closed_on' in issue: continue tracker = issue['tracker']['name'] issues_by_category[tracker].append(issue) templates_dir = os.path.join(os.path.dirname(__file__), 'templates') env = Environment(loader=FileSystemLoader(templates_dir)) def format_redmine_date(value):
from email.mime.text import MIMEText from jinja2 import Environment, FileSystemLoader # Disable HTTPS verification warnings. from requests.packages import urllib3 urllib3.disable_warnings() project = 'backspace' templates_dir = os.path.join(os.path.dirname(__file__), 'templates') env = Environment(loader=FileSystemLoader(templates_dir), extensions=['jinja2.ext.loopcontrols']) template = env.get_template('summary.jinja2') mail = template.render(issues=redmine.get_issues(project), week_ago=str(datetime.date.today()-datetime.timedelta(7))) # Prepare MIME Mail msg = MIMEText(mail.encode('utf-8'), 'plain', 'utf-8') msg['Subject'] = settings.summary_subject msg['From'] = settings.summary_from msg['To'] = settings.summary_to if settings.summary_reference: msg['References'] = settings.summary_reference # Actually send mail smtp = smtplib.SMTP(settings.summary_host, settings.summary_port)