diff --git a/JOJ3-Configuration-Schema.md b/JOJ3-Configuration-Schema.md index 92cc588..7695d21 100644 --- a/JOJ3-Configuration-Schema.md +++ b/JOJ3-Configuration-Schema.md @@ -2,11 +2,15 @@ *Goals:* simple configuration files, which can easily be manually edited by TAs. These files are then parsed by joj-config-generation script to generate final internal `json` configurations files and joj3 to find the `json` config files. +Levels: +- repo: repository +- assignment: homework or project +- task: exercise or milestone + ## Repo level Teaching team info, eg. useful to check who triggered a grading. -It should never be possible to disable health check. Health check configuration: - required files (readme, changelog) @@ -15,8 +19,21 @@ Health check configuration: - immutable files (gitignore, workflows) - repo size limit +**Important:** it should never be possible to disable health check. + + ## Task level +Basic idea: +- list all stages that are to be run +- provide config for each stage +- various code quality tools can be used, but they all feature: + - a command + - a list of tests + - a weight for each test +- joj sets a default score and cpu/mem limits +- test cases can be individually configured if necessary + ```toml stages = [ "compile", "code_quality", "joj" ]