Consolidate setup persistence into bootstrap metadata and runtime DB
This commit is contained in:
@@ -82,19 +82,27 @@ async def startup_shared_resources(
|
||||
log.debug("setup_completion_cached", completed=setup_complete)
|
||||
|
||||
if setup_complete:
|
||||
persisted_runtime_settings = (
|
||||
await setup_service.get_persisted_runtime_settings(startup_db)
|
||||
)
|
||||
if persisted_runtime_settings:
|
||||
updated_settings = settings.model_copy(update=persisted_runtime_settings)
|
||||
if Path(updated_settings.database_path).resolve() != original_db_path:
|
||||
await _ensure_database_schema(updated_settings.database_path)
|
||||
set_runtime_settings(app, updated_settings)
|
||||
settings = updated_settings
|
||||
log.info(
|
||||
"runtime_settings_overridden_from_setup",
|
||||
overrides=persisted_runtime_settings,
|
||||
)
|
||||
runtime_database_path = await setup_service.get_runtime_database_path(startup_db)
|
||||
if runtime_database_path:
|
||||
if Path(runtime_database_path).resolve() != original_db_path:
|
||||
await _ensure_database_schema(runtime_database_path)
|
||||
|
||||
runtime_db = await open_db(runtime_database_path)
|
||||
try:
|
||||
persisted_runtime_settings = (
|
||||
await setup_service.get_persisted_runtime_settings(runtime_db)
|
||||
)
|
||||
finally:
|
||||
await runtime_db.close()
|
||||
|
||||
if persisted_runtime_settings:
|
||||
updated_settings = settings.model_copy(update=persisted_runtime_settings)
|
||||
set_runtime_settings(app, updated_settings)
|
||||
settings = updated_settings
|
||||
log.info(
|
||||
"runtime_settings_overridden_from_setup",
|
||||
overrides=persisted_runtime_settings,
|
||||
)
|
||||
|
||||
if Path(settings.database_path).resolve() != original_db_path:
|
||||
runtime_db = await open_db(settings.database_path)
|
||||
|
||||
Reference in New Issue
Block a user