Select Git revision
autolab_example.py

tuhe authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
autolab_example.py 1.74 KiB
import os
from unitgrade_private.autolab.autolab import format_autolab_json
from unitgrade_private.autolab.autolab import deploy_assignment
from unitgrade_private.docker_helpers import download_docker_images
if __name__ == "__main__":
wdir = os.getcwd()
args = [('example_simplest', 'cs101', 'report1_grade.py', 'report1_grade.py'),
('example_framework', 'cs102', 'report2_grade.py', 'report2_grade.py'),
('example_docker', 'cs103', 'report3_complete_grade.py', 'report3_grade.py'),
]
from unitgrade_private import load_token
# data, _ = load_token("../example_framework/instructor/cs102/Report2_handin_18_of_18.token")
# data, _ = load_token("../example_framework/students/cs102/Report2_handin_3_of_16.token")
# format_autolab_json(data, indent=2)
download_docker_images("./docker")
autograde_image = 'tango_python_tue'
dockerfile = f"./docker/docker_tango_python/Dockerfile"
for bdir, name, instructor, student in args:
instructor_base = f"{wdir}/../{bdir}/instructor"
student_base = f"{wdir}/../{bdir}/students"
output_tar = deploy_assignment(name, INSTRUCTOR_BASE=instructor_base, INSTRUCTOR_GRADE_FILE=f"{instructor_base}/{name}/{instructor}",
STUDENT_BASE=student_base, STUDENT_GRADE_FILE=f"{student_base}/{name}/{student}",
autograde_image_tag=autograde_image)
print(output_tar)
from unitgrade_private.docker_helpers import compile_docker_image
compile_docker_image(Dockerfile=dockerfile, tag=autograde_image) # Make sure docker grading image is up-to-date.
# compile_docker_image(Dockerfile=dockerfile, tag=autograde_image) # Make sure docker grading image is up-to-date.