mirror of
https://github.com/virt-manager/virt-manager.git
synced 2025-02-25 18:55:27 -06:00
virtinst: Guest: remove back compat graphics handling
This commit is contained in:
parent
9359ad2bb6
commit
7a47465ab6
@ -24,6 +24,7 @@ import virtinst
|
||||
import virtinst.cli
|
||||
from virtinst import VirtualAudio
|
||||
from virtinst import VirtualDisk
|
||||
from virtinst import VirtualGraphics
|
||||
from virtinst import VirtualVideoDevice
|
||||
|
||||
# pylint: disable=W0212
|
||||
@ -149,7 +150,7 @@ def get_basic_paravirt_guest(installer=None):
|
||||
g.maxmemory = int(400)
|
||||
g.uuid = "12345678-1234-1234-1234-123456789012"
|
||||
g.boot = ["/boot/vmlinuz", "/boot/initrd"]
|
||||
g.graphics = (True, "vnc", None, "ja")
|
||||
g.add_device(VirtualGraphics("vnc", keymap="ja"))
|
||||
g.vcpus = 5
|
||||
|
||||
if installer:
|
||||
@ -165,7 +166,7 @@ def get_basic_fullyvirt_guest(typ="xen", installer=None):
|
||||
g.maxmemory = int(400)
|
||||
g.uuid = "12345678-1234-1234-1234-123456789012"
|
||||
g.cdrom = "/dev/loop0"
|
||||
g.graphics = (True, "sdl")
|
||||
g.add_device(VirtualGraphics("sdl"))
|
||||
g.features['pae'] = 0
|
||||
g.vcpus = 5
|
||||
if installer:
|
||||
|
@ -82,12 +82,6 @@ args = {
|
||||
'vcpus' : {
|
||||
'invalid' : [-1, 0, 1000, ''],
|
||||
'valid' : [ 1, 32 ] },
|
||||
'graphics' : {
|
||||
'invalid' : ['', True, 'unknown', {}, ('', '', '', 0),
|
||||
('', '', '', 'longerthan16chars'),
|
||||
('', '', '', 'invalid!!ch@r')],
|
||||
'valid' : [False, 'sdl', 'vnc', (True, 'sdl', '', 'key_map-2'),
|
||||
{'enabled' : True, 'type':'vnc', 'opts':5900} ]},
|
||||
'type' : {
|
||||
'invalid' : [],
|
||||
'valid' : ['sometype'] },
|
||||
|
25
virt-install
25
virt-install
@ -590,21 +590,22 @@ def txt_console(dom, uri):
|
||||
|
||||
def start_install(guest, continue_inst, options):
|
||||
def show_console(dom):
|
||||
if guest.graphics_dev:
|
||||
gtype = guest.graphics_dev.type
|
||||
if gtype in [virtinst.VirtualGraphics.TYPE_VNC,
|
||||
virtinst.VirtualGraphics.TYPE_SPICE]:
|
||||
logging.debug("Launching virt-viewer for graphics type '%s'",
|
||||
gtype)
|
||||
return vnc_console(dom, guest.get_uri())
|
||||
else:
|
||||
logging.debug("No viewer to launch for graphics type '%s'",
|
||||
gtype)
|
||||
return None # SDL needs no viewer app
|
||||
else:
|
||||
gdev = guest.get_devices("graphics")
|
||||
if not gdev:
|
||||
logging.debug("Connecting to text console")
|
||||
return txt_console(dom, guest.get_uri())
|
||||
|
||||
gtype = gdev[0].type
|
||||
if gtype in [virtinst.VirtualGraphics.TYPE_VNC,
|
||||
virtinst.VirtualGraphics.TYPE_SPICE]:
|
||||
logging.debug("Launching virt-viewer for graphics type '%s'",
|
||||
gtype)
|
||||
return vnc_console(dom, guest.get_uri())
|
||||
else:
|
||||
logging.debug("No viewer to launch for graphics type '%s'",
|
||||
gtype)
|
||||
return None # SDL needs no viewer app
|
||||
|
||||
# There are two main cases we care about:
|
||||
#
|
||||
# Scripts: these should specify --wait always, maintaining the
|
||||
|
@ -411,17 +411,6 @@ class Guest(XMLBuilderDomain.XMLBuilderDomain):
|
||||
cpuset = _xml_property(get_cpuset, set_cpuset,
|
||||
xpath="./vcpu/@cpuset")
|
||||
|
||||
def get_graphics_dev(self):
|
||||
gdevs = self.get_devices(VirtualDevice.VIRTUAL_DEV_GRAPHICS)
|
||||
return (gdevs and gdevs[0] or None)
|
||||
def set_graphics_dev(self, val):
|
||||
gdev = self.graphics_dev
|
||||
if val:
|
||||
self.add_device(val)
|
||||
if gdev:
|
||||
self.remove_device(gdev)
|
||||
graphics_dev = property(get_graphics_dev, set_graphics_dev)
|
||||
|
||||
# GAH! - installer.os_type = "hvm" or "xen" (aka xen paravirt)
|
||||
# guest.os_type = "Solaris", "Windows", "Linux"
|
||||
# FIXME: We should really rename this property to something else,
|
||||
@ -519,74 +508,6 @@ class Guest(XMLBuilderDomain.XMLBuilderDomain):
|
||||
# DEPRECATED PROPERTIES #
|
||||
#########################
|
||||
|
||||
# Deprecated: Should set graphics_dev.keymap directly
|
||||
def get_keymap(self):
|
||||
if self.graphics_dev is None:
|
||||
return None
|
||||
return self.graphics_dev.keymap
|
||||
def set_keymap(self, val):
|
||||
if self.graphics_dev is not None:
|
||||
self.graphics_dev.keymap = val
|
||||
keymap = property(get_keymap, set_keymap)
|
||||
|
||||
# Deprecated: Should set guest.graphics_dev = VirtualGraphics(...)
|
||||
def get_graphics(self):
|
||||
if self.graphics_dev is None:
|
||||
return { "enabled" : False }
|
||||
return { "enabled" : True, "type" : self.graphics_dev, \
|
||||
"keymap" : self.graphics_dev.keymap}
|
||||
def set_graphics(self, val):
|
||||
|
||||
# val can be:
|
||||
# a dictionary with keys: enabled, type, port, keymap
|
||||
# a tuple of the form : (enabled, type, port, keymap)
|
||||
# last 2 optional
|
||||
# : "vnc", "sdl", or false
|
||||
port = None
|
||||
gtype = None
|
||||
enabled = False
|
||||
keymap = None
|
||||
gdev = None
|
||||
if type(val) == dict:
|
||||
if "enabled" not in val:
|
||||
raise ValueError(_("Must specify whether graphics are enabled"))
|
||||
|
||||
enabled = val["enabled"]
|
||||
if "type" in val:
|
||||
gtype = val["type"]
|
||||
if "opts" in val:
|
||||
port = val["opts"]
|
||||
|
||||
elif type(val) == tuple:
|
||||
if len(val) >= 1:
|
||||
enabled = val[0]
|
||||
if len(val) >= 2:
|
||||
gtype = val[1]
|
||||
if len(val) >= 3:
|
||||
port = val[2]
|
||||
if len(val) >= 4:
|
||||
keymap = val[3]
|
||||
|
||||
else:
|
||||
if val in ("vnc", "sdl"):
|
||||
gtype = val
|
||||
enabled = True
|
||||
else:
|
||||
enabled = val
|
||||
|
||||
if enabled not in (True, False):
|
||||
raise ValueError(_("Graphics enabled must be True or False"))
|
||||
|
||||
if enabled:
|
||||
gdev = virtinst.VirtualGraphics(type=gtype)
|
||||
if port:
|
||||
gdev.port = port
|
||||
if keymap:
|
||||
gdev.keymap = keymap
|
||||
self.graphics_dev = gdev
|
||||
|
||||
graphics = property(get_graphics, set_graphics)
|
||||
|
||||
# Hypervisor name (qemu, xen, kvm, etc.)
|
||||
# Deprecated: should be pulled directly from the installer
|
||||
def get_type(self):
|
||||
|
Loading…
Reference in New Issue
Block a user