[stable-2.5] Compat fix for ansible-core-ci on Python 3.7.

(cherry picked from commit 5b133f3455)

Co-authored-by: Matt Clay <matt@mystile.com>
This commit is contained in:
Matt Clay 2019-04-09 23:08:31 -07:00
parent e24e5986f8
commit ab16969416

View file

@ -496,7 +496,14 @@ class AnsibleCoreCI(object):
elif 'errorMessage' in response_json:
message = response_json['errorMessage'].strip()
if 'stackTrace' in response_json:
trace = '\n'.join([x.rstrip() for x in traceback.format_list(response_json['stackTrace'])])
traceback_lines = response_json['stackTrace']
# AWS Lambda on Python 2.7 returns a list of tuples
# AWS Lambda on Python 3.7 returns a list of strings
if traceback_lines and isinstance(traceback_lines[0], list):
traceback_lines = traceback.format_list(traceback_lines)
trace = '\n'.join([x.rstrip() for x in traceback_lines])
stack_trace = ('\nTraceback (from remote server):\n%s' % trace)
else:
message = str(response_json)