# How to make my dynamic varaible more readable?

**URL:** <https://forum.ansible.com/t/how-to-make-my-dynamic-varaible-more-readable/28603>\
**Category:** Ansible Project\
**Created:** [September 19, 2018, 8:58am UTC](https://forum.ansible.com/t/how-to-make-my-dynamic-varaible-more-readable/28603 "2018-09-19T08:58:50Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Julien](https://avatars.discourse-cdn.com/v4/letter/j/71e660/32.png) [@Julien](https://forum.ansible.com/u/Julien)\
**Post date:** [September 19, 2018, 8:58am UTC](https://forum.ansible.com/t/how-to-make-my-dynamic-varaible-more-readable/28603/1 "2018-09-19T08:58:50Z")

</div>

Hello everyone,

Today i have this dynamic variable:

grp\_name: “{%if (environment\_true == “someinfo”) and (dialog\_vm\_role|lower) != (‘someinfo’)%}IM-A-Group{%elif (dialog\_vm\_role|lower) == (‘bdd’) and (environment\_true != “someinfo”)%}IM-A-Group{%elif (dialog\_vm\_role|lower) == (‘someinfo’) and (environment\_true == “someinfo”)%}IM-A-Group; {{ cmd\_grp }}IM-A-Group{%endif%}”

It is very long and if i need to modify it later i will be lost in all these conditions,

My question is: Is this possible to clarify and make the variable more readable?  
If yes could you help me with the synthax?

Thank you,  
Julien.

---

<div class="post-metadata">

**Author:** ![Kai\_Stian\_Olstad](https://avatars.discourse-cdn.com/v4/letter/k/e19adc/32.png) [@Kai\_Stian\_Olstad](https://forum.ansible.com/u/Kai_Stian_Olstad)\
**Post date:** [September 19, 2018, 11:10am UTC](https://forum.ansible.com/t/how-to-make-my-dynamic-varaible-more-readable/28603/2 "2018-09-19T11:10:11Z")

</div>

You can use multiline YAML

grp\_name: \>  
&nbsp;&nbsp;&nbsp;{% if (environment\_true == "someinfo") and (dialog\_vm\_role|lower) != ('someinfo') %}  
&nbsp;&nbsp;&nbsp;IM-A-Group  
&nbsp;&nbsp;&nbsp;{% elif (dialog\_vm\_role|lower) == ('bdd') and (environment\_true != "someinfo")%}  
&nbsp;&nbsp;&nbsp;IM-A-Group  
&nbsp;&nbsp;&nbsp;{% elif (dialog\_vm\_role|lower) == ('someinfo') and (environment\_true == "someinfo") %}  
&nbsp;&nbsp;&nbsp;IM-A-Group; {{ cmd\_grp }}IM-A-Group  
&nbsp;&nbsp;&nbsp;{% endif %}

You might get a new line at the end but that can be mitigated with {%- and/or -%} [1] in the correct places.

[1] [http://jinja.pocoo.org/docs/2.10/templates/#whitespace-control](http://jinja.pocoo.org/docs/2.10/templates/#whitespace-control)

---

<div class="post-metadata">

**Author:** ![Julien](https://avatars.discourse-cdn.com/v4/letter/j/71e660/32.png) [@Julien](https://forum.ansible.com/u/Julien)\
**Post date:** [September 19, 2018, 12:23pm UTC](https://forum.ansible.com/t/how-to-make-my-dynamic-varaible-more-readable/28603/3 "2018-09-19T12:23:21Z")

</div>

Thanks you a lot for your help,

Best Regards,  
Julien.

---

<div class="post-metadata">

**Author:** ![Julien](https://avatars.discourse-cdn.com/v4/letter/j/71e660/32.png) [@Julien](https://forum.ansible.com/u/Julien)\
**Post date:** [September 19, 2018, 12:52pm UTC](https://forum.ansible.com/t/how-to-make-my-dynamic-varaible-more-readable/28603/4 "2018-09-19T12:52:30Z")

</div>

If someone looking for to eliminate whitespaces, here’s the synthax:

grp\_name: \>  
{% if (First == ‘Hello 1’) and (Second == ‘Hello 3’) **-** %}  
IM-A-Group1  
{% **-** elif (First == ‘Hello 3’) and (Second == ‘Hello 2’) **-** %}  
IM-A-Group2  
{%- elif (First == ‘Hello 1’) and (Second == ‘Hello 2’) -%}  
IM-A-Group1 and IM-A-Group2  
{%- endif %}

All is clear and working for me now 🙂
