Classroom <=> Moodle
Beschreibung
Die Punkte aus dem Autograding des GitHub Classrooms können in eine Moodle-Aufgabe übertragen werden. Damit ist es einfacher zu sehen, wie erfolgreich die Lernenden eine Aufgabenstellung gelöst haben.
Einrichtung
Die Einrichtung des Autograding und der Moodle-Aufgabe findest du unter Bewertung vom Classroom in Moodle übernehmen
Umsetzung
Webservice "FGIT_API"
https://github.com/marcel-suter-bzz/FGIT_Api
Webservice mit Python und Flask. Erstellt eine Datenbank (Shelve) mit den Moodle-Aufgaben pro Lernendem und den Punkten aus GitHub Classroom.
Services
 /gh_grade/<owner>/<repo>/<points>/<max>  | Wird von der GitHub Action aufgerufen und speichert die Punktzahl | 
 /mdl_assign/<actor>/<repo>/<assignid>/<courseid>/<userid>  | Wird vom Moodle-Plugin aufgerufen und erstellt die Einträge für die Aufgabe und Lernende | 
 /db_show  | Zeigt den Inhalt der Datenbank an für Debugging | 
Pfade
- Applikation:
/opt/fgitapi - Daten:
/data/grading/grades.db 
Plugin "mdl_assign_export"
Das Plugin enthält einen Observer, der beim Erstellen/Ändern einer Aufgabe (Assignment) aufgerufen wird. Es ruft den Webservice „FGIT_API“ auf.
mdl_autograde
https://github.com/marcel-suter-bzz/Mdl_Autograde
Python-Skript zum Übertragen der Punkte in die Moodle-Aufgabe. Wird regelmässig via Cron-Job angestossen.
Pfade
- Applikation:
/opt/mdlautograde - Daten:
data/grading/grades.db