From 2c1ad47f142b1ac05bc8f447572db553886828e5 Mon Sep 17 00:00:00 2001 From: Boming Zhang Date: Sat, 14 Jun 2025 05:21:35 -0400 Subject: [PATCH] feat: get grading repo name from cwd --- joj3_config_generator/models/repo.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/joj3_config_generator/models/repo.py b/joj3_config_generator/models/repo.py index 63c074e..87200e5 100644 --- a/joj3_config_generator/models/repo.py +++ b/joj3_config_generator/models/repo.py @@ -1,8 +1,7 @@ -import socket from pathlib import Path from typing import List -from pydantic import AliasChoices, BaseModel, Field +from pydantic import AliasChoices, BaseModel, Field, model_validator class Files(BaseModel): @@ -47,7 +46,7 @@ class Config(BaseModel): root: Path = Path(".") path: Path = Path("repo.toml") grading_repo_name: str = Field( - f"{socket.gethostname().split('-')[0]}-joj", + "", validation_alias=AliasChoices("grading-repo-name", "grading_repo_name"), ) health_check_score: int = Field( @@ -59,3 +58,9 @@ class Config(BaseModel): "submitter-in-issue-title", "submitter_in_issue_title" ), ) + + @model_validator(mode="after") + def set_grading_repo_name_from_cwd(self) -> "Config": + if not self.grading_repo_name: + self.grading_repo_name = Path.cwd().name + return self