summaryrefslogtreecommitdiff
path: root/docker/api/image.py
diff options
context:
space:
mode:
authorJoffrey F <joffrey@docker.com>2018-02-13 15:17:03 -0800
committerJoffrey F <joffrey@docker.com>2018-02-14 16:07:19 -0800
commit581ccc9f7e8e189248054268c98561ca775bd3d7 (patch)
tree682c25e7e624ecf6933a918b869f990950798d2f /docker/api/image.py
parent9e75609aec497361068bd0f57d5cc24065621106 (diff)
downloaddocker-py-1352-data_stream_control.tar.gz
Add chunk_size parameter to data downloading methods (export, get_archive, save)1352-data_stream_control
Signed-off-by: Joffrey F <joffrey@docker.com>
Diffstat (limited to 'docker/api/image.py')
-rw-r--r--docker/api/image.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/docker/api/image.py b/docker/api/image.py
index fa832a3..3ebca32 100644
--- a/docker/api/image.py
+++ b/docker/api/image.py
@@ -4,6 +4,7 @@ import os
import six
from .. import auth, errors, utils
+from ..constants import DEFAULT_DATA_CHUNK_SIZE
log = logging.getLogger(__name__)
@@ -11,12 +12,15 @@ log = logging.getLogger(__name__)
class ImageApiMixin(object):
@utils.check_resource('image')
- def get_image(self, image):
+ def get_image(self, image, chunk_size=DEFAULT_DATA_CHUNK_SIZE):
"""
Get a tarball of an image. Similar to the ``docker save`` command.
Args:
image (str): Image name to get
+ chunk_size (int): The number of bytes returned by each iteration
+ of the generator. If ``None``, data will be streamed as it is
+ received. Default: 2 MB
Returns:
(generator): A stream of raw archive data.
@@ -34,7 +38,7 @@ class ImageApiMixin(object):
>>> f.close()
"""
res = self._get(self._url("/images/{0}/get", image), stream=True)
- return self._stream_raw_result(res)
+ return self._stream_raw_result(res, chunk_size, False)
@utils.check_resource('image')
def history(self, image):