Esempio n. 1
0
    def create_assignment_rpc(course, name, file, command, batch_size,
                              grading_base):
        assignment: Assignment = Assignment.query.filter_by(
            name=name, course=course,
            endpoint=get_endpoint(course=course)).one_or_none()

        if not assignment:
            assignment = Assignment(
                name=name,
                assignment_secret=new_secret(),
                course=course,
                endpoint=get_endpoint(course=course),
            )
            db.session.add(assignment)

        assignment.file = file
        assignment.command = command
        assignment.last_modified = int(time.time())
        assignment.batch_size = batch_size
        assignment.grading_base = grading_base
        db.session.commit()

        return assignment.assignment_secret