mirror of
https://github.com/GNS3/gns3-server
synced 2024-11-28 11:18:11 +00:00
parent
12735ff36e
commit
ac085126fc
@ -99,7 +99,11 @@ class Controller:
|
|||||||
for c in data["computes"]:
|
for c in data["computes"]:
|
||||||
yield from self.add_compute(**c)
|
yield from self.add_compute(**c)
|
||||||
|
|
||||||
# Preload the list of projects from disk
|
@asyncio.coroutine
|
||||||
|
def load_projects(self):
|
||||||
|
"""
|
||||||
|
Preload the list of projects from disk
|
||||||
|
"""
|
||||||
server_config = Config.instance().get_section_config("Server")
|
server_config = Config.instance().get_section_config("Server")
|
||||||
projects_path = os.path.expanduser(server_config.get("projects_path", "~/GNS3/projects"))
|
projects_path = os.path.expanduser(server_config.get("projects_path", "~/GNS3/projects"))
|
||||||
os.makedirs(projects_path, exist_ok=True)
|
os.makedirs(projects_path, exist_ok=True)
|
||||||
|
@ -292,10 +292,15 @@ class WebServer:
|
|||||||
log.info("Starting server on {}:{}".format(self._host, self._port))
|
log.info("Starting server on {}:{}".format(self._host, self._port))
|
||||||
self._handler = app.make_handler(handler=RequestHandler)
|
self._handler = app.make_handler(handler=RequestHandler)
|
||||||
server = self._run_application(self._handler, ssl_context)
|
server = self._run_application(self._handler, ssl_context)
|
||||||
|
|
||||||
self._loop.run_until_complete(server)
|
self._loop.run_until_complete(server)
|
||||||
self._signal_handling()
|
self._signal_handling()
|
||||||
self._exit_handling()
|
self._exit_handling()
|
||||||
|
|
||||||
|
# Now the compute is initialized we can load the projects
|
||||||
|
if server_config.getboolean("controller"):
|
||||||
|
asyncio.async(Controller.instance().load_projects())
|
||||||
|
|
||||||
if server_config.getboolean("shell"):
|
if server_config.getboolean("shell"):
|
||||||
asyncio.async(self.start_shell())
|
asyncio.async(self.start_shell())
|
||||||
|
|
||||||
|
@ -121,7 +121,7 @@ def test_load_projects(controller, projects_dir, async_run):
|
|||||||
with open(os.path.join(projects_dir, "project1", "project1.gns3"), "w+") as f:
|
with open(os.path.join(projects_dir, "project1", "project1.gns3"), "w+") as f:
|
||||||
f.write("")
|
f.write("")
|
||||||
with asyncio_patch("gns3server.controller.Controller.load_project") as mock_load_project:
|
with asyncio_patch("gns3server.controller.Controller.load_project") as mock_load_project:
|
||||||
async_run(controller.load())
|
async_run(controller.load_projects())
|
||||||
mock_load_project.assert_called_with(os.path.join(projects_dir, "project1", "project1.gns3"), load=False)
|
mock_load_project.assert_called_with(os.path.join(projects_dir, "project1", "project1.gns3"), load=False)
|
||||||
|
|
||||||
|
|
||||||
|
@ -506,4 +506,3 @@ def test_suspend_all(project, async_run):
|
|||||||
compute.post = AsyncioMagicMock()
|
compute.post = AsyncioMagicMock()
|
||||||
async_run(project.suspend_all())
|
async_run(project.suspend_all())
|
||||||
assert len(compute.post.call_args_list) == 10
|
assert len(compute.post.call_args_list) == 10
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user