Coverage for databooks/config.py: 100%
12 statements
« prev ^ index » next coverage.py v6.5.0, created at 2022-11-04 16:41 +0000
« prev ^ index » next coverage.py v6.5.0, created at 2022-11-04 16:41 +0000
1"""Configuration functions, and settings objects."""
2from pathlib import Path
3from typing import Any, Dict, List, Optional
5from databooks.common import find_common_parent, find_obj
6from databooks.git_utils import get_repo
7from databooks.logging import get_logger
9TOML_CONFIG_FILE = "pyproject.toml"
11ConfigFields = Dict[str, Any]
13logger = get_logger(__file__)
16def get_config(target_paths: List[Path], config_filename: str) -> Optional[Path]:
17 """Find configuration file from CLI target paths."""
18 common_path = find_common_parent(paths=target_paths)
19 repo_dir = get_repo().working_dir
21 return find_obj(
22 obj_name=config_filename,
23 start=Path(repo_dir) if repo_dir is not None else Path(common_path.anchor),
24 finish=common_path,
25 )