moonraker: provide startup warnings as a list

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
This commit is contained in:
Eric Callahan 2022-08-06 15:31:42 -04:00
parent 0d936d5af0
commit e82fe46c11
No known key found for this signature in database
GPG Key ID: 5A1EB336DFB4C71B
1 changed files with 9 additions and 9 deletions

View File

@ -92,12 +92,8 @@ class Server:
self.register_upload_handler = app.register_upload_handler
self.register_api_transport = app.register_api_transport
log_warn = args.get('log_warning', "")
if log_warn:
self.add_warning(log_warn)
cfg_warn = args.get("config_warning", "")
if cfg_warn:
self.add_warning(cfg_warn)
for warning in args.get("startup_warnings", []):
self.add_warning(warning)
self.register_endpoint(
"/server/info", ['GET'], self._handle_info_request)
@ -440,6 +436,8 @@ def main(cmd_line_args: argparse.Namespace) -> None:
cfg_file = cmd_line_args.configfile
app_args = {'config_file': cfg_file}
startup_warnings: List[str] = []
app_args["startup_warnings"] = startup_warnings
# Setup Logging
version = utils.get_software_version()
if cmd_line_args.nologfile:
@ -451,7 +449,7 @@ def main(cmd_line_args: argparse.Namespace) -> None:
app_args['python_version'] = sys.version.replace("\n", " ")
ql, file_logger, warning = utils.setup_logging(app_args)
if warning is not None:
app_args['log_warning'] = warning
startup_warnings.append(warning)
# Start asyncio event loop and server
event_loop = EventLoop()
@ -468,7 +466,9 @@ def main(cmd_line_args: argparse.Namespace) -> None:
estatus = 1
break
app_args['config_file'] = backup_cfg
app_args['config_warning'] = (
warn_list = list(startup_warnings)
app_args["startup_warnings"] = warn_list
warn_list.append(
f"Server configuration error: {e}\n"
f"Loaded server from most recent working configuration:"
f" '{app_args['config_file']}'\n"
@ -494,7 +494,7 @@ def main(cmd_line_args: argparse.Namespace) -> None:
# before the server restarts
if alt_config_loaded:
app_args['config_file'] = cfg_file
app_args.pop('config_warning', None)
app_args["startup_warnings"] = startup_warnings
alt_config_loaded = False
event_loop.close()
# Since we are running outside of the the server