summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron Cowdin <aaron.cowdin@gmail.com>2017-04-28 14:36:43 -0700
committerAaron Cowdin <aaron.cowdin@gmail.com>2017-04-28 15:18:59 -0700
commit59ba27068b524bdbfe60dd74762e28acd709caea (patch)
tree077a586cf2a45c856f3bb25b1bc3aa90ffd36a84
parent72b9b723594354cafd0f83c24aa0401659d89de8 (diff)
downloaddocker-py-59ba27068b524bdbfe60dd74762e28acd709caea.tar.gz
Handle multiple success messages during image building.
Signed-off-by: Aaron Cowdin <aaron.cowdin@gmail.com>
-rw-r--r--docker/models/images.py15
1 files changed, 8 insertions, 7 deletions
diff --git a/docker/models/images.py b/docker/models/images.py
index 3fd3dc1..cb9c80d 100644
--- a/docker/models/images.py
+++ b/docker/models/images.py
@@ -169,14 +169,15 @@ class ImageCollection(Collection):
events = list(json_stream(resp))
if not events:
return BuildError('Unknown')
- event = events[-1]
- if 'stream' in event:
- match = re.search(r'(Successfully built |sha256:)([0-9a-f]+)',
- event.get('stream', ''))
- if match:
- image_id = match.group(2)
- return self.get(image_id)
+ for event in events:
+ if 'stream' in event:
+ match = re.search(r'(Successfully built |sha256:)([0-9a-f]+)',
+ event.get('stream', ''))
+ if match:
+ image_id = match.group(2)
+ return self.get(image_id)
+ event = events[-1]
raise BuildError(event.get('error') or event)
def get(self, name):