Skip to content

Commit 89044ec

Browse files
committed
debug: CI/CD breaking config
1 parent df96878 commit 89044ec

4 files changed

Lines changed: 7 additions & 4 deletions

File tree

.github/workflows/tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ jobs:
3030
run: pip install -e ".[tests]"
3131

3232
- name: Run tests with coverage
33-
run: pytest --cov=cala --cov-report=xml
33+
run: pytest --log-cli-level=DEBUG --cov=cala --cov-report=xml
3434

3535
- name: Upload coverage to Codecov
3636
uses: codecov/codecov-action@v4

src/cala/config.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ class LogConfig(BaseModel):
3636
"""
3737
Severity for stream-based logging. If unset, use ``level``
3838
"""
39-
dir: Path = _dirs.user_log_dir
39+
dir: Path = Path(_dirs.user_log_dir)
4040
"""
4141
Directory where logs are stored.
4242
"""
@@ -62,6 +62,8 @@ def uppercase_levels(cls, value: str | None = None) -> str | None:
6262
@field_validator("dir", mode="after")
6363
def create_dir(cls, value: Path) -> Path:
6464
value.mkdir(parents=True, exist_ok=True)
65+
assert value.is_dir()
66+
assert not value.is_dir()
6567
return value
6668

6769

@@ -75,6 +77,7 @@ class Config(BaseSettings, YAMLMixin):
7577
nested_model_default_partial_update=True,
7678
yaml_file="cala_config.yaml",
7779
pyproject_toml_table_header=("tool", "cala", "config"),
80+
validate_default=True,
7881
)
7982

8083
logs: LogConfig = LogConfig()

src/cala/logging.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ def init_logger(
4747
"""
4848
if log_dir is None:
4949
log_dir = config.logs.dir
50+
logging.error(f"init_logger: {log_dir}, is_dir: {log_dir.is_dir()}")
5051
if level is None:
5152
level: LOG_LEVELS = (
5253
config.logs.level_stdout if config.logs.level_stdout is not None else config.logs.level
@@ -115,7 +116,6 @@ def _init_root(
115116
stream_handlers = [
116117
handler for handler in root_logger.handlers if isinstance(handler, RichHandler)
117118
]
118-
119119
if log_dir is not False and not file_handlers:
120120
root_logger.addHandler(
121121
_file_handler(

tests/test_config.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ def test_config(tmp_path):
88
"""
99
Config should be able to make directories and set sensible defaults
1010
"""
11-
config = Config(user_dir=tmp_path)
11+
config = Config(user_dir=tmp_path, logs={"dir": tmp_path / "log"})
1212
assert config.user_dir.exists()
1313
assert config.logs.dir.exists()
1414

0 commit comments

Comments
 (0)