diff options
| author | Joffrey F <joffrey@docker.com> | 2018-04-25 16:30:24 -0700 |
|---|---|---|
| committer | Joffrey F <joffrey@docker.com> | 2018-04-25 16:30:24 -0700 |
| commit | 827bd98d074d3a60882fc21886912d5b84d17f3b (patch) | |
| tree | 07d7e7a14228eac9229f17eaa7a987cbe7b9d31d | |
| parent | c6c45d9c455f975163a9a3197511e2f9ef9d28ab (diff) | |
| parent | ae8f77737c164d2474681f839c43f51400b9e119 (diff) | |
| download | docker-py-827bd98d074d3a60882fc21886912d5b84d17f3b.tar.gz | |
Merge branch 'master' of github.com:docker/docker-py
| -rw-r--r-- | docker/api/config.py | 8 | ||||
| -rw-r--r-- | docker/api/container.py | 12 | ||||
| -rw-r--r-- | tests/integration/api_container_test.py | 9 | ||||
| -rw-r--r-- | tests/unit/api_container_test.py | 4 |
4 files changed, 23 insertions, 10 deletions
diff --git a/docker/api/config.py b/docker/api/config.py index b46b09c..767bef2 100644 --- a/docker/api/config.py +++ b/docker/api/config.py @@ -6,7 +6,7 @@ from .. import utils class ConfigApiMixin(object): - @utils.minimum_version('1.25') + @utils.minimum_version('1.30') def create_config(self, name, data, labels=None): """ Create a config @@ -35,7 +35,7 @@ class ConfigApiMixin(object): self._post_json(url, data=body), True ) - @utils.minimum_version('1.25') + @utils.minimum_version('1.30') @utils.check_resource('id') def inspect_config(self, id): """ @@ -53,7 +53,7 @@ class ConfigApiMixin(object): url = self._url('/configs/{0}', id) return self._result(self._get(url), True) - @utils.minimum_version('1.25') + @utils.minimum_version('1.30') @utils.check_resource('id') def remove_config(self, id): """ @@ -73,7 +73,7 @@ class ConfigApiMixin(object): self._raise_for_status(res) return True - @utils.minimum_version('1.25') + @utils.minimum_version('1.30') def configs(self, filters=None): """ List configs diff --git a/docker/api/container.py b/docker/api/container.py index cb97b79..05676f1 100644 --- a/docker/api/container.py +++ b/docker/api/container.py @@ -1018,7 +1018,10 @@ class ContainerApiMixin(object): """ params = {'t': timeout} url = self._url("/containers/{0}/restart", container) - res = self._post(url, params=params) + conn_timeout = self.timeout + if conn_timeout is not None: + conn_timeout += timeout + res = self._post(url, params=params, timeout=conn_timeout) self._raise_for_status(res) @utils.check_resource('container') @@ -1107,9 +1110,10 @@ class ContainerApiMixin(object): else: params = {'t': timeout} url = self._url("/containers/{0}/stop", container) - - res = self._post(url, params=params, - timeout=(timeout + (self.timeout or 0))) + conn_timeout = self.timeout + if conn_timeout is not None: + conn_timeout += timeout + res = self._post(url, params=params, timeout=conn_timeout) self._raise_for_status(res) @utils.check_resource('container') diff --git a/tests/integration/api_container_test.py b/tests/integration/api_container_test.py index e212518..afd439f 100644 --- a/tests/integration/api_container_test.py +++ b/tests/integration/api_container_test.py @@ -1165,6 +1165,15 @@ class RestartContainerTest(BaseAPIIntegrationTest): assert info2['State']['Running'] is True self.client.kill(id) + def test_restart_with_low_timeout(self): + container = self.client.create_container(BUSYBOX, ['sleep', '9999']) + self.client.start(container) + self.client.timeout = 1 + self.client.restart(container, timeout=3) + self.client.timeout = None + self.client.restart(container, timeout=3) + self.client.kill(container) + def test_restart_with_dict_instead_of_id(self): container = self.client.create_container(BUSYBOX, ['sleep', '9999']) assert 'Id' in container diff --git a/tests/unit/api_container_test.py b/tests/unit/api_container_test.py index c33f129..a7e183c 100644 --- a/tests/unit/api_container_test.py +++ b/tests/unit/api_container_test.py @@ -1335,7 +1335,7 @@ class ContainerTest(BaseAPIClientTest): 'POST', url_prefix + 'containers/3cc2351ab11b/restart', params={'t': 2}, - timeout=DEFAULT_TIMEOUT_SECONDS + timeout=(DEFAULT_TIMEOUT_SECONDS + 2) ) def test_restart_container_with_dict_instead_of_id(self): @@ -1345,7 +1345,7 @@ class ContainerTest(BaseAPIClientTest): 'POST', url_prefix + 'containers/3cc2351ab11b/restart', params={'t': 2}, - timeout=DEFAULT_TIMEOUT_SECONDS + timeout=(DEFAULT_TIMEOUT_SECONDS + 2) ) def test_remove_container(self): |
