diff --git a/joj3_config_generator/main.py b/joj3_config_generator/main.py index fb7b912..53884c7 100644 --- a/joj3_config_generator/main.py +++ b/joj3_config_generator/main.py @@ -73,9 +73,11 @@ def convert( ) task_obj = rtoml.loads(task_toml_path.read_text()) repo_conf = repo.Config(**repo_obj) - repo_conf.path = (root / repo_toml_path.relative_to(root)).resolve() + repo_conf.root = root + repo_conf.path = repo_toml_path.relative_to(root) task_conf = task.Config(**task_obj) - task_conf.path = (root / task_toml_path.relative_to(root)).resolve() + task_conf.root = root + task_conf.path = task_toml_path.relative_to(root) result_model = convert_conf(repo_conf, task_conf) result_dict = result_model.model_dump(by_alias=True, exclude_none=True) with result_json_path.open("w") as result_file: diff --git a/joj3_config_generator/models/repo.py b/joj3_config_generator/models/repo.py index 4bd49cd..94ea8fe 100644 --- a/joj3_config_generator/models/repo.py +++ b/joj3_config_generator/models/repo.py @@ -22,4 +22,5 @@ class Config(BaseModel): max_total_score: int = Field(100) force_skip_heatlh_check_on_test: bool = False groups: Groups = Groups() - path: Path = Path(".") + root: Path = Path(".") + path: Path = Path("repo.toml") diff --git a/joj3_config_generator/models/task.py b/joj3_config_generator/models/task.py index c14dca4..99b92fe 100644 --- a/joj3_config_generator/models/task.py +++ b/joj3_config_generator/models/task.py @@ -108,7 +108,8 @@ class Task(BaseModel): class Config(BaseModel): + root: Path = Path(".") + path: Path = Path("conf.toml") task: Task - release: Release - path: Path = Path(".") + release: Release # Release configuration stages: List[Stage] # list of stage configurations diff --git a/tests/convert/utils.py b/tests/convert/utils.py index f51f073..1978773 100644 --- a/tests/convert/utils.py +++ b/tests/convert/utils.py @@ -12,11 +12,11 @@ def read_convert_files( case_name: str, ) -> Tuple[repo.Config, task.Config, Dict[str, Any]]: root = Path(__file__).resolve().parent - repo_toml_path = root / case_name / "repo.toml" + repo_toml_path = root.absolute() / case_name / "repo.toml" repo_toml = repo_toml_path.read_text() if repo_toml_path.exists() else "" - task_toml_path = root / case_name / "task.toml" + task_toml_path = root.absolute() / case_name / "task.toml" task_toml = task_toml_path.read_text() if task_toml_path.exists() else "" - result = json.loads((root / case_name / "task.json").read_text()) + result = json.loads((root.absolute() / case_name / "task.json").read_text()) return ( repo.Config(**rtoml.loads(repo_toml)), task.Config(**rtoml.loads(task_toml)),