From 6216c9fc93cb29283f6eb6d15561762eeb2c7b2e Mon Sep 17 00:00:00 2001 From: Felix Fontein Date: Tue, 5 Apr 2022 20:53:03 +0200 Subject: [PATCH] Fix sanity test crash. --- changelogs/fragments/77465-ansible-test-compile-crash.yml | 2 ++ test/lib/ansible_test/_util/target/sanity/compile/compile.py | 4 ++++ 2 files changed, 6 insertions(+) create mode 100644 changelogs/fragments/77465-ansible-test-compile-crash.yml diff --git a/changelogs/fragments/77465-ansible-test-compile-crash.yml b/changelogs/fragments/77465-ansible-test-compile-crash.yml new file mode 100644 index 00000000000..795f908d873 --- /dev/null +++ b/changelogs/fragments/77465-ansible-test-compile-crash.yml @@ -0,0 +1,2 @@ +bugfixes: + - "ansible-test compile sanity test - do not crash if a column could not be determined for an error (https://github.com/ansible/ansible/pull/77465)." diff --git a/test/lib/ansible_test/_util/target/sanity/compile/compile.py b/test/lib/ansible_test/_util/target/sanity/compile/compile.py index e2302fc0e7d..7890a9b2aae 100644 --- a/test/lib/ansible_test/_util/target/sanity/compile/compile.py +++ b/test/lib/ansible_test/_util/target/sanity/compile/compile.py @@ -24,6 +24,10 @@ def main(): else: continue + # In some situations offset can be None. This can happen for syntax errors on Python 2.6 + # (__future__ import following after a regular import). + offset = offset or 0 + result = "%s:%d:%d: %s: %s" % (path, lineno, offset, extype.__name__, safe_message(message)) if sys.version_info <= (3,):