def parse_kardboard_output(csv_filename): reader = csv.DictReader(open(csv_filename)) for row in reader: try: k = Kard.objects.get(key=row['key']) except Kard.DoesNotExist: k = Kard() try: k.category = row['category'] k.backlog_date = parse_date(row['backlog_date']) k.start_date = parse_date(row['start_date']) k.done_date = parse_date(row['done_date']) k.key = row['key'] k.title = row['title'] k.state = row['state'] if k.state == "Unknown": k.state = "Done" k.save() except Exception, e: print "Error reported!" print row print str(e) print "=============" print print
def parse_google_output(csv_filename): reader = csv.DictReader(open(csv_filename)) for row in reader: try: k = Kard.objects.get(key=row['Ticket']) except Kard.DoesNotExist: k = Kard() try: k.category = row['Category'] k.backlog_date = parse_date(row['Backlog Date']) k.start_date = parse_date(row['Start Date']) k.done_date = parse_date(row['Done Date']) k.key = row['Ticket'] k.title = row['Card title'] k.shirt_size = row['Shirt Size'] k.save() except Exception, e: print "Error reported!" print row print str(e) print "=============" print print
def jira_add_team_cards(team, filter_id): from kardboard.tickethelpers import JIRAHelper from kardboard.models import States from kardboard.app import app statsd_conn = app.statsd.get_client('tasks.jira_add_team_cards') counter = statsd_conn.get_client(class_=statsd.Counter) total_timer = statsd_conn.get_client(class_=statsd.Timer) total_timer.start() logger = jira_add_team_cards.get_logger() logger.info("JIRA BACKLOG SYNC %s: %s" % (team, filter_id)) states = States() helper = JIRAHelper(app.config, None) issues = helper.service.getIssuesFromFilter(helper.auth, filter_id) for issue in issues: if Kard.objects.filter(key=issue.key): # Card exists, pass pass else: logger.info("JIRA BACKLOGGING %s: %s" % (team, issue.key)) defaults = { 'key': issue.key, 'title': issue.summary, 'backlog_date': datetime.datetime.now(), 'team': team, 'state': states.backlog, } c = Kard(**defaults) c.ticket_system.actually_update(issue) c.save() counter += 1 total_timer.stop()
def card_add(): f = _init_new_card_form(request.values) card = Kard() f.populate_obj(card) if request.method == "POST": if f.key.data and not f.title.data: try: f.title.data = card.ticket_system.get_title(key=f.key.data) except Exception, e: log_exception(e, "Error getting card title via helper") pass if f.validate(): # Repopulate now that some data may have come from the ticket # helper above f.populate_obj(card) card.save() flash("Card %s successfully added" % card.key) return redirect(url_for("card", key=card.key))