feat(qemu): support two CD/DVD images and consistent ISO handling

This commit is contained in:
Cristi committed 2026-10-17 23:08:11 +03:00
1 parent d047ca0a5f
commit 84b4c05b9f
17 files changed
+462 -41

No files matched your search

+17
View File
@@ -45,6 +45,23 @@ class Image(BaseTable):
last_error = Column(String)
templates = relationship("Template", secondary=image_template_map, back_populates="images")
@property
def reference(self):
"""An emulator-relative reference, or an absolute additional-root path."""
import os
from gns3server.utils import force_unix_path
from gns3server.utils.images import default_images_directory
root = os.path.abspath(default_images_directory(self.image_type))
path = os.path.abspath(self.path)
try:
if os.path.commonpath([root, path]) == root:
return force_unix_path(os.path.relpath(path, root))
except ValueError: # Different drives on Windows.
pass
return force_unix_path(path)
class ImageSyncJob(BaseTable):
__tablename__ = "image_sync_jobs"
+1
View File
@@ -201,6 +201,7 @@ class QemuTemplate(Template):
hdd_disk_image = Column(String)
hdd_disk_interface = Column(String)
cdrom_image = Column(String)
cdrom2_image = Column(String)
initrd = Column(String)
kernel_image = Column(String)
bios_image = Column(String)