Dies ist eine alte Version des Dokuments!


Classroom50-Repo

In der GitHub-Organisation ist ein Repository „classroom50“ mit den Einstellungen, Scripts und Workflows für die Classrooms. Pro Classroom besteht ein Unterordner mit dem Namen des Classrooms.

Unter …classroom50/blob/main/.github/workflows/autograde-runner.yaml erstellt Classroom50 eine Action für die Bewertung. Ersetze diese Action durch unsere Action für py-autograding.yml.

autograde-runner.yml
name: Workflow for BZZ Programming Lessons using Github-Classroom and Moodle

on: [push, fork]

permissions:
  checks: write
  issues: write
  actions: read
  contents: read

jobs:
  grading:
    if: ${{ !contains(github.event.head_commit.message, 'CLASSROOM 50') && !contains(github.event.head_commit.message, 'NOACTION') }}
    uses: BZZ-Commons/pygrader/.github/workflows/py_autograding.yml@main
    secrets: inherit

Die Template-Repositories sind die Vorlagen, welche für die Lernenden geklont werden. Zum Beispiel https://github.com/templates-python/m320-lu02-a01-door

In den einzelnen Template-Repositories wird keine Action für die Bewertung benötigt. Beim Erstellen des Repositories für die Lernenden wird automatisch eine Action eingefügt, die autograde-runner.yml im classroom50-Repository aufruft.

Konfiguration der Bewertung

Die Einstellungen für Unittests, Linter, … werden im Ordner .github/autograding definiert. Für ein Python-Programm sind das typischerweise:

  • lint.json: Definiert die Dateien, die von pylint geprüft werden sollen.
  • pylintrc: Einstellungen und Regeln für pylint.
  • unittests.json: Definition der Unittests für pytest.
  • howto/git/classroom50repo.1786684126.txt.gz
  • Zuletzt geändert: 2026/08/14 07:08
  • von msuter