mirror of
https://github.com/virt-manager/virt-manager.git
synced 2025-02-02 09:47:16 +03:00
create: move generate_name to Guest
This will be used by virt-install. Tweak the logic a bit to not have 'generic' in the name
This commit is contained in:
parent
387614c641
commit
078348fbbf
@ -111,7 +111,7 @@ class NewVM(uiutils.UITestCase):
|
||||
newvm.find_fuzzy("Finish", "button").click()
|
||||
|
||||
# Delete it from the VM window
|
||||
vmwindow = self.app.root.find_fuzzy("generic on", "frame")
|
||||
vmwindow = self.app.root.find_fuzzy("vm1 on", "frame")
|
||||
vmwindow.find("Virtual Machine", "menu").click()
|
||||
vmwindow.find("Delete", "menu item").click()
|
||||
|
||||
@ -284,7 +284,7 @@ class NewVM(uiutils.UITestCase):
|
||||
self.forward(newvm)
|
||||
newvm.find_fuzzy("Finish", "button").click()
|
||||
|
||||
self.app.root.find_fuzzy("generic-ppc64 on", "frame")
|
||||
self.app.root.find_fuzzy("vm-ppc64 on", "frame")
|
||||
self.assertFalse(newvm.showing)
|
||||
|
||||
|
||||
@ -336,7 +336,7 @@ class NewVM(uiutils.UITestCase):
|
||||
newvm.find_fuzzy("Finish", "button").click()
|
||||
|
||||
time.sleep(1)
|
||||
self.app.root.find_fuzzy("generic on", "frame")
|
||||
self.app.root.find_fuzzy("vm1 on", "frame")
|
||||
self.assertFalse(newvm.showing)
|
||||
|
||||
|
||||
|
@ -1271,7 +1271,8 @@ class vmmCreate(vmmGObjectUI):
|
||||
fs_dir = [os.environ['HOME'],
|
||||
'.local/share/libvirt/filesystems/']
|
||||
|
||||
fs = fs_dir + [self._generate_default_name(None)]
|
||||
default_name = virtinst.Guest.generate_name(self._guest)
|
||||
fs = fs_dir + [default_name]
|
||||
self.widget("install-oscontainer-fs").set_text(os.path.join(*fs))
|
||||
|
||||
|
||||
@ -1479,29 +1480,6 @@ class vmmCreate(vmmGObjectUI):
|
||||
return False
|
||||
return True
|
||||
|
||||
def _generate_default_name(self, osobj):
|
||||
force_num = False
|
||||
if self._guest.os.is_container():
|
||||
basename = "container"
|
||||
force_num = True
|
||||
elif not osobj:
|
||||
basename = "vm"
|
||||
force_num = True
|
||||
else:
|
||||
basename = osobj.name
|
||||
|
||||
if self._guest.os.arch != self.conn.caps.host.cpu.arch:
|
||||
basename += "-%s" % _pretty_arch(self._guest.os.arch)
|
||||
force_num = False
|
||||
|
||||
def cb(n):
|
||||
return virtinst.generatename.check_libvirt_collision(
|
||||
self.conn.get_backend().lookupByName, n)
|
||||
return virtinst.generatename.generate_name(basename, cb,
|
||||
start_num=force_num and 1 or 2, force_num=force_num,
|
||||
sep=not force_num and "-" or "")
|
||||
|
||||
|
||||
def _validate_install_page(self):
|
||||
instmethod = self._get_config_install_page()
|
||||
installer = None
|
||||
@ -1658,7 +1636,7 @@ class vmmCreate(vmmGObjectUI):
|
||||
self._guest.os.kernel_args = kargs
|
||||
|
||||
try:
|
||||
name = self._generate_default_name(self._guest.osinfo)
|
||||
name = virtinst.Guest.generate_name(self._guest)
|
||||
self.widget("create-vm-name").set_text(name)
|
||||
self._guest.validate_name(self._guest.conn, name)
|
||||
self._guest.name = name
|
||||
|
@ -137,6 +137,34 @@ class Guest(XMLBuilder):
|
||||
|
||||
logging.error("Failed to generate non-conflicting UUID")
|
||||
|
||||
@staticmethod
|
||||
def generate_name(guest):
|
||||
def _pretty_arch(_a):
|
||||
if _a == "armv7l":
|
||||
return "arm"
|
||||
return _a
|
||||
|
||||
force_num = False
|
||||
basename = guest.osinfo.name
|
||||
if guest.osinfo.name == "generic":
|
||||
force_num = True
|
||||
if guest.os.is_container():
|
||||
basename = "container"
|
||||
else:
|
||||
basename = "vm"
|
||||
|
||||
if guest.os.arch != guest.conn.caps.host.cpu.arch:
|
||||
basename += "-%s" % _pretty_arch(guest.os.arch)
|
||||
force_num = False
|
||||
|
||||
def cb(n):
|
||||
return generatename.check_libvirt_collision(
|
||||
guest.conn.lookupByName, n)
|
||||
return generatename.generate_name(basename, cb,
|
||||
start_num=force_num and 1 or 2, force_num=force_num,
|
||||
sep=not force_num and "-" or "")
|
||||
|
||||
|
||||
@staticmethod
|
||||
def get_recommended_machine(capsinfo):
|
||||
"""
|
||||
|
Loading…
x
Reference in New Issue
Block a user