Kaydet (Commit) 8316fa4e authored tarafından Joffrey F's avatar Joffrey F

Merge pull request #555 from docker/client_side_trunc

Handle ID truncate on client side in containers list
...@@ -411,7 +411,7 @@ class Client(requests.Session): ...@@ -411,7 +411,7 @@ class Client(requests.Session):
return self._result(self._post_json(u, data=conf, params=params), return self._result(self._post_json(u, data=conf, params=params),
json=True) json=True)
def containers(self, quiet=False, all=False, trunc=True, latest=False, def containers(self, quiet=False, all=False, trunc=False, latest=False,
since=None, before=None, limit=-1, size=False, since=None, before=None, limit=-1, size=False,
filters=None): filters=None):
params = { params = {
...@@ -429,6 +429,9 @@ class Client(requests.Session): ...@@ -429,6 +429,9 @@ class Client(requests.Session):
if quiet: if quiet:
return [{'Id': x['Id']} for x in res] return [{'Id': x['Id']} for x in res]
if trunc:
for x in res:
x['Id'] = x['Id'][:12]
return res return res
def copy(self, container, resource): def copy(self, container, resource):
......
...@@ -1681,10 +1681,7 @@ class UnixconnTestCase(unittest.TestCase): ...@@ -1681,10 +1681,7 @@ class UnixconnTestCase(unittest.TestCase):
# REGRESSION TESTS # # REGRESSION TESTS #
#################### ####################
class TestRegressions(unittest.TestCase): class TestRegressions(BaseTestCase):
def setUp(self):
self.client = docker.Client(timeout=5, base_url=DEFAULT_BASE_URL)
def test_443(self): def test_443(self):
dfile = io.BytesIO() dfile = io.BytesIO()
with self.assertRaises(docker.errors.APIError) as exc: with self.assertRaises(docker.errors.APIError) as exc:
...@@ -1693,6 +1690,13 @@ class TestRegressions(unittest.TestCase): ...@@ -1693,6 +1690,13 @@ class TestRegressions(unittest.TestCase):
self.assertEqual(exc.exception.response.status_code, 500) self.assertEqual(exc.exception.response.status_code, 500)
dfile.close() dfile.close()
def test_542(self):
self.client.start(
self.client.create_container('busybox', ['true'])
)
result = self.client.containers(trunc=True)
self.assertEqual(len(result[0]['Id']), 12)
if __name__ == '__main__': if __name__ == '__main__':
c = docker.Client(base_url=DEFAULT_BASE_URL) c = docker.Client(base_url=DEFAULT_BASE_URL)
......
...@@ -312,7 +312,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -312,7 +312,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
'since': None, 'since': None,
'size': 0, 'size': 0,
'limit': -1, 'limit': -1,
'trunc_cmd': 1, 'trunc_cmd': 0,
'before': None 'before': None
}, },
timeout=docker.client.DEFAULT_TIMEOUT_SECONDS timeout=docker.client.DEFAULT_TIMEOUT_SECONDS
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment