From c698b4e3227b4767f042e435423fcc307d7f6d5c Mon Sep 17 00:00:00 2001 From: Stuart McLaren Date: Fri, 10 Apr 2015 14:25:28 +0000 Subject: Fix client when using no ssl compression Since the release of the 0.16.1 client, using the 'no ssl compression' option, whether on the command line, or via the library -- Nova does this by default -- a stack trace was generated. Closes-bug: 1442664 Related-bug: 1357430 Change-Id: I2b8ddcb0a7ae3cfccdfc20d3ba476f3b4f4ec32d --- glanceclient/common/https.py | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'glanceclient/common/https.py') diff --git a/glanceclient/common/https.py b/glanceclient/common/https.py index e3a4780..51f8f6d 100644 --- a/glanceclient/common/https.py +++ b/glanceclient/common/https.py @@ -22,8 +22,11 @@ from requests import adapters from requests import compat try: from requests.packages.urllib3 import connectionpool + from requests.packages.urllib3 import poolmanager except ImportError: from urllib3 import connectionpool + from urllib3 import poolmanager + from oslo_utils import encodeutils import six @@ -146,6 +149,10 @@ class HTTPSAdapter(adapters.HTTPAdapter): https pool by setting glanceclient's one. """ + def __init__(self, *args, **kwargs): + classes_by_scheme = poolmanager.pool_classes_by_scheme + classes_by_scheme["glance+https"] = HTTPSConnectionPool + super(HTTPSAdapter, self).__init__(*args, **kwargs) def request_url(self, request, proxies): # NOTE(flaper87): Make sure the url is encoded, otherwise -- cgit v1.2.1