From 123b5d0800c0257a8b9f648377b9d17051722ad6 Mon Sep 17 00:00:00 2001 From: grossmj Date: Wed, 3 Apr 2024 21:16:40 +0700 Subject: [PATCH] Support for custom Qemu path in templates and nodes --- gns3server/compute/qemu/qemu_vm.py | 5 ++++- gns3server/db_migrations/README | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/gns3server/compute/qemu/qemu_vm.py b/gns3server/compute/qemu/qemu_vm.py index 6fd33482..24f1d8a8 100644 --- a/gns3server/compute/qemu/qemu_vm.py +++ b/gns3server/compute/qemu/qemu_vm.py @@ -124,6 +124,8 @@ class QemuVM(BaseNode): except QemuError: # If the binary is not found for topologies 1.4 and later # search via the platform otherwise use the binary name + log.warning(f"Could not find the QEMU binary {qemu_path} on this system, " + f"trying to find one using platform {platform}") if platform: self.platform = platform else: @@ -242,7 +244,7 @@ class QemuVM(BaseNode): if qemu_path and os.pathsep not in qemu_path: new_qemu_path = shutil.which(qemu_path, path=os.pathsep.join(self._manager.paths_list())) if new_qemu_path is None: - raise QemuError(f"QEMU binary path {qemu_path} is not found in the path") + raise QemuError(f"QEMU binary '{qemu_path}' cannot be found on the system") qemu_path = new_qemu_path self._check_qemu_path(qemu_path) @@ -289,6 +291,7 @@ class QemuVM(BaseNode): def platform(self, platform): self._platform = platform + log.info(f"QEMU VM '{self._name}' [{self._id}] has set the platform {platform}") self.qemu_path = f"qemu-system-{platform}" def _disk_setter(self, variable, value): diff --git a/gns3server/db_migrations/README b/gns3server/db_migrations/README index a2087ba3..0f539904 100644 --- a/gns3server/db_migrations/README +++ b/gns3server/db_migrations/README @@ -1,4 +1,5 @@ Generic single-database configuration with an async dbapi. # Command to generate a revision +alembic upgrade head alembic revision --autogenerate -m "add fields in table"