Collection of utilities to grade IT exercises
The toolkit supplies a generic launcher com.github.lernejo.korekto.toolkit.launcher.GradingJobLauncher
relying on the
existence of a Service Provider
of com.github.lernejo.korekto.toolkit.Grader
.
For the generic launcher to pick up the grading service, make it implement the Grader
interface and declare it in
META-INF/services/com.github.lernejo.korekto.toolkit.Grader
.
The generic launcher has 3 modes
- container the default mode, sends the results to the given
CALLBACK_URL
- demo by specifying a user slug (
-s=mySlug
) - group by specifying the group mode (
-g
) and supplying a slugs file
CloneStep
performs a Git clone of the REPO_URL parameter and providesGradingContext#exercise
SendStep
sends theGradingContext#gradeDetails
to the CALLBACK_URL parameter, using CALLBACK_PASSWORD parameter if presentUpsertGitHubGradingIssues
opens 2 kinds of issues on GitHub reflecting the state of ongoing exercise or its completion (requires a GitHub token, either personal or app installation)
Parameters are read from the environment (System#getenv
).
<dependencies>
...
<dependency>
<groupId>com.github.lernejo</groupId>
<artifactId>korekto-toolkit</artifactId>
<version>${korekto-toolkit.version}</version>
</dependency>
...
</dependencies>
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>