Repository: libcloud
Updated Branches:
  refs/heads/trunk 1a8361482 -> a64b0eacd


LIBCLOUD-858: Fix Listing Libvirt Nodes with Python 3

Closes #894


Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/f5ff0cfb
Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/f5ff0cfb
Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/f5ff0cfb

Branch: refs/heads/trunk
Commit: f5ff0cfb080b767b542e9deec5ecc34dedcb4f0c
Parents: 1a83614
Author: Fahri Cihan Demirci <[email protected]>
Authored: Sun Oct 9 02:15:10 2016 -0400
Committer: Anthony Shaw <[email protected]>
Committed: Sun Oct 9 19:23:04 2016 +1100

----------------------------------------------------------------------
 libcloud/compute/drivers/libvirt_driver.py   | 3 ++-
 libcloud/test/compute/test_libvirt_driver.py | 6 ++++++
 2 files changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/f5ff0cfb/libcloud/compute/drivers/libvirt_driver.py
----------------------------------------------------------------------
diff --git a/libcloud/compute/drivers/libvirt_driver.py 
b/libcloud/compute/drivers/libvirt_driver.py
index 13b0c95..c6f168f 100644
--- a/libcloud/compute/drivers/libvirt_driver.py
+++ b/libcloud/compute/drivers/libvirt_driver.py
@@ -33,6 +33,7 @@ from libcloud.compute.base import NodeDriver, Node
 from libcloud.compute.base import NodeState
 from libcloud.compute.types import Provider
 from libcloud.utils.networking import is_public_subnet
+from libcloud.utils.py3 import ensure_string
 
 try:
     import libvirt
@@ -428,7 +429,7 @@ class LibvirtNodeDriver(NodeDriver):
         :return: Dictionary which maps mac address to IP address.
         :rtype: ``dict``
         """
-        lines = cmd_output.split('\n')
+        lines = ensure_string(cmd_output).split('\n')
 
         arp_table = defaultdict(list)
         for line in lines:

http://git-wip-us.apache.org/repos/asf/libcloud/blob/f5ff0cfb/libcloud/test/compute/test_libvirt_driver.py
----------------------------------------------------------------------
diff --git a/libcloud/test/compute/test_libvirt_driver.py 
b/libcloud/test/compute/test_libvirt_driver.py
index 0cfd517..a9f6b9c 100644
--- a/libcloud/test/compute/test_libvirt_driver.py
+++ b/libcloud/test/compute/test_libvirt_driver.py
@@ -19,6 +19,7 @@ import mock
 
 from libcloud.compute.drivers.libvirt_driver import LibvirtNodeDriver
 from libcloud.compute.drivers.libvirt_driver import have_libvirt
+from libcloud.utils.py3 import PY3
 
 from libcloud.test import unittest
 
@@ -42,6 +43,11 @@ class LibvirtNodeDriverTestCase(unittest.TestCase):
 1.2.10.33 dev br0 lladdr 52:54:00:04:89:51 REACHABLE
 1.2.10.97 dev br0 lladdr
 1.2.10.40 dev br0 lladdr 52:54:00:77:1c:83 STALE"""
+    if PY3:
+        from libcloud.utils.py3 import b
+        arp_output_str = b(arp_output_str)
+        ip_output_str = b(ip_output_str)
+        bad_output_str = b(bad_output_str)
 
     def _assert_arp_table(self, arp_table):
         self.assertIn('52:54:00:bc:f9:6c', arp_table)

Reply via email to