Skip to content

term-world/wizard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

8-bit wizard hat and name in type in gradations of red and blue

Wizard

The GatorGrader-to-GitHub issue magician!

Features

wizard is a complement for GatorGrader, the automated grading system (AGS) used and developed by the Allegheny College Department of Computer Science. Where wizard steps in: GatorGrader's outcome of specifications- based grading checks appears as an issue on a student's repository with checked/unchecked checkboxes representing both achieved and missed grader checks.

This tool helps surface actionable items for students to complete in the form of an interactive checklist that mimics best practices of using the GitHub platform to surface technical issues with open source software packages/community projects. Beginning acculturation of students to GitHub processes benefits them in internships, future coursework and, eventually, positions as developers -- regardless of version control platform or workflow.

This project aims to help build a transferrable skill that allows students to be more ready contributors to their education in computer science.

Using wizard

As of v0.5.0, Wizard requires a GitHub Personal Access Token (PAT) set as an organization-level secret. This token must have the following permissions:

  • admin:org
  • repo
  • workflow

To continue using Wizard with the default Actions flow token, revert to v0.3.2. However, v0.3.2. does not support assigning all the members of a given team and, instead, only assigns the last commit author as the assignee of the issue created.

To integrate wizard into your GitHub Actions workflow, complete a few steps:

  1. Create a GitHub Issue Template; we suggest you use the example template in templates/wizard.md to get started
  2. Add a category field to your GatorGrader checks (it can be anything you choose):
- writing/reflection.md:
  - description: No TODO markers left in reflection.md
    category: Documentation
    check: MatchFileFragment
    options:
      fragment: "TODO"
      count: 0
      exact: true
  1. Insert a step for wizard in your GitHub Actions workflow:
- name: Create Wizard report
    id: wizard
    uses: term-world/wizard@v0.3.2
    with:
        # Substitute your GatorGrade config file here
        gatorgrade-config: '.gatorgrade.yml'
    if: always()
env:
    GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

The above example uses the stock GITHUB_TOKEN to authenticate as the GitHub Actions bot account.

Current limitations

The above suggestions are (as of this writing -- v0.3.2) probably requirements. Technically, this version also supports custom templates located elsewhere and custom sorting. However, those features are more-or-less "pre-alpha." Once the project gets to v1.0.0, we anticipate many more congfigurable features.

About

An automated grading system integration with the GitHub issue tracker. It's magic!

Resources

License

Stars

Watchers

Forks