Skip to content

Design an extendable hook system #61

@Blajda

Description

@Blajda

Currently adding a new hook to the system requires someone with knowledge of the system to make the change and it is highly coupled. It would be nice to have a plugin/module/package based system where an instructor can simply select a plugin/module/package and it would be applied to all the repositories for a assignment.


Use Case Example:
As an instructor I want to add similarity checking for an assignment, however I'd like to do so without having internal knowledge of Virtual TA. During assignment creation or in the assignment settings I must be able to see a list of plugins/modules/packages that are currently set up for all the repositories that are associated with my assignment. I must also be able to added new plugins/modules/packages.

For each plugins/modules/packages/, I must be able to modify their individual settings. Example: For similarity checking I should be able to modify the threshold. Each plugin/module/package should also be able modify the information displayed for a repository.


When this feature is complete, It will be easier to add hooks that check for coding style or automatically test/grade code with an auto-grader.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions