forked from mirrors/thatmattlove-hyperglass
Check for required directories prior to initializing configuration
This commit is contained in:
parent
85f13dcc6c
commit
ec1727437d
2 changed files with 20 additions and 4 deletions
|
|
@ -5,7 +5,13 @@ from hyperglass.state import use_state
|
||||||
from hyperglass.defaults.directives import init_builtin_directives
|
from hyperglass.defaults.directives import init_builtin_directives
|
||||||
|
|
||||||
# Local
|
# Local
|
||||||
from .validate import init_params, init_devices, init_ui_params, init_directives
|
from .validate import (
|
||||||
|
init_files,
|
||||||
|
init_params,
|
||||||
|
init_devices,
|
||||||
|
init_ui_params,
|
||||||
|
init_directives,
|
||||||
|
)
|
||||||
|
|
||||||
__all__ = ("init_user_config",)
|
__all__ = ("init_user_config",)
|
||||||
|
|
||||||
|
|
@ -13,6 +19,7 @@ __all__ = ("init_user_config",)
|
||||||
def init_user_config() -> None:
|
def init_user_config() -> None:
|
||||||
"""Initialize all user configurations and add them to global state."""
|
"""Initialize all user configurations and add them to global state."""
|
||||||
state = use_state()
|
state = use_state()
|
||||||
|
init_files()
|
||||||
|
|
||||||
params = init_params()
|
params = init_params()
|
||||||
builtins = init_builtin_directives()
|
builtins = init_builtin_directives()
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,5 @@
|
||||||
"""Import configuration files and run validation."""
|
"""Import configuration files and run validation."""
|
||||||
|
|
||||||
|
|
||||||
# Third Party
|
# Third Party
|
||||||
from pydantic import ValidationError
|
from pydantic import ValidationError
|
||||||
|
|
||||||
|
|
@ -18,13 +17,23 @@ from .load import load_config
|
||||||
from .markdown import get_markdown
|
from .markdown import get_markdown
|
||||||
|
|
||||||
__all__ = (
|
__all__ = (
|
||||||
"init_params",
|
|
||||||
"init_directives",
|
|
||||||
"init_devices",
|
"init_devices",
|
||||||
|
"init_directives",
|
||||||
|
"init_files",
|
||||||
|
"init_params",
|
||||||
"init_ui_params",
|
"init_ui_params",
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def init_files() -> None:
|
||||||
|
"""Check if required directories exist and if not, create them."""
|
||||||
|
for directory in ("plugins", "static/images"):
|
||||||
|
path = Settings.app_path / directory
|
||||||
|
if not path.exists():
|
||||||
|
path.mkdir(parents=True)
|
||||||
|
log.debug("Created directory {!s}", path)
|
||||||
|
|
||||||
|
|
||||||
def init_params() -> "Params":
|
def init_params() -> "Params":
|
||||||
"""Validate & initialize configuration parameters."""
|
"""Validate & initialize configuration parameters."""
|
||||||
user_config = load_config("config", required=False)
|
user_config = load_config("config", required=False)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue