mirror of https://github.com/docker/docker-py.git
Fix Unix adapter bug with newer versions of requests
The select_proxy utility in requests errors out when the provided URL doesn't have a hostname, like is the case when using a UNIX socket. Since proxies are an irrelevant notion in the case of UNIX sockets anyway, we simply return the path URL directly. Signed-off-by: Joffrey F <joffrey@docker.com>
This commit is contained in:
parent
fad509b3bd
commit
326049c8bb
|
|
@ -73,12 +73,20 @@ class UnixAdapter(requests.adapters.HTTPAdapter):
|
||||||
if pool:
|
if pool:
|
||||||
return pool
|
return pool
|
||||||
|
|
||||||
pool = UnixHTTPConnectionPool(url,
|
pool = UnixHTTPConnectionPool(
|
||||||
self.socket_path,
|
url, self.socket_path, self.timeout
|
||||||
self.timeout)
|
)
|
||||||
self.pools[url] = pool
|
self.pools[url] = pool
|
||||||
|
|
||||||
return pool
|
return pool
|
||||||
|
|
||||||
|
def request_url(self, request, proxies):
|
||||||
|
# The select_proxy utility in requests errors out when the provided URL
|
||||||
|
# doesn't have a hostname, like is the case when using a UNIX socket.
|
||||||
|
# Since proxies are an irrelevant notion in the case of UNIX sockets
|
||||||
|
# anyway, we simply return the path URL directly.
|
||||||
|
# See also: https://github.com/docker/docker-py/issues/811
|
||||||
|
return request.path_url
|
||||||
|
|
||||||
def close(self):
|
def close(self):
|
||||||
self.pools.clear()
|
self.pools.clear()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue