blob: b22415a45d8cc8580bf1cc18ae5b67f0cacc5bf2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
|
---
- name: 'A play with unicode: ¢ £ ¤ ¥'
hosts: localhost
connection: local
vars:
test_var: 'Ī ī Ĭ ĭ Į į İ ı IJ ij Ĵ ĵ Ķ ķ ĸ Ĺ ĺ Ļ ļ Ľ ľ Ŀ ŀ Ł ł Ń ń Ņ ņ Ň ň ʼn Ŋ ŋ Ō ō Ŏ ŏ Ő ő Œ'
hostnames:
- 'host-ϬϭϮϯϰ'
- 'host-fóöbär'
- 'host-ΙΚΛΜΝΞ'
- 'host-στυφχψ'
- 'host-ϬϭϮϯϰϱ'
tasks:
- name: 'A task name with unicode: è é ê ë'
debug: msg='hi there'
- name: 'A task with unicode parameters'
debug: var=test_var
# € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ “ ” • – — ˜ ™ š › œ ž Ÿ ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ®'
- name: 'A task using with_items containing unicode'
debug: msg='{{item}}'
with_items:
- '¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö ×'
- 'Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ Ā'
- 'ā Ă ă Ą ą Ć ć Ĉ ĉ Ċ ċ Č č Ď ď Đ đ Ē ē Ĕ ĕ Ė ė Ę ę Ě ě Ĝ ĝ Ğ ğ Ġ ġ Ģ ģ Ĥ ĥ Ħ ħ Ĩ ĩ'
- add_host:
name: '{{item}}'
groups: 'ĪīĬĭ'
ansible_ssh_host: 127.0.0.1
ansible_connection: local
with_items: "{{ hostnames }}"
- name: 'A task with unicode extra vars'
debug: var=extra_var
- name: 'A task with unicode host vars'
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: Run raw with non-ascii options
raw: "/bin/echo Zażółć gęślą jaźń"
register: results
- name: Check that raw output the right thing
assert:
that:
- "'Zażółć gęślą jaźń' in results.stdout_lines"
- name: Run a script with non-ascii options and environment
script: unicode-test-script --option "Zażółć gęślą jaźń"
environment:
option: Zażółć
register: results
- name: Check that script output includes the nonascii arguments and environment values
assert:
that:
- "'--option Zażółć gęślą jaźń' in results.stdout_lines"
- "'Zażółć' in results.stdout_lines"
- name: Ping with non-ascii environment variable and option
ping:
data: "Zażółć gęślą jaźń"
environment:
option: Zażółć
register: results
- name: Check that ping with non-ascii data was correct
assert:
that:
- "'Zażółć gęślą jaźń' == results.ping"
- name: Command that echos a non-ascii env var
command: "echo $option"
environment:
option: Zażółć
register: results
- name: Check that a non-ascii env var was passed to the command module
assert:
that:
- "'Zażółć' in results.stdout_lines"
- name: Clean a temp directory
file:
path: /var/tmp/ansible_test_unicode_get_put
state: absent
- name: Create a temp directory
file:
path: /var/tmp/ansible_test_unicode_get_put
state: directory
- name: Create a file with a non-ascii filename
file:
path: /var/tmp/ansible_test_unicode_get_put/Zażółć
state: touch
delegate_to: localhost
- name: Put with unicode filename
copy:
src: /var/tmp/ansible_test_unicode_get_put/Zażółć
dest: /var/tmp/ansible_test_unicode_get_put/Zażółć2
- name: Fetch with unicode filename
fetch:
src: /var/tmp/ansible_test_unicode_get_put/Zażółć2
dest: /var/tmp/ansible_test_unicode_get_put/
- name: Clean a temp directory
file:
path: /var/tmp/ansible_test_unicode_get_put
state: absent
- name: 'A play for hosts in group: ĪīĬĭ'
hosts: 'ĪīĬĭ'
gather_facts: true
tasks:
- debug: msg='Unicode is a good thing ™'
- debug: msg=АБВГД
# Run this test by adding to the CLI: -e start_at_task=True --start-at-task '*¶'
- name: 'Show that we can skip to unicode named tasks'
hosts: localhost
gather_facts: false
vars:
flag: 'original'
start_at_task: False
tasks:
- name: 'Override flag var'
set_fact: flag='new'
- name: 'A unicode task at the end of the playbook: ¶'
assert:
that:
- 'flag == "original"'
when: start_at_task|bool
|