Fix https stack trace on python 3.4 client
When using the client with python 3.4 and no ssl compression the following stack trace ocurrs: TypeError: startswith first arg must be bytes or a tuple of bytes, not str Closes-bug: 1442883 Related-bug: 1357430 Change-Id: I8e28f0bb1f3e866f11851247ce31470ca8c2af4f
This commit is contained in:
@@ -158,7 +158,9 @@ class HTTPSAdapter(adapters.HTTPAdapter):
|
|||||||
# NOTE(flaper87): Make sure the url is encoded, otherwise
|
# NOTE(flaper87): Make sure the url is encoded, otherwise
|
||||||
# python's standard httplib will fail with a TypeError.
|
# python's standard httplib will fail with a TypeError.
|
||||||
url = super(HTTPSAdapter, self).request_url(request, proxies)
|
url = super(HTTPSAdapter, self).request_url(request, proxies)
|
||||||
return encodeutils.safe_encode(url)
|
if six.PY2:
|
||||||
|
url = encodeutils.safe_encode(url)
|
||||||
|
return url
|
||||||
|
|
||||||
def _create_glance_httpsconnectionpool(self, url):
|
def _create_glance_httpsconnectionpool(self, url):
|
||||||
kw = self.poolmanager.connection_kw
|
kw = self.poolmanager.connection_kw
|
||||||
|
@@ -84,11 +84,6 @@ class TestHTTPSVerifyCert(testtools.TestCase):
|
|||||||
server_thread.daemon = True
|
server_thread.daemon = True
|
||||||
server_thread.start()
|
server_thread.start()
|
||||||
|
|
||||||
def _skip_python3(self):
|
|
||||||
if six.PY3:
|
|
||||||
msg = ("Skipping: python3 for now. Requires bugfix.")
|
|
||||||
self.skipTest(msg)
|
|
||||||
|
|
||||||
def test_v1_requests_cert_verification(self):
|
def test_v1_requests_cert_verification(self):
|
||||||
"""v1 regression test for bug 115260."""
|
"""v1 regression test for bug 115260."""
|
||||||
port = self.port
|
port = self.port
|
||||||
@@ -108,7 +103,6 @@ class TestHTTPSVerifyCert(testtools.TestCase):
|
|||||||
|
|
||||||
def test_v1_requests_cert_verification_no_compression(self):
|
def test_v1_requests_cert_verification_no_compression(self):
|
||||||
"""v1 regression test for bug 115260."""
|
"""v1 regression test for bug 115260."""
|
||||||
self._skip_python3()
|
|
||||||
port = self.port
|
port = self.port
|
||||||
url = 'https://0.0.0.0:%d' % port
|
url = 'https://0.0.0.0:%d' % port
|
||||||
|
|
||||||
@@ -143,7 +137,6 @@ class TestHTTPSVerifyCert(testtools.TestCase):
|
|||||||
|
|
||||||
def test_v2_requests_cert_verification_no_compression(self):
|
def test_v2_requests_cert_verification_no_compression(self):
|
||||||
"""v2 regression test for bug 115260."""
|
"""v2 regression test for bug 115260."""
|
||||||
self._skip_python3()
|
|
||||||
port = self.port
|
port = self.port
|
||||||
url = 'https://0.0.0.0:%d' % port
|
url = 'https://0.0.0.0:%d' % port
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user