server: add support for instance uuids

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
This commit is contained in:
Eric Callahan 2023-06-21 11:03:07 -04:00
parent 0f4276d9b0
commit 02d66a346d
No known key found for this signature in database
GPG Key ID: 5A1EB336DFB4C71B
1 changed files with 9 additions and 1 deletions

View File

@ -17,6 +17,7 @@ import socket
import logging import logging
import signal import signal
import asyncio import asyncio
import uuid
from . import confighelper from . import confighelper
from .eventloop import EventLoop from .eventloop import EventLoop
from .app import MoonrakerApp from .app import MoonrakerApp
@ -509,6 +510,12 @@ def main(from_package: bool = True) -> None:
startup_warnings.append( startup_warnings.append(
f"Unable to create data path folder at {data_path}" f"Unable to create data path folder at {data_path}"
) )
uuid_path = data_path.joinpath(".moonraker.uuid")
if not uuid_path.is_file():
instance_uuid = uuid.uuid4().hex
uuid_path.write_text(instance_uuid)
else:
instance_uuid = uuid_path.read_text().strip()
if cmd_line_args.configfile is not None: if cmd_line_args.configfile is not None:
cfg_file: str = cmd_line_args.configfile cfg_file: str = cmd_line_args.configfile
else: else:
@ -522,7 +529,8 @@ def main(from_package: bool = True) -> None:
"debug": cmd_line_args.debug, "debug": cmd_line_args.debug,
"asyncio_debug": cmd_line_args.asyncio_debug, "asyncio_debug": cmd_line_args.asyncio_debug,
"is_backup_config": False, "is_backup_config": False,
"is_python_package": from_package "is_python_package": from_package,
"instance_uuid": instance_uuid
} }
# Setup Logging # Setup Logging