mirror of https://github.com/ansible/ansible.git
Prevent vars premature templating (#56117)
Avoid premature vars templating * added tests * avoid 'is template' warning in vars, since we want them for latter templatingpull/56881/head
parent
3095df099d
commit
1da47bfa8c
@ -0,0 +1,2 @@
|
||||
bugfixes:
|
||||
- we don't really need to template vars on definition as we do this on demand in templating.
|
||||
@ -0,0 +1 @@
|
||||
shippable/posix/group3
|
||||
@ -0,0 +1,12 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -eux
|
||||
|
||||
# this should succeed since we override the undefined variable
|
||||
ansible-playbook undefined.yml -i inventory -v "$@" -e '{"mytest": False}'
|
||||
|
||||
# this should still work, just show that var is undefined in debug
|
||||
ansible-playbook undefined.yml -i inventory -v "$@"
|
||||
|
||||
# this should work since we dont use the variable
|
||||
ansible-playbook undall.yml -i inventory -v "$@"
|
||||
@ -0,0 +1,6 @@
|
||||
- hosts: localhost
|
||||
gather_facts: false
|
||||
tasks:
|
||||
- debug:
|
||||
vars:
|
||||
mytest: '{{ und }}'
|
||||
@ -0,0 +1,13 @@
|
||||
- hosts: localhost
|
||||
gather_facts: false
|
||||
tasks:
|
||||
- name: show defined/undefined var
|
||||
debug: var=mytest
|
||||
vars:
|
||||
mytest: '{{ und }}'
|
||||
register: var_undefined
|
||||
|
||||
- name: ensure either mytest is defined or debug finds it to be undefined
|
||||
assert:
|
||||
that:
|
||||
- mytest is defined or 'VARIABLE IS NOT DEFINED!' in var_undefined['mytest']
|
||||
Loading…
Reference in New Issue