if args[0] == '-n': dry_run = True send_mail = False args = args[1:] date = args[0] with open('ledger', 'a') as f: f.write("\n") f.write(render.render_template('templates/ledger', date)) if not dry_run: subprocess.check_call(["git", "commit", "ledger", "-m", "Update for %s" % (date,)]) debts = render.get_debts() punt = [] with open('ledger', 'a') as f: f.write("\n") for (user, debt) in debts: if debt < 30: continue punt.append(user) f.write("""\ %(date)s Punt Pool:Owed:%(user)s $-%(debt)s User:%(user)s """ % {'user': user, 'debt': debt, 'date': date}) if not dry_run:
def generate_email(): dry_run = False args = sys.argv[1:] if args[0] == '-n': dry_run = True args = args[1:] date = args[0] with open('ledger', 'a') as f: f.write("\n") f.write(render.render_template('templates/ledger', date)) if not dry_run: subprocess.check_call( ["git", "commit", "ledger", "-m", "Update for %s" % (date, )]) debts = render.get_debts() punt = [] with open('ledger', 'a') as f: f.write("\n") for (user, debt) in debts: if debt <= (FINE_SIZE * 6): continue punt.append(user) f.write(PUNT_TEXT % {'user': user, 'debt': debt, 'date': date}) if not dry_run: text = render.render_template('templates/week.tmpl', date, punt=punt) lines = text.split("\n") title = lines[0] body = "\n".join(lines[1:]) page = dict(title=title, description=body) with open('secret.txt', 'r') as f: secret = json.load(f) passwd = secret['wordpress']['password'] x = xmlrpclib.ServerProxy(XMLRPC_ENDPOINT) x.metaWeblog.newPost(BLOG_ID, USER, passwd, page, True) email = render.render_template('templates/email.html', date, punt=punt) if dry_run: print email else: send_email('*****@*****.**', email) with open('out/email.txt', 'w') as f: f.write(email) if punt: with open('bloggers.yml') as b: bloggers = yaml.safe_load(b) for p in punt: if bloggers.get(p) and 'end' not in bloggers[p]: bloggers[p]['end'] = date with open('bloggers.yml', 'w') as b: yaml.safe_dump(bloggers, b) if not dry_run: subprocess.check_call([ "git", "commit", "ledger", "bloggers.yml", "-m", "Punts for %s" % (date, ) ]) # if it's a dry run, lets set the ledger back to the beginning state if dry_run: subprocess.check_call(["git", "checkout", "ledger"]) if punt: subprocess.check_call(["git", "checkout", "bloggers.yml"])
dry_run = True send_mail = False args = args[1:] date = args[0] with open('ledger', 'a') as f: f.write("\n") f.write(render.render_template('templates/ledger', date)) if not dry_run: subprocess.check_call( ["git", "commit", "ledger", "-m", "Update for %s" % (date, )]) debts = render.get_debts() punt = [] with open('ledger', 'a') as f: f.write("\n") for (user, debt) in debts: if debt < 30: continue punt.append(user) f.write("""\ %(date)s Punt Pool:Owed:%(user)s $-%(debt)s User:%(user)s """ % { 'user': user, 'debt': debt, 'date': date
def generate_email(): dry_run = False args = sys.argv[1:] if args[0] == '-n': dry_run = True args = args[1:] date = args[0] with open('ledger', 'a') as f: f.write("\n") f.write(render.render_template('templates/ledger', date)) if not dry_run: subprocess.check_call(["git", "commit", "ledger", "-m", "Update for %s" % (date,)]) debts = render.get_debts() punt = [] with open('ledger', 'a') as f: f.write("\n") for (user, debt) in debts: if debt <= (FINE_SIZE * 6): continue punt.append(user) f.write(PUNT_TEXT % {'user': user, 'debt': debt, 'date': date}) if not dry_run: text = render.render_template('templates/week.tmpl', date, punt=punt) lines = text.split("\n") title = lines[0] body = "\n".join(lines[1:]) page = dict(title = title, description = body) with open('secret.txt', 'r') as f: secret = json.load(f) passwd = secret['wordpress']['password'] x = xmlrpclib.ServerProxy(XMLRPC_ENDPOINT) x.metaWeblog.newPost(BLOG_ID, USER, passwd, page, True) email = render.render_template('templates/email.html', date, punt=punt) if dry_run: print email else: send_email('*****@*****.**', email) with open('out/email.txt', 'w') as f: f.write(email) if punt: with open('bloggers.yml') as b: bloggers = yaml.safe_load(b) for p in punt: if bloggers.get(p) and 'end' not in bloggers[p]: bloggers[p]['end'] = date with open('bloggers.yml','w') as b: yaml.safe_dump(bloggers, b) if not dry_run: subprocess.check_call(["git", "commit", "ledger", "bloggers.yml", "-m", "Punts for %s" % (date,)]) # if it's a dry run, lets set the ledger back to the beginning state if dry_run: subprocess.check_call(["git", "checkout", "ledger"]) if punt: subprocess.check_call(["git", "checkout", "bloggers.yml"])