Skip to content

Refactor configuration handling#78

Merged
edornd merged 5 commits intomainfrom
70-configs
Nov 7, 2025
Merged

Refactor configuration handling#78
edornd merged 5 commits intomainfrom
70-configs

Conversation

@edornd
Copy link
Copy Markdown
Member

@edornd edornd commented Nov 7, 2025

No description provided.

- Move satpy YAML configs from resources/ to src/satctl/_config_data/
- Add automatic SATPY_CONFIG_PATH setup in package initialization
- Make yaml_file path configurable in get_settings() function
- Remove hardcoded yaml_file from SatCtlSettings model config
- Clean up trailing whitespace in config files
…r pattern

Implements lazy initialization pattern for authenticators and downloaders using factory builders, improving configuration flexibility and dependency management. Key changes:

- Replace direct instantiation with AuthBuilder and DownloadBuilder factories
- Move authenticator/downloader initialization to point of use (lazy init)
- Rename config keys: `authenticator` → `default_authenticator`, `downloader` → `default_downloader`
- Add SATCTL_CONFIG environment variable support in config loader
- Simplify CLI by removing explicit downloader creation
- Move downloader init parameter to include authenticator argument
- Update all sources (S1, S2, S3, MODIS, VIIRS, MTG) to use new builder pattern
- Move pytest log disable flags from pyproject.toml to Makefile
- Make download/auth/sources dicts optional with empty defaults

Breaking changes:
- Config file format updated (authenticator/downloader → default_*)
- Source creation API changed (no longer accepts authenticator parameter)
- Downloader.init() signature changed (now requires authenticator)
Changes:
- Removed 4 authenticator fixture definitions from tests/conftest.py
- Updated test methods to remove unused authenticator parameters
- Modified test_mtg.py to build authenticators inline using configure_authenticator()
@edornd edornd merged commit 6ff4c9b into main Nov 7, 2025
8 checks passed
@edornd edornd deleted the 70-configs branch November 7, 2025 17:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant