Colorize statuses in parallel_execute output

'ok' displays in green
'error' displays in red

Signed-off-by: Evan Shaw <evan@vendhq.com>
This commit is contained in:
Evan Shaw 2017-02-26 19:19:38 +13:00
parent b0ba14cdb2
commit a507c7f720

View File

@ -11,6 +11,8 @@ from six.moves import _thread as thread
from six.moves.queue import Empty from six.moves.queue import Empty
from six.moves.queue import Queue from six.moves.queue import Queue
from compose.cli.colors import green
from compose.cli.colors import red
from compose.cli.signals import ShutdownException from compose.cli.signals import ShutdownException
from compose.errors import HealthCheckFailed from compose.errors import HealthCheckFailed
from compose.errors import NoHealthCheckConfigured from compose.errors import NoHealthCheckConfigured
@ -45,16 +47,16 @@ def parallel_execute(objects, func, get_name, msg, get_deps=None):
for obj, result, exception in events: for obj, result, exception in events:
if exception is None: if exception is None:
writer.write(get_name(obj), 'done') writer.write(get_name(obj), green('done'))
results.append(result) results.append(result)
elif isinstance(exception, APIError): elif isinstance(exception, APIError):
errors[get_name(obj)] = exception.explanation errors[get_name(obj)] = exception.explanation
writer.write(get_name(obj), 'error') writer.write(get_name(obj), red('error'))
elif isinstance(exception, (OperationFailedError, HealthCheckFailed, NoHealthCheckConfigured)): elif isinstance(exception, (OperationFailedError, HealthCheckFailed, NoHealthCheckConfigured)):
errors[get_name(obj)] = exception.msg errors[get_name(obj)] = exception.msg
writer.write(get_name(obj), 'error') writer.write(get_name(obj), red('error'))
elif isinstance(exception, UpstreamError): elif isinstance(exception, UpstreamError):
writer.write(get_name(obj), 'error') writer.write(get_name(obj), red('error'))
else: else:
errors[get_name(obj)] = exception errors[get_name(obj)] = exception
error_to_reraise = exception error_to_reraise = exception