feat: create-personal-repos allows suffix (#18)
* feat: create-personal-repos allows suffix Fix gitea worker by s/sis_login_id/login_id/g Also simplify name conversion with str.title() * docs: document create-personal-repos --suffix
This commit is contained in:
parent
58cd7ba4a1
commit
1530d8b44d
|
@ -73,7 +73,9 @@ Examples (run both with `python3 -m joint_teapot create-issues`):
|
|||
|
||||
### `create-personal-repos`
|
||||
|
||||
create personal repos on gitea for all canvas students
|
||||
create personal repos on gitea for all canvas students. You may specify an optional suffix.
|
||||
|
||||
Example: `python3 -m joint_teapot create-personal-repos --suffix "-p1"` will create repos named `StudentNameStudentID-p1`.
|
||||
|
||||
### `create-teams`
|
||||
|
||||
|
|
|
@ -34,8 +34,10 @@ def add_all_canvas_students_to_teams(team_names: List[str]) -> None:
|
|||
"create-personal-repos",
|
||||
help="create personal repos on gitea for all canvas students",
|
||||
)
|
||||
def create_personal_repos_for_all_canvas_students() -> None:
|
||||
tea.pot.create_personal_repos_for_all_canvas_students()
|
||||
def create_personal_repos_for_all_canvas_students(
|
||||
suffix: str = Option("")
|
||||
) -> None:
|
||||
tea.pot.create_personal_repos_for_all_canvas_students(suffix)
|
||||
|
||||
|
||||
@app.command("create-teams", help="create teams on gitea by canvas groups")
|
||||
|
|
|
@ -5,7 +5,7 @@ from typing import Any, Callable, Dict, List, Optional, TypeVar
|
|||
|
||||
from joint_teapot.config import settings
|
||||
from joint_teapot.utils.logger import logger
|
||||
from joint_teapot.utils.main import first
|
||||
from joint_teapot.utils.main import first, default_repo_name_convertor
|
||||
from joint_teapot.workers import Canvas, Git, Gitea, Mattermost
|
||||
from joint_teapot.workers.joj import JOJ
|
||||
|
||||
|
@ -86,9 +86,10 @@ class Teapot:
|
|||
def add_all_canvas_students_to_teams(self, team_names: List[str]) -> None:
|
||||
return self.gitea.add_canvas_students_to_teams(self.canvas.students, team_names)
|
||||
|
||||
def create_personal_repos_for_all_canvas_students(self) -> List[str]:
|
||||
def create_personal_repos_for_all_canvas_students(self, suffix: str = "") -> List[str]:
|
||||
return self.gitea.create_personal_repos_for_canvas_students(
|
||||
self.canvas.students
|
||||
self.canvas.students,
|
||||
lambda user: default_repo_name_convertor(user) + suffix
|
||||
)
|
||||
|
||||
def create_teams_and_repos_by_canvas_groups(
|
||||
|
|
|
@ -30,8 +30,8 @@ def percentile(
|
|||
|
||||
|
||||
def default_repo_name_convertor(user: User) -> str:
|
||||
sis_login_id, name = user.sis_login_id, user.name
|
||||
login_id, name = user.login_id, user.name
|
||||
eng = re.sub("[\u4e00-\u9fa5]", "", name)
|
||||
eng = eng.replace(",", "")
|
||||
eng = "".join([word[0].capitalize() + word[1:] for word in eng.split()])
|
||||
return f"{eng}{sis_login_id}"
|
||||
eng = eng.title().replace(" ", "")
|
||||
return f"{eng}{login_id}"
|
||||
|
|
Loading…
Reference in New Issue
Block a user