TU-Wien-dataLAB / Grader-Service

Grader Service offers lecturers and students a well integrated teaching environment for data science, machine learning and programming classes.
https://grader-service.readthedocs.io/en/latest/
BSD 3-Clause "New" or "Revised" License
27 stars 2 forks source link

Function resolve image name is undefined or missing #120

Closed adammccartney closed 9 months ago

adammccartney commented 10 months ago

Describe the bug Grader Service always spawns the same image at startup. The behavior is controlled in a very convoluted way: if we set the value of the resolveImageName to none in the grade-service chart, then a default value is loaded. We're supposedly injecting the value as config at runtime, but it's not clear if we have a reference for this on any remote branch

The following series of commits shows a number of approaches that were tried during the initial process of finding a solution: 8901b47ee59bf6a76a25f85305fd1ca7bf7d3725 5a0db97aedfeb397ae0ef1c14abd73067b3491d9 90b0b3a5891df03773a9b733ab204d222b825cd2 a22631c57d7f56ab15661fe0fd0c61508efcc1db 04f9d44d72841a7fd5c853a1b04a08c51dca98e1

If I understand correctly, the callable resolveImageName should be defined in such a way that it is able form a request to the lecture config server that contains a valid lecture ID of the config to be loaded. The image name and tag are part of the config, so this is how we would determine what image kubespawner uses. The definition of this function gets passed in by the values file grader_service_config.yaml, but it seems like we do not have a current reference of a working definition on a remote branch, see the relevant gitlab issue

It did seem at one point like @florian-jaeger got this working, although I could be misremembering this. In any case, we need a solution for this issue by next week, as the functionality is of primary importance.