Skip to content
Snippets Groups Projects
Select Git revision
  • master default protected
1 result

scripts

  • Clone with SSH
  • Clone with HTTPS
  • Scripts for automating CSCE 361 tasks

    These scripts are designed to automate the creation, population, and staffing of repositories for student assignments.

    Requires

    Files

    • config.py

      • provides URLs and API keys
      • ignored (not present in remote repository)
    • config-example.py

      • sample config.py file, without API keys
      • do not commit API keys to repository
        • you will need to copy to config.py and replace None with your API keys (as strings)
    • course.py

      • provides namespace and group ID
        • will need to update each semester
    • initialize_student_tracking.py

      • ...
    • prep_assignment.py

      • An early iteration of automated student pairing, canvas student group creation, and gitlab repo creation. It lacks robustness to odd number of students; it has a quick'n'dirty loop termination that does not guarantee graylist compliance, and project naming is hard-coded. Also does not tolerate non-existent usernames.
    • grade_team_contributions.py

      • ...
    • Timeline.py

      • ...
    • timeline_data.py

      • ...
    • common_functions.py

      • ...
    • api/

      • canvas_classes.py
        • Classes to encapsulate concepts from Canvas CMS
      • gitlab_classes.py
        • Classes to encapsulate concepts from Gitlab VMS
      • composite_user.py
        • Wrapper class that pairs a user from Canvas with the corresponding user from Gitlab
    • local/

      • ignored directory (not present in remote repository) for local copies of files
        • you might keep a config.py with read/write api keys and another with read-only api keys here, to place in top-level directory as you see fit
        • you might keep copies of the course csv file(s) here, but bear in mind that they won't be backed up

    Older Files

    These are vestigial files that should not be needed further, but we are retaining until we are certain.

    • old-automation/
      • Directory containing early scripts to clone, create, process, etc., student repositories. The contents of this directory are not needed but are kept here in case I'm wrong.