We are seeing a small change to the output of “to_nice_yaml” and “to_yaml” when using ansible-core 2.12 versus 2.11.5 and older. The changes are only about escaping for wrapped multi-line strings.
If this in on purpose, please let me know how I can get the older ansible versions to produce the same output.
Thanks
Claus
Simple playbook:
- hosts: localhost
gather_facts: false
vars:
test_var: |
test line 1 which is very long so it wraps around during templating …
test line 2 which is indented
tasks: - debug:
msg: ‘{{ lookup(“template”,“test.j2”) }}’ - debug:
msg: ‘{{ lookup(“template”,“test.j2”) | from_yaml }}’ - debug:
msg: ‘{{ lookup(“template”,“test.j2”) | from_yaml | to_nice_yaml(indent=2, sort_keys=False) }}’
And very simple template:
test: |
{{ test_var | indent(2,false) }}
Output from 2.11.5:
TASK [debug] **********************************************************************************************************************************************************************************
tirsdag 09 november 2021 10:54:14 +0100 (0:00:00.013) 0:00:00.013 ****** ok: [localhost] => { “msg”: “test: |\n test line 1 which is very long so it wraps around during templating …\n test line 2 which is indented\n” } TASK [debug] ********************************************************************************************************************************************************************************** tirsdag 09 november 2021 10:54:14 +0100 (0:00:00.025) 0:00:00.039 ****** ok: [localhost] => { “msg”: { “test”: “test line 1 which is very long so it wraps around during templating …\n test line 2 which is indented\n” } } TASK [debug] ********************************************************************************************************************************************************************************** tirsdag 09 november 2021 10:54:14 +0100 (0:00:00.030) 0:00:00.069 ****** ok: [localhost] => { “msg”: “test: "test line 1 which is very long so it wraps around during templating …\n\\n \ test line 2 which is indented\n"\n” }
Output from 2.12.0:
TASK [debug] **********************************************************************************************************************************************************************************
tirsdag 09 november 2021 11:03:48 +0100 (0:00:00.014) 0:00:00.014 ******
ok: [localhost] => {
“msg”: “test: |\n test line 1 which is very long so it wraps around during templating …\n test line 2 which is indented\n”
}
TASK [debug] **********************************************************************************************************************************************************************************
tirsdag 09 november 2021 11:03:48 +0100 (0:00:00.028) 0:00:00.042 ******
ok: [localhost] => {
“msg”: {
“test”: “test line 1 which is very long so it wraps around during templating …\n test line 2 which is indented\n”
}
}
TASK [debug] **********************************************************************************************************************************************************************************
tirsdag 09 november 2021 11:03:48 +0100 (0:00:00.029) 0:00:00.072 ******
ok: [localhost] => {
“msg”: “test: "test line 1 which is very long so it wraps around during templating …\n\n \ test line 2 which is indented\n"\n”
}