Save database.db to upload dir, not code dir

This commit is contained in:
Brett Williams
2023-10-27 02:35:21 -05:00
parent deac943e4c
commit 951bebb3a8
2 changed files with 9 additions and 6 deletions

View File

@@ -535,7 +535,7 @@ def start_server(background_thread=False):
EngineManager.update_all_engines() EngineManager.update_all_engines()
# Set up the RenderQueue object # Set up the RenderQueue object
RenderQueue.start_queue() RenderQueue.start_queue(database_directory=server.config['UPLOAD_FOLDER'])
DistributedJobManager.start() DistributedJobManager.start()
thread = threading.Thread(target=eval_loop, kwargs={'delay_sec': config.get('queue_eval_seconds', 1)}, daemon=True) thread = threading.Thread(target=eval_loop, kwargs={'delay_sec': config.get('queue_eval_seconds', 1)}, daemon=True)

View File

@@ -1,4 +1,5 @@
import logging import logging
import os
from datetime import datetime from datetime import datetime
from sqlalchemy import create_engine from sqlalchemy import create_engine
@@ -18,10 +19,8 @@ class JobNotFoundError(Exception):
class RenderQueue: class RenderQueue:
engine = create_engine('sqlite:///database.db') engine = None
Base.metadata.create_all(engine) session = None
Session = sessionmaker(bind=engine)
session = Session()
job_queue = [] job_queue = []
maximum_renderer_instances = {'blender': 1, 'aerender': 1, 'ffmpeg': 4} maximum_renderer_instances = {'blender': 1, 'aerender': 1, 'ffmpeg': 4}
last_saved_counts = {} last_saved_counts = {}
@@ -30,7 +29,11 @@ class RenderQueue:
pass pass
@classmethod @classmethod
def start_queue(cls): def start_queue(cls, database_directory):
if not cls.engine:
cls.engine = create_engine(f"sqlite:///{os.path.join(database_directory, 'database.db')}")
Base.metadata.create_all(cls.engine)
cls.session = sessionmaker(bind=cls.engine)()
cls.load_state() cls.load_state()
@classmethod @classmethod