From c0fd42738819712e66336cf6f5f386f61cf26bda Mon Sep 17 00:00:00 2001 From: m4cr0v Date: Tue, 13 Dec 2016 16:17:34 +0800 Subject: [PATCH] Fix spice channel type nova generate wrong spice channel type 'pty', which should be 'spicevmc' Closes-Bug: #1634495 Change-Id: I58e9a8df9f40f900eeabd9d40429663cbbedb8d6 (cherry picked from commit f4be97d8cf8811a64a2d9f7d990e79d45cdf0d62) --- nova/tests/unit/virt/libvirt/test_driver.py | 2 ++ nova/virt/libvirt/driver.py | 1 + 2 files changed, 3 insertions(+) diff --git a/nova/tests/unit/virt/libvirt/test_driver.py b/nova/tests/unit/virt/libvirt/test_driver.py index fdcb872a83cd..c213fe64f09c 100644 --- a/nova/tests/unit/virt/libvirt/test_driver.py +++ b/nova/tests/unit/virt/libvirt/test_driver.py @@ -3635,6 +3635,7 @@ class LibvirtConnTestCase(test.NoDBTestCase): vconfig.LibvirtConfigMemoryBalloon) self.assertEqual(cfg.devices[4].target_name, "com.redhat.spice.0") + self.assertEqual(cfg.devices[4].type, 'spicevmc') self.assertEqual(cfg.devices[5].type, "spice") self.assertEqual(cfg.devices[6].type, "qxl") @@ -4221,6 +4222,7 @@ class LibvirtConnTestCase(test.NoDBTestCase): self.assertEqual(cfg.devices[4].type, "tablet") self.assertEqual(cfg.devices[5].target_name, "com.redhat.spice.0") + self.assertEqual(cfg.devices[5].type, 'spicevmc') self.assertEqual(cfg.devices[6].type, "vnc") self.assertEqual(cfg.devices[7].type, "spice") diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py index 0aad4105a436..7f6a5929aeaf 100644 --- a/nova/virt/libvirt/driver.py +++ b/nova/virt/libvirt/driver.py @@ -4717,6 +4717,7 @@ class LibvirtDriver(driver.ComputeDriver): if (CONF.spice.enabled and CONF.spice.agent_enabled and virt_type not in ('lxc', 'uml', 'xen')): channel = vconfig.LibvirtConfigGuestChannel() + channel.type = 'spicevmc' channel.target_name = "com.redhat.spice.0" guest.add_device(channel)