mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
Make run_command() work when we get byte str with non-ascii characters (instead of unicode type like we were expecting)
Fix and test. Fixes #10536
This commit is contained in:
parent
c024057e97
commit
aaa25eb75c
2 changed files with 15 additions and 1 deletions
|
@ -1457,7 +1457,12 @@ class AnsibleModule(object):
|
||||||
# in reporting later, which strips out things like
|
# in reporting later, which strips out things like
|
||||||
# passwords from the args list
|
# passwords from the args list
|
||||||
if isinstance(args, basestring):
|
if isinstance(args, basestring):
|
||||||
to_clean_args = shlex.split(args.encode('utf-8'))
|
if isinstance(args, unicode):
|
||||||
|
b_args = args.encode('utf-8')
|
||||||
|
else:
|
||||||
|
b_args = args
|
||||||
|
to_clean_args = shlex.split(b_args)
|
||||||
|
del b_args
|
||||||
else:
|
else:
|
||||||
to_clean_args = args
|
to_clean_args = args
|
||||||
|
|
||||||
|
|
|
@ -41,6 +41,15 @@
|
||||||
- name: 'A task with unicode host vars'
|
- name: 'A task with unicode host vars'
|
||||||
debug: var=unicode_host_var
|
debug: var=unicode_host_var
|
||||||
|
|
||||||
|
- name: 'A task with unicode shell parameters'
|
||||||
|
shell: echo '¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö ×'
|
||||||
|
register: output
|
||||||
|
|
||||||
|
- name: 'Assert that the unicode was echoed'
|
||||||
|
assert:
|
||||||
|
that:
|
||||||
|
- "'¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö ×' in output.stdout_lines"
|
||||||
|
|
||||||
- name: 'A play for hosts in group: ĪīĬĭ'
|
- name: 'A play for hosts in group: ĪīĬĭ'
|
||||||
hosts: 'ĪīĬĭ'
|
hosts: 'ĪīĬĭ'
|
||||||
gather_facts: true
|
gather_facts: true
|
||||||
|
|
Loading…
Reference in a new issue