def save_result(data): res, error = validate_result(data) if error: return res, True else: assert(isinstance(res, Environment)) e = res p, created = Project.objects.get_or_create(name=data["project"]) branch, created = Branch.objects.get_or_create(name=data["branch"], project=p) b, created = Benchmark.objects.get_or_create(name=data["benchmark"]) try: rev = branch.revisions.get(commitid=data['commitid']) except Revision.DoesNotExist: rev_date = data.get("revision_date") if not rev_date or rev_date == "": rev_date = datetime.today() rev = Revision(branch=branch, commitid=data['commitid'], date=rev_date) try: rev.full_clean() except ValidationError as e: return str(e), True if rev.branch.project.repo_type not in ("N", ""): try: saverevisioninfo(rev) except StandardError, e: logging.warning("unable to save revision %s info: %s", rev, e, exc_info=True) rev.save()
def save_result(data): res, error = validate_result(data) if error: return res, True else: assert(isinstance(res, Environment)) e = res p, created = Project.objects.get_or_create(name=data["project"]) b, created = Benchmark.objects.get_or_create(name=data["benchmark"]) try: rev = p.revisions.get(commitid=data['commitid']) except Revision.DoesNotExist: rev = Revision(project=p, commitid=data['commitid'], date=data.get("revision_date", datetime.now())) rev.full_clean() rev.save() if not rev.date: try: saverevisioninfo(rev) except StandardError, e: logging.warning("unable to save revision %s info: %s", rev, e, exc_info=True)
def save_result(data): res, error = validate_result(data) if error: return res, True else: assert (isinstance(res, Environment)) e = res p, created = Project.objects.get_or_create(name=data["project"]) b, created = Benchmark.objects.get_or_create(name=data["benchmark"]) try: rev = p.revisions.get(commitid=data['commitid']) except Revision.DoesNotExist: rev = Revision(project=p, commitid=data['commitid'], date=data.get("revision_date", datetime.now())) rev.full_clean() rev.save() if not rev.date: try: saverevisioninfo(rev) except StandardError, e: logging.warning("unable to save revision %s info: %s", rev, e, exc_info=True)