예제 #1
0
def build_container_if_not_exists(course_id):
    """Builds the docker container if it doesn't exist

    Requires normalized course_id
    """
    manager = cm.ContainerManager(course_id)
    if not manager.container_exists():
        log.info("Containter: {} did not exist, building...".format(course_id))
        manager.build_container()
        manager.cleanup()
예제 #2
0
def update_requirements(course_id, f):
    """Updates Requirements model file this course_id"""
    course = normalize_course_id(course_id)
    try:
        packages = f.file.readlines()
    except AttributeError:
        raise ValidationError("No File Attached")
    manager = cm.ContainerManager(course)
    manager.set_requirements(packages)
    manager.build_container()
    manager.cleanup()
예제 #3
0
def get_requirements(course_id):
    """Returns contents of current requirements.txt for `course`"""
    course = normalize_course_id(course_id)
    manager = cm.ContainerManager(course)
    return manager.get_package_list()