diff --git a/changelogs/fragments/vault-read-error.yml b/changelogs/fragments/vault-read-error.yml new file mode 100644 index 0000000000..e6f9c6e35c --- /dev/null +++ b/changelogs/fragments/vault-read-error.yml @@ -0,0 +1,2 @@ +bugfixes: +- vault - Improve error messages encountered when reading vault files (https://github.com/ansible/ansible/issues/49252) diff --git a/lib/ansible/parsing/vault/__init__.py b/lib/ansible/parsing/vault/__init__.py index b6967edde8..6022b5aa58 100644 --- a/lib/ansible/parsing/vault/__init__.py +++ b/lib/ansible/parsing/vault/__init__.py @@ -1030,7 +1030,10 @@ class VaultEditor: with open(filename, "rb") as fh: data = fh.read() except Exception as e: - raise AnsibleError(to_native(e)) + msg = to_native(e) + if not msg: + msg = repr(e) + raise AnsibleError('Unable to read source file (%s): %s' % (to_native(filename), msg)) return data