Hello,
I’m trying to remove jinja delimiter used in when condition.
My condition tests whether partition exists on disk drive. I use variable to assign which drive to test
vars:
raw_disk: ‘sdb’
task:
- include: lvm.yml
when: ansible_devices.{{ raw_disk }}.partitions|length == 0
with {{ raw_disk }} I receive [WARNING]: when statements should not include jinja2 templating delimiters such as {{ }} or {% %}.
What should be the correct condition so the variable can be included ansible facts
task:
- include: lvm.yml
when: ansible_devices.{{ raw_disk }}.partitions|length == 0
The shortcut a.b.c.d notation doesn't let you distinguish between literals
and variables. Try the more Pythonic
when: ansible_devices[raw_disk]['partitions']|length == 0
and see if that does the trick.
-Josh (jbs@care.com)
(apologies for the automatic corporate disclaimer that follows)
This email is intended for the person(s) to whom it is addressed and may contain information that is PRIVILEGED or CONFIDENTIAL. Any unauthorized use, distribution, copying, or disclosure by any person other than the addressee(s) is strictly prohibited. If you have received this email in error, please notify the sender immediately by return email and delete the message and any attachments from your system.
Josh, thank you for the hint. Work as expected.