refactor(shared): dict merging using pydantic deep_update
This commit is contained in:
parent
27c2221a68
commit
d9852940d6
|
@ -9,6 +9,7 @@ from loguru import logger
|
|||
# pylint: disable=no-name-in-module
|
||||
from pydantic import BaseModel, ValidationError
|
||||
from pydantic.fields import ModelField
|
||||
from pydantic.utils import deep_update
|
||||
from yaml import YAMLError, safe_load
|
||||
|
||||
DEFAULT_ENV_PREFIX = "LIBRETIME"
|
||||
|
@ -38,12 +39,7 @@ class BaseConfig(BaseModel):
|
|||
env_values = self._load_env_values(env_prefix, env_delimiter)
|
||||
|
||||
try:
|
||||
super().__init__(
|
||||
**{
|
||||
**file_values,
|
||||
**env_values,
|
||||
},
|
||||
)
|
||||
super().__init__(**deep_update(file_values, env_values))
|
||||
except ValidationError as error:
|
||||
logger.critical(error)
|
||||
sys.exit(1)
|
||||
|
|
Loading…
Reference in New Issue