-
Notifications
You must be signed in to change notification settings - Fork 424
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Submission of Course Automation: Upvote other students' work (#991) #1157
Conversation
Hi @dmariel , Seems to be a good implementation. We are adding new clarifications to our grading criteria for course-automation tasks here. Can you please follow this rules?
|
Hi!
We believe that we have now followed the updated rules for submission, please correct us if we're wrong @khaes-kth |
Thanks @dmariel Please add the information regarding the example PR, that you said in your comment, in the readme file as well. Note that you should not change the contents of the |
Thanks for the quick response! The information regarding the example PR can be found in the README-file and we have now deleted the |
Course Automation: Upvote other students’ work
Members
Introduction
This GitHub action was created for the course DD2482 Automated Software Testing and DevOps at Kungliga Tekniska Högskolan, Sweden. However, the action can be implemented into any course, and can be modified to be used for non-educational purposes too, since the action enables contributors of any repository to upvote other contributors' work, using a 👍 on an automatically generated issue that summarizes their work.
The aim of the action is to facilitate for students of DD2482 Automated Software Testing and DevOps to fulfill the grading criteria: "The task is praised by the other students of this course", which is currently one of the criteria for the "Course Automation" assignment.
Description of functionality
Upvote - Course Automation
in a PR to the course repository.Upvote projects - Course Automation
is created, if no such issue already exists. The issue body includes a description of how to use the functionality, directed to the students. Furthermore, a “Top-list” that is going to show the most upvoted projects is incorporated to the issue, in the form of a comment.Upvote projects - Course Automation
(including a link to the issue).Upvote projects - Course Automation
.Installation
This section describes how the functionality is installed on a repository:
.github/workflows
directory to the repository in the default branch..github/workflows
directory, create a fileupvote.yml
and add the contents of this file to it.line 16
of theupvote.yml
file.line 46
andline 60
, if you want to adapt the label of the code for other tasks and courses.ISSUE_TEMPLATE.md
in the.github
directory. Use the following template. It's possible to adjust course name etc. in order to adapt the code for other courses.Upvote - Course Automation
(alternatively a label with the name you choose in step 4).Criteria fulfilled
*Note: The following section is a reference to the grading criteria for the course DD2482 Automated Software Testing and DevOps course automation task. If you are not partaking in this course please feel free to ignore this section.
We believed that we have fulfilled the following 5 criteria:
Description of functionality
above. Furthermore, the PR comment and the "Top-list" comment generated for the issue includes links to the generated issue or a comment. Thus, we believe that the criteria for "Pass with distinction" is fulfilled.Installation
for more information.Using the functionality
*Note: Since the forked repository has not yet been merged to the DD2482 Automated Software Testing and DevOps course repository, a simulation of the process has been performed, where a
student-fork
branch (corresponding to a student's course-automation fork) makes a labeled PR to the2021
branch of the forked repository.The results can be seen here:
The student creates a PR with the correct label (if the student is not able to add the label, this could be done by a teacher assistant):
This enables the checks of the action to start running:
An issue is created if none already exists:
A comment linking to the issue is added to student's PR:
Information about the student's course automation project is posted in the issue-thread:
Other students can upvote the project by inserting a 👍:
A "Top-list" is created and updated automatically (scheduled every 5 min):