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,):