From f036e9898a69f5041f9cde02e3652c29e2de1643 Mon Sep 17 00:00:00 2001 From: Ross Brattain Date: Mon, 5 Dec 2016 16:11:54 -0500 Subject: Add support for Python 3 Porting to Python3 using Openstack guidelines: https://wiki.openstack.org/wiki/Python3 This passes unittests on Python 3.5 and passes opnfv_smoke suite Updates: use six for urlparse and urlopen fix exception.message attribute removal run unittests on python3 use unitest.mock on python 3 fix open mock for vsperf fix float division by using delta/eplison comparison use unicode in StringIO use plugin/sample_config.yaml relative path from test case fixed apexlake unittests upgraded to mock 2.0.0 to match python3 unittest.mock features fixed flake8 issues implement safe JSON decode with oslo_serialization.jsonutils.dump_as_bytes() implement safe unicode encode/decode with oslo_utils.encodeutils heat: convert pub key file from bytes to unicode pkg_resources returns raw bytes, in python3 we have to decode this to utf-8 unicode so JSON can encode it for heat template JIRA: YARDSTICK-452 Change-Id: Ib80dd1d0c0eb0592acd832b82f6a7f8f7c20bfda Signed-off-by: Ross Brattain --- api/resources/env_action.py | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) (limited to 'api/resources/env_action.py') diff --git a/api/resources/env_action.py b/api/resources/env_action.py index 7e2487158..8955f3cb6 100644 --- a/api/resources/env_action.py +++ b/api/resources/env_action.py @@ -6,25 +6,27 @@ # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## +from __future__ import absolute_import + +import errno +import json import logging -import threading +import os import subprocess +import threading import time import uuid -import json -import os -import errno -import ConfigParser -from docker import Client +from six.moves import configparser -from yardstick.common import constants as config -from yardstick.common import utils as yardstick_utils -from yardstick.common.httpClient import HttpClient from api import conf as api_conf +from api.database.handler import AsyncTaskHandler from api.utils import influx from api.utils.common import result_handler -from api.database.handler import AsyncTaskHandler +from docker import Client +from yardstick.common import constants as config +from yardstick.common import utils as yardstick_utils +from yardstick.common.httpClient import HttpClient logger = logging.getLogger(__name__) logger.setLevel(logging.DEBUG) @@ -167,7 +169,7 @@ def _config_influxdb(): def _change_output_to_influxdb(): yardstick_utils.makedirs(config.YARDSTICK_CONFIG_DIR) - parser = ConfigParser.ConfigParser() + parser = configparser.ConfigParser() parser.read(config.YARDSTICK_CONFIG_SAMPLE_FILE) parser.set('DEFAULT', 'dispatcher', 'influxdb') -- cgit 1.2.3-korg