Coverage for databooks/config.py: 100%
Shortcuts on this page
r m x toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
Shortcuts on this page
r m x toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
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_parent = 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_parent.anchor),
24 finish=common_parent,
25 )