Import urlutils from openstack common
Import urlutils for compatability issue Remove obsolete code of Python 2.5 support Partial implement: blueprint py33-support Change-Id: I53515aa0f6f5c936e0d1a4f44b0ebf4998c59492
This commit is contained in:
@@ -17,8 +17,8 @@ import copy
|
|||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
import socket
|
import socket
|
||||||
import urlparse
|
|
||||||
|
|
||||||
|
from heatclient.openstack.common.py3kcompat import urlutils
|
||||||
from six.moves import http_client as httplib
|
from six.moves import http_client as httplib
|
||||||
|
|
||||||
try:
|
try:
|
||||||
@@ -33,9 +33,9 @@ except ImportError:
|
|||||||
import simplejson as json
|
import simplejson as json
|
||||||
|
|
||||||
# Python 2.5 compat fix
|
# Python 2.5 compat fix
|
||||||
if not hasattr(urlparse, 'parse_qsl'):
|
if not hasattr(urlutils, 'parse_qsl'):
|
||||||
import cgi
|
import cgi
|
||||||
urlparse.parse_qsl = cgi.parse_qsl
|
urlutils.parse_qsl = cgi.parse_qsl
|
||||||
|
|
||||||
|
|
||||||
from heatclient import exc
|
from heatclient import exc
|
||||||
@@ -61,7 +61,7 @@ class HTTPClient(object):
|
|||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def get_connection_params(endpoint, **kwargs):
|
def get_connection_params(endpoint, **kwargs):
|
||||||
parts = urlparse.urlparse(endpoint)
|
parts = urlutils.urlparse(endpoint)
|
||||||
|
|
||||||
_args = (parts.hostname, parts.port, parts.path)
|
_args = (parts.hostname, parts.port, parts.path)
|
||||||
_kwargs = {'timeout': float(kwargs.get('timeout', 600))}
|
_kwargs = {'timeout': float(kwargs.get('timeout', 600))}
|
||||||
|
|||||||
17
heatclient/openstack/common/py3kcompat/__init__.py
Normal file
17
heatclient/openstack/common/py3kcompat/__init__.py
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
# vim: tabstop=4 shiftwidth=4 softtabstop=4
|
||||||
|
#
|
||||||
|
# Copyright 2013 Canonical Ltd.
|
||||||
|
# All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||||
|
# not use this file except in compliance with the License. You may obtain
|
||||||
|
# a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||||
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||||
|
# License for the specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
51
heatclient/openstack/common/py3kcompat/urlutils.py
Normal file
51
heatclient/openstack/common/py3kcompat/urlutils.py
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
# vim: tabstop=4 shiftwidth=4 softtabstop=4
|
||||||
|
#
|
||||||
|
# Copyright 2013 Canonical Ltd.
|
||||||
|
# All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||||
|
# not use this file except in compliance with the License. You may obtain
|
||||||
|
# a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||||
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||||
|
# License for the specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
"""
|
||||||
|
Python2/Python3 compatibility layer for OpenStack
|
||||||
|
"""
|
||||||
|
|
||||||
|
import six
|
||||||
|
|
||||||
|
if six.PY3:
|
||||||
|
# python3
|
||||||
|
import urllib.parse
|
||||||
|
|
||||||
|
urlencode = urllib.parse.urlencode
|
||||||
|
urljoin = urllib.parse.urljoin
|
||||||
|
quote = urllib.parse.quote
|
||||||
|
parse_qsl = urllib.parse.parse_qsl
|
||||||
|
unquote = urllib.parse.unquote
|
||||||
|
urlparse = urllib.parse.urlparse
|
||||||
|
urlsplit = urllib.parse.urlsplit
|
||||||
|
urlunsplit = urllib.parse.urlunsplit
|
||||||
|
else:
|
||||||
|
# python2
|
||||||
|
import urllib
|
||||||
|
import urlparse
|
||||||
|
|
||||||
|
urlencode = urllib.urlencode
|
||||||
|
quote = urllib.quote
|
||||||
|
unquote = urllib.unquote
|
||||||
|
|
||||||
|
parse = urlparse
|
||||||
|
parse_qsl = parse.parse_qsl
|
||||||
|
urljoin = parse.urljoin
|
||||||
|
urlparse = parse.urlparse
|
||||||
|
urlsplit = parse.urlsplit
|
||||||
|
urlunsplit = parse.urlunsplit
|
||||||
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
# The list of modules to copy from openstack-common
|
# The list of modules to copy from openstack-common
|
||||||
modules=importutils
|
modules=importutils
|
||||||
|
module=py3kcompat
|
||||||
|
|
||||||
# The base module to hold the copy of openstack.common
|
# The base module to hold the copy of openstack.common
|
||||||
base=heatclient
|
base=heatclient
|
||||||
|
|||||||
Reference in New Issue
Block a user