Variable within Variable

Hey guys,

I have a variable {{ basket }} and it has a string for contents. The contents will change every time I run the playbook and I need a way to translate the contents of the basket, let’s say “apple” to another name, let’s say “JameslikesApples”. But if the contents were “banana” it would have a completely different translation like “IwentToSanFrancisco”.

I’ve made a dictionary declaring “apple: ‘JameslikesApples’” and on the next line: “banana: ‘IwentToSanFrancisco’”. I need to be able to reference “JameslikesApples” in a shell command and I just can’t see a way around it. I’ve tried {{ {{ basket }} }} but Ansible doesn’t accept the quadruple braces.

Any and all help is appreciated!

I've made a dictionary declaring "apple: 'JameslikesApples'" and on the
next line: "banana: 'IwentToSanFrancisco'". I need to be able to
reference "JameslikesApples" in a shell command and I just can't see a
way around it. I've tried {{ {{ basket }} }} but Ansible doesn't accept
the quadruple braces.

The double-braces tell Ansible to start parsing Jinja, so once you've done
that, doing it again doesn't do you any good.

What does your dictionary look like? If you had something like

  basket:
    apple: JameslikesApples
    banana: IwentToSanFrancisco

and then you somewhere set

  fruit: banana

(or 'fruit: apple') then I'd expect

  basket[fruit]

to do the right thing -- you'd change the value of fruit, and get the
right string from the basket.

                                      -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.

You can reference variables within variables.

e.g.

group_vars/all

`