Browse Source

Fix parsing of docker build output in docker_helper (#6067)

Matthew McGarvey 4 years ago
parent
commit
6c89a67aac
1 changed files with 5 additions and 7 deletions
  1. 5 7
      toolset/utils/docker_helper.py

+ 5 - 7
toolset/utils/docker_helper.py

@@ -44,16 +44,14 @@ class DockerHelper:
                     forcerm=True,
                     forcerm=True,
                     timeout=3600,
                     timeout=3600,
                     pull=True,
                     pull=True,
-                    buildargs=buildargs
+                    buildargs=buildargs,
+                    decode=True
                 )
                 )
                 buffer = ""
                 buffer = ""
                 for token in output:
                 for token in output:
-                    if token.startswith('{"stream":'):
-                        token = json.loads(token)
-                        token = token[token.keys()[0]].encode('utf-8')
-                        buffer += token
-                    elif token.startswith('{"errorDetail":'):
-                        token = json.loads(token)
+                    if 'stream' in token:
+                        buffer += token[token.keys()[0]].encode('utf-8')
+                    elif 'errorDetail' in token:
                         raise Exception(token['errorDetail']['message'])
                         raise Exception(token['errorDetail']['message'])
                     while "\n" in buffer:
                     while "\n" in buffer:
                         index = buffer.index("\n")
                         index = buffer.index("\n")