Skip to content

Commit 1eef700

Browse files
authored
Merge pull request #1634 from grahamlyons/readtimeout_calling_container_stop
Ensure default timeout is used by API Client
2 parents be0a15a + ff993dd commit 1eef700

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

docker/client.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from .api.client import APIClient
2+
from .constants import DEFAULT_TIMEOUT_SECONDS
23
from .models.containers import ContainerCollection
34
from .models.images import ImageCollection
45
from .models.networks import NetworkCollection
@@ -73,7 +74,7 @@ def from_env(cls, **kwargs):
7374
.. _`SSL version`:
7475
https://docs.python.org/3.5/library/ssl.html#ssl.PROTOCOL_TLSv1
7576
"""
76-
timeout = kwargs.pop('timeout', None)
77+
timeout = kwargs.pop('timeout', DEFAULT_TIMEOUT_SECONDS)
7778
version = kwargs.pop('version', None)
7879
return cls(timeout=timeout, version=version,
7980
**kwargs_from_env(**kwargs))

tests/unit/client_test.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
import datetime
22
import docker
33
from docker.utils import kwargs_from_env
4+
from docker.constants import (
5+
DEFAULT_DOCKER_API_VERSION, DEFAULT_TIMEOUT_SECONDS
6+
)
47
import os
58
import unittest
69

@@ -96,3 +99,13 @@ def test_from_env_with_version(self):
9699
client = docker.from_env(version='2.32')
97100
self.assertEqual(client.api.base_url, "https://192.168.59.103:2376")
98101
self.assertEqual(client.api._version, '2.32')
102+
103+
def test_from_env_without_version_uses_default(self):
104+
client = docker.from_env()
105+
106+
self.assertEqual(client.api._version, DEFAULT_DOCKER_API_VERSION)
107+
108+
def test_from_env_without_timeout_uses_default(self):
109+
client = docker.from_env()
110+
111+
self.assertEqual(client.api.timeout, DEFAULT_TIMEOUT_SECONDS)

0 commit comments

Comments
 (0)