diff --git a/lib/ansible/errors/__init__.py b/lib/ansible/errors/__init__.py index f46c4f34c9..c88f2bb864 100644 --- a/lib/ansible/errors/__init__.py +++ b/lib/ansible/errors/__init__.py @@ -19,11 +19,18 @@ from __future__ import (absolute_import, division, print_function) __metaclass__ = type -import os - from ansible.errors.yaml_strings import * from ansible.utils.unicode import to_unicode, to_bytes + +if str is bytes: + # Python 2 + to_str = to_bytes +else: + # Python 3 + to_str = to_unicode + + class AnsibleError(Exception): ''' This is the base class for all errors raised from Ansible code, @@ -49,7 +56,7 @@ class AnsibleError(Exception): if obj and isinstance(obj, AnsibleBaseYAMLObject): extended_error = self._get_extended_error() if extended_error: - self.message = 'ERROR! %s\n\n%s' % (message, to_bytes(extended_error)) + self.message = 'ERROR! %s\n\n%s' % (message, to_str(extended_error)) else: self.message = 'ERROR! %s' % message