def grader_push_grading(ctx, course, assignment_id, grader, only, skip_rubric_validation): if grader is None: user = ctx.obj["client"].get_user() grader = get_grader_or_exit(ctx, course, user.username) else: grader = get_grader_or_exit(ctx, course, grader) assignment = get_assignment_or_exit(ctx, course, assignment_id) teams_registrations = get_teams_registrations(course, assignment, grader = grader, only = only, only_ready_for_grading=True) if len(teams_registrations) == 0: print "No teams found" ctx.exit(CHISUBMIT_FAIL) for team, registration in teams_registrations.items(): if not skip_rubric_validation: valid, error_msg = validate_repo_rubric(ctx, course, assignment, team, registration) if not valid: print "Not pushing branch for team %s. Rubric does not validate: %s" % (team.team_id, error_msg) continue print "Pushing grading branch for team %s... " % team.team_id gradingrepo_push_grading_branch(ctx.obj['config'], course, team, registration) return CHISUBMIT_SUCCESS
def grader_validate_rubrics(ctx, course, assignment_id, grader, only): if grader is None: user = ctx.obj["client"].get_user() grader = get_grader_or_exit(ctx, course, user.username) else: grader = get_grader_or_exit(ctx, course, grader) assignment = get_assignment_or_exit(ctx, course, assignment_id) teams_registrations = get_teams_registrations(course, assignment, grader = grader, only = only) all_valid = True for team, registration in teams_registrations.items(): valid, error_msg = validate_repo_rubric(ctx, course, assignment, team, registration) if valid: print "%s: Rubric OK." % team.team_id else: print "%s: Rubric ERROR: %s" % (team.team_id, error_msg) all_valid = False if not all_valid: ctx.exit(CHISUBMIT_FAIL) else: return CHISUBMIT_SUCCESS
def grader_validate_rubrics(ctx, course, assignment_id, grader, only): if grader is None: user = ctx.obj["client"].get_user() grader = get_grader_or_exit(ctx, course, user.username) else: grader = get_grader_or_exit(ctx, course, grader) assignment = get_assignment_or_exit(ctx, course, assignment_id) teams_registrations = get_teams_registrations(course, assignment, grader=grader, only=only) all_valid = True for team, registration in list(teams_registrations.items()): valid, error_msg = validate_repo_rubric(ctx, course, assignment, team, registration) if valid: print("%s: Rubric OK." % team.team_id) else: print("%s: Rubric ERROR: %s" % (team.team_id, error_msg)) all_valid = False if not all_valid: ctx.exit(CHISUBMIT_FAIL) else: return CHISUBMIT_SUCCESS
def instructor_validate_rubrics(ctx, course, assignment_id, grader, only): if grader is not None: grader = get_grader_or_exit(ctx, course, grader) assignment = get_assignment_or_exit(ctx, course, assignment_id) teams_registrations = get_teams_registrations(course, assignment, grader = grader, only = only) for team, registration in teams_registrations.items(): valid, error_msg = validate_repo_rubric(ctx, course, assignment, team, registration) if valid: print "%s: Rubric OK." % team.team_id else: print "%s: Rubric ERROR: %s" % (team.team_id, error_msg) return CHISUBMIT_SUCCESS
def instructor_validate_rubrics(ctx, course, assignment_id, grader, only): if grader is not None: grader = get_grader_or_exit(ctx, course, grader) assignment = get_assignment_or_exit(ctx, course, assignment_id) teams_registrations = get_teams_registrations(course, assignment, grader=grader, only=only) for team, registration in list(teams_registrations.items()): valid, error_msg = validate_repo_rubric(ctx, course, assignment, team, registration) if valid: print("%s: Rubric OK." % team.team_id) else: print("%s: Rubric ERROR: %s" % (team.team_id, error_msg)) return CHISUBMIT_SUCCESS