Tweak server/custom node load order

- Load custom nodes after creating server
 - Add routes after loading custom nodes
Custom nodes can now add routes via PromptServer.instance
This commit is contained in:
pythongosssss 2023-04-01 12:44:29 +01:00
parent 06c2c19b5a
commit 313f1f83a6
3 changed files with 10 additions and 6 deletions

View File

@ -40,6 +40,7 @@ if __name__ == "__main__":
except: except:
pass pass
from nodes import init_custom_nodes
import execution import execution
import server import server
import folder_paths import folder_paths
@ -98,6 +99,8 @@ if __name__ == "__main__":
server = server.PromptServer(loop) server = server.PromptServer(loop)
q = execution.PromptQueue(server) q = execution.PromptQueue(server)
init_custom_nodes()
server.add_routes()
hijack_progress(server) hijack_progress(server)
threading.Thread(target=prompt_worker, daemon=True, args=(q,server,)).start() threading.Thread(target=prompt_worker, daemon=True, args=(q,server,)).start()
@ -113,7 +116,6 @@ if __name__ == "__main__":
except: except:
address = '127.0.0.1' address = '127.0.0.1'
dont_print = False dont_print = False
if '--dont-print-server' in sys.argv: if '--dont-print-server' in sys.argv:
dont_print = True dont_print = True

View File

@ -1050,6 +1050,6 @@ def load_custom_nodes():
if os.path.isfile(module_path) and os.path.splitext(module_path)[1] != ".py": continue if os.path.isfile(module_path) and os.path.splitext(module_path)[1] != ".py": continue
load_custom_node(module_path) load_custom_node(module_path)
load_custom_nodes() def init_custom_nodes():
load_custom_nodes()
load_custom_node(os.path.join(os.path.join(os.path.dirname(os.path.realpath(__file__)), "comfy_extras"), "nodes_upscale_model.py")) load_custom_node(os.path.join(os.path.join(os.path.dirname(os.path.realpath(__file__)), "comfy_extras"), "nodes_upscale_model.py"))

View File

@ -42,6 +42,7 @@ class PromptServer():
self.web_root = os.path.join(os.path.dirname( self.web_root = os.path.join(os.path.dirname(
os.path.realpath(__file__)), "web") os.path.realpath(__file__)), "web")
routes = web.RouteTableDef() routes = web.RouteTableDef()
self.routes = routes
self.last_node_id = None self.last_node_id = None
self.client_id = None self.client_id = None
@ -239,8 +240,9 @@ class PromptServer():
self.prompt_queue.delete_history_item(id_to_delete) self.prompt_queue.delete_history_item(id_to_delete)
return web.Response(status=200) return web.Response(status=200)
self.app.add_routes(routes) def add_routes(self):
self.app.add_routes(self.routes)
self.app.add_routes([ self.app.add_routes([
web.static('/', self.web_root), web.static('/', self.web_root),
]) ])