Course automation submission: Checking legal group composition #1131
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Course Automation: Checking legal group composition (Proposal: #996)
Members:
Henrik Kultala ([email protected])
GitHub: hengque
Eleonora Borzi ([email protected])
GitHub: EleonoraBorzis
Group rules for this course:
Max 3 persons in a group
You cannot be with the same persons for more than 2 projects.
You can work alone on one or at most two projects.
When you send a pull request for registration, please follow the name convention of using the email addresses of two members to create the folder: email-email.
This is assumed to be the same email addresses as specified in the readme.
This is also assumed to mean “all members of the group” and not “two members”; i.e. if there are three members then all three members’ email address should be included in the folder name.
Proposal
When a new project is proposed, the readme and the folder name are checked for the names of the group members. The group validity is checked against the rules stated above and a comment with the results is posted on the PR. It also checks that the name of the folder is correct in relation to the email addresses in the readme.
Tools:
Github Actions
Bonus: Status Check on GitHub
Docker
Implementation:
The action can be found on the public repo: https://github.com/EleonoraBorzis/group-validity-action
We decided to use Docker to make it more accessible to the public. The action will post a comment on the PR depending on what requirements are met and what type of scenario the pull request is.
In this action there can be the following scenarios:
Exception case: One case that the action will fail is when a TA adds one single README file in a folder under contributions/. It is hard to discern this case with the case when students adds a README file in their folders, so we have decided to fail the pull request to give feedback to students.
The requirements that we think we have achieved are:
Improvements:
One improvement could be to use a secondary action that discern when the pull request is from a student proposal or from a TA. This would help us to give the proper feedback to the pull request.