2.3 KiB
2.3 KiB
Joint Teapot
A handy tool for TAs in JI to handle works through Gitea, Canvas, and JOJ. Joint is related to JI and also this tool which join websites together. Teapot means to hold Gitea, inspired by @nichujie.
This tool is still under heavy development. The docs may not be updated on time, and all the features are provided with the probability to change.
Getting Started
Setup venv (Optional)
python3 -m venv env # you only need to do that once
source env/Scripts/activate # each time when you need this venv
Install
pip3 install -e .
cp .env.example .env && vi .env # configure environment
joint-teapot --help
For developers
pip3 install -r requirements-dev.txt
pre-commit install
pytest -svv
Commands & Features
archive-all-repos
: archive all repos in gitea organizationcheck-issues
: check the existence of issue by title on giteacheckout-releases
: checkout git repo to git tag fetched from gitea by release name, with due dateclone-all-repos
: clone all gitea repos to localclose-all-issues
: close all issues and pull requests in gitea organizationcreate-issues
: create issues on giteacreate-personal-repos
: create personal repos on gitea for all canvas studentscreate-teams
: create teams on gitea by canvas groupsget-no-collaborator-repos
: list all repos with no collaboratorsget-public-keys
: list all public keys on giteaget-repos-status
: list status of all repos with conditionsinvite-to-teams
: invite all canvas students to gitea teams by team nameprepare-assignment-dir
: prepare assignment dir from extracted canvas "Download Submissions" zipupload-assignment-grades
: upload assignment grades to canvas from grade file (GRADE.txt by default), read the first line as grade, the rest as comments
License
MIT