From 9b8d8fcc9f4f191374f730b13fcb0ce18905864c Mon Sep 17 00:00:00 2001 From: Panagiotis Karalis Date: Tue, 17 Sep 2019 11:55:58 +0300 Subject: Fault fixing for cmd_exec util method When the 'dovetail run' command is assigned, the error "TypeError: must be str, not bytes" is appeared. Due to a different handling of strings in the Python3, this error is appeared during of command execution (i.e. exec_cmd method). Each piece of the string should be decoded, before it will be appended to the rest one. Signed-off-by: Panagiotis Karalis Change-Id: I65629f3f76cc3e44f3926a744d00791ef588d2aa --- dovetail/utils/dovetail_utils.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'dovetail/utils/dovetail_utils.py') diff --git a/dovetail/utils/dovetail_utils.py b/dovetail/utils/dovetail_utils.py index 9259b03f..306dacd1 100644 --- a/dovetail/utils/dovetail_utils.py +++ b/dovetail/utils/dovetail_utils.py @@ -60,8 +60,9 @@ def exec_cmd(cmd, logger=None, exit_on_error=False, info=False, count = 1 DEBUG = os.getenv('DEBUG') for line in iter(p.stdout.readline, b''): - exec_log(verbose, logger, line.strip(), level, True) - stdout += line + exec_log(verbose, logger, line.strip().decode('unicode-escape'), + level, True) + stdout += str(line) if progress_bar and (DEBUG is None or DEBUG.lower() != 'true'): show_progress_bar(count) count += 1 -- cgit 1.2.3-korg