INGInious icon indicating copy to clipboard operation
INGInious copied to clipboard

[utils/task_tester] New task dispenser broke the task tester

Open nrybowski opened this issue 1 year ago • 0 comments

Describe the bug The introduction of the new task dispenser broke the task testing script.

INGInious installation details

  • Version: 2b054c4a4c32a7f52bf33a713228da2f2b9d7158

To Reproduce Launch the task tester CI script on a correctly configured course.

Screenshots

Run python3.11 ${INGINIOUS}/utils/task_tester/inginious-test-task -p ${PLUGIN_NAMES} -c ${INGINIOUS}/configuration.yaml ${REPO_NAME}
Hello from the task tester utility!
runc was detected as a runtime; it would duplicate another one, so we ignore it. DockerRuntime(runtime='runc', run_as_root=False, enables_gpu=False, shared_kernel=True, envtype='docker')
Traceback (most recent call last):
Waiting for containers loading ...............
  File "/home/runner/.local/lib/python3.11/site-packages/inginious/frontend/courses.py", line 92, in __init__
    self._task_dispenser = task_dispenser_class(lambda: self._task_factory.get_all_tasks(self), self._content.get("dispenser_data", ''), database, self.get_id())
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/.local/lib/python3.11/site-packages/inginious/frontend/task_dispensers/toc.py", line 25, in __init__
    raise Exception("Invalid dispenser data structure")
Exception: Invalid dispenser data structure

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/runner/INGInious/utils/task_tester/inginious-test-task", line 3[23](<<<anonymized>>>), in <module>
    course = course_factory.get_course(courseid)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/.local/lib/python3.11/site-packages/inginious/frontend/course_factory.py", line 52, in get_course
    self._update_cache(courseid)
  File "/home/runner/.local/lib/python3.11/site-packages/inginious/frontend/course_factory.py", line 234, in _update_cache
    Course(courseid, course_descriptor, self.get_course_fs(courseid), self._task_factory, self._plugin_manager, self._task_dispensers, self._database),
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/.local/lib/python3.11/site-packages/inginious/frontend/courses.py", line 94, in __init__
    raise Exception("Course has an invalid YAML spec: " + self.get_id())
Exception: Course has an invalid YAML spec: TFE-Inginious-Exo7
Error: Process completed with exit code 1.

nrybowski avatar Mar 24 '23 18:03 nrybowski