diff --git a/changelogs/fragments/async_statys_pyx_compat_fix.yml b/changelogs/fragments/async_statys_pyx_compat_fix.yml new file mode 100644 index 00000000000..0e6b2b91966 --- /dev/null +++ b/changelogs/fragments/async_statys_pyx_compat_fix.yml @@ -0,0 +1,2 @@ +bugfixes: + - use to_text (py2/3 safe) instead of str for 'textualizing' intput in async_status diff --git a/lib/ansible/modules/utilities/logic/async_status.py b/lib/ansible/modules/utilities/logic/async_status.py index a22e3d20555..32dcdb23884 100644 --- a/lib/ansible/modules/utilities/logic/async_status.py +++ b/lib/ansible/modules/utilities/logic/async_status.py @@ -42,6 +42,7 @@ author: import json import os +from ansible.module_utils._text import to_native from ansible.module_utils.basic import AnsibleModule from ansible.module_utils.six import iteritems @@ -93,7 +94,7 @@ def main(): data['finished'] = 0 # Fix error: TypeError: exit_json() keywords must be strings - data = dict([(str(k), v) for k, v in iteritems(data)]) + data = dict([(to_native(k), v) for k, v in iteritems(data)]) module.exit_json(**data)