From 261559593a2ab217e114cdccac91c5611d089320 Mon Sep 17 00:00:00 2001 From: Christian Berendt Date: Mon, 26 May 2014 12:24:15 +0200 Subject: [PATCH] replaced unicode() with six.text_type() According to https://wiki.openstack.org/wiki/Python3 unicode() should be replaced with six.text_type(). Change-Id: If314b7ada4976a4cf05f16c2bb2beb54d1f595a1 --- ceilometer/alarm/rpc.py | 3 ++- ceilometer/api/controllers/v2.py | 3 ++- ceilometer/compute/virt/libvirt/inspector.py | 3 ++- ceilometer/publisher/utils.py | 3 ++- ceilometer/tests/api/v2/test_list_resources_scenarios.py | 4 +++- ceilometer/tests/storage/test_get_connection.py | 4 +++- ceilometer/utils.py | 8 +++++--- 7 files changed, 19 insertions(+), 9 deletions(-) diff --git a/ceilometer/alarm/rpc.py b/ceilometer/alarm/rpc.py index 515a1b89a..0c56e8ebd 100644 --- a/ceilometer/alarm/rpc.py +++ b/ceilometer/alarm/rpc.py @@ -17,6 +17,7 @@ # under the License. from oslo.config import cfg +import six from ceilometer import messaging from ceilometer.openstack.common import context @@ -62,7 +63,7 @@ class RPCAlarmNotifier(object): 'alarm_id': alarm.alarm_id, 'previous': previous, 'current': alarm.state, - 'reason': unicode(reason), + 'reason': six.text_type(reason), 'reason_data': reason_data}) diff --git a/ceilometer/api/controllers/v2.py b/ceilometer/api/controllers/v2.py index dbe870825..5ac5d9401 100644 --- a/ceilometer/api/controllers/v2.py +++ b/ceilometer/api/controllers/v2.py @@ -583,7 +583,8 @@ def _flatten_metadata(metadata): # output before: a.b:c=d # output now: a.b.c=d # So to keep the first variant just replace all dots except the first - return dict((k.replace('.', ':').replace(':', '.', 1), unicode(v)) + return dict((k.replace('.', ':').replace(':', '.', 1), + six.text_type(v)) for k, v in utils.recursive_keypairs(metadata, separator='.') if type(v) is not set) diff --git a/ceilometer/compute/virt/libvirt/inspector.py b/ceilometer/compute/virt/libvirt/inspector.py index 34bc613d2..56f5a8d34 100644 --- a/ceilometer/compute/virt/libvirt/inspector.py +++ b/ceilometer/compute/virt/libvirt/inspector.py @@ -19,6 +19,7 @@ from lxml import etree from oslo.config import cfg +import six from ceilometer.compute.virt import inspector as virt_inspector from ceilometer.openstack.common.gettextutils import _ @@ -83,7 +84,7 @@ class LibvirtInspector(virt_inspector.Inspector): return self._get_connection().lookupByName(instance_name) except Exception as ex: if not libvirt or not isinstance(ex, libvirt.libvirtError): - raise virt_inspector.InspectorException(unicode(ex)) + raise virt_inspector.InspectorException(six.text_type(ex)) error_code = ex.get_error_code() msg = ("Error from libvirt while looking up %(instance_name)s: " "[Error Code %(error_code)s] " diff --git a/ceilometer/publisher/utils.py b/ceilometer/publisher/utils.py index f938c4329..2d5409a61 100644 --- a/ceilometer/publisher/utils.py +++ b/ceilometer/publisher/utils.py @@ -23,6 +23,7 @@ import hashlib import hmac from oslo.config import cfg +import six from ceilometer import utils @@ -58,7 +59,7 @@ def compute_signature(message, secret): # been part of the original message. continue digest_maker.update(name) - digest_maker.update(unicode(value).encode('utf-8')) + digest_maker.update(six.text_type(value).encode('utf-8')) return digest_maker.hexdigest() diff --git a/ceilometer/tests/api/v2/test_list_resources_scenarios.py b/ceilometer/tests/api/v2/test_list_resources_scenarios.py index 28037b240..c006a6eb3 100644 --- a/ceilometer/tests/api/v2/test_list_resources_scenarios.py +++ b/ceilometer/tests/api/v2/test_list_resources_scenarios.py @@ -22,6 +22,8 @@ import datetime import json import logging +import six + from ceilometer.openstack.common import timeutils from ceilometer.publisher import utils from ceilometer import sample @@ -41,7 +43,7 @@ class TestListResources(FunctionalTest, @staticmethod def _isotime(timestamp): # drop TZ specifier - return unicode(timeutils.isotime(timestamp))[:-1] + return six.text_type(timeutils.isotime(timestamp))[:-1] def _verify_sample_timestamps(self, res, first, last): self.assertTrue('first_sample_timestamp' in res) diff --git a/ceilometer/tests/storage/test_get_connection.py b/ceilometer/tests/storage/test_get_connection.py index 7cd4bde67..1f6498f2f 100644 --- a/ceilometer/tests/storage/test_get_connection.py +++ b/ceilometer/tests/storage/test_get_connection.py @@ -22,6 +22,8 @@ from ceilometer.openstack.common import test from ceilometer import storage from ceilometer.storage import impl_log +import six + class EngineTest(test.BaseTestCase): @@ -33,4 +35,4 @@ class EngineTest(test.BaseTestCase): try: storage.get_connection('no-such-engine://localhost') except RuntimeError as err: - self.assertIn('no-such-engine', unicode(err)) + self.assertIn('no-such-engine', six.text_type(err)) diff --git a/ceilometer/utils.py b/ceilometer/utils.py index 23fc7f6af..ec0a7a7f8 100644 --- a/ceilometer/utils.py +++ b/ceilometer/utils.py @@ -24,6 +24,8 @@ import datetime import decimal import multiprocessing +import six + from ceilometer.openstack.common import timeutils from ceilometer.openstack.common import units @@ -45,9 +47,9 @@ def recursive_keypairs(d, separator=':'): # to avoid inconsistencies in the message signature computation # for equivalent payloads modulo ordering first = lambda i: i[0] - m = map(lambda x: unicode(dict(sorted(x.items(), key=first)) - if isinstance(x, dict) - else x).encode('utf-8'), + m = map(lambda x: six.text_type(dict(sorted(x.items(), key=first)) + if isinstance(x, dict) + else x).encode('utf-8'), value) yield name, list(m) else: