summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel P. Berrange <berrange@redhat.com>2012-03-07 11:24:47 -0500
committerDaniel P. Berrange <berrange@redhat.com>2012-03-23 19:23:12 +0000
commit30dc7d11c13c1075d441a72932957e26ef3355b7 (patch)
tree08b56d9a819d5c92f9a4062847f443082d638dd8
parent77b7d39cf9a177a5947d3a59461661cde5d3af32 (diff)
Convert libvirt connection class to use config APIs for graphics
Remove the <graphics> element from the Cheetah XML template and make the libvirt connection class use the LibvirtConfigGuestGraphics class for it instead blueprint libvirt-xml-config-apis Change-Id: Ifa18cab2aa6983c9439c6230a9109e40a6a0bbe3 Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
-rw-r--r--nova/virt/libvirt.xml.template4
-rw-r--r--nova/virt/libvirt/connection.py9
2 files changed, 7 insertions, 6 deletions
diff --git a/nova/virt/libvirt.xml.template b/nova/virt/libvirt.xml.template
index e61afa4bd..61cbb937d 100644
--- a/nova/virt/libvirt.xml.template
+++ b/nova/virt/libvirt.xml.template
@@ -137,9 +137,5 @@
#if $getVar('use_usb_tablet', True) and $type != 'lxc' and $type != 'xen'
<input type='tablet' bus='usb'/>
#end if
-
-#if $getVar('vncserver_listen', False)
- <graphics type='vnc' port='-1' autoport='yes' keymap='${vnc_keymap}' listen='${vncserver_listen}'/>
-#end if
</devices>
</domain>
diff --git a/nova/virt/libvirt/connection.py b/nova/virt/libvirt/connection.py
index 771b899bc..5c70ecbb1 100644
--- a/nova/virt/libvirt/connection.py
+++ b/nova/virt/libvirt/connection.py
@@ -69,6 +69,7 @@ from nova.openstack.common import cfg
from nova import utils
from nova.virt import driver
from nova.virt.disk import api as disk
+from nova.virt.libvirt import config
from nova.virt.libvirt import firewall
from nova.virt.libvirt import imagecache
from nova.virt.libvirt import utils as libvirt_utils
@@ -1467,8 +1468,12 @@ class LibvirtConnection(driver.ComputeDriver):
xml_info['config_drive'] = xml_info['basepath'] + "/disk.config"
if FLAGS.vnc_enabled and FLAGS.libvirt_type not in ('lxc', 'uml'):
- xml_info['vncserver_listen'] = FLAGS.vncserver_listen
- xml_info['vnc_keymap'] = FLAGS.vnc_keymap
+ graphics = config.LibvirtConfigGuestGraphics()
+ graphics.type = "vnc"
+ graphics.keymap = FLAGS.vnc_keymap
+ graphics.listen = FLAGS.vncserver_listen
+ devs.append(graphics.to_xml())
+
if not rescue:
if instance['kernel_id']:
xml_info['kernel'] = xml_info['basepath'] + "/kernel"