You can’t resolve variables with names that contain variables themselves.
Instead, use a lookup:

https://docs.ansible.com/ansible/latest/plugins/lookup/vars.html

Also try to use the args: chdir option instead of doing &&, see
https://docs.ansible.com/ansible/latest/modules/shell_module.html



On Mon, 24 Feb 2020 at 19:18, Shifa Shaikh <[email protected]> wrote:

> I have a playbook where I load a variable file
>
> cat vars/BASE.yaml
>
>
> EXCLUDE_front: value1
> EXCLUDE_back: value2
>
>
> I run my test.yml playbook using this command:
>
> ansible-playbook test.yml -e Layer="back" -e base_folder="/tmp"
>
>
> - name: Load a variable file"
>   include_vars:
>     file: "vars/BASE.yaml"
>
> - name: Collect data
>   shell: "cd {{ base_folder }} && find . -type d \\( -name 'BACKUP' -o -name
> 'vars[EXCLUDE_{{ Layer }}]' \\) -prune -o -type f -exec cksum {} + | awk
> '{$1=\"\"}1'"
>   register: outputfiles
>
> I also tried
>
>   shell: "cd {{ base_folder }} && find . -type d \\( -name 'BACKUP' -o
> -name 'vars[EXCLUDE_ + Layer ]' \\) -prune -o -type f -exec cksum {} + |
> awk '{$1=\"\"}1'"
>
> and
>
>   shell: "cd {{ base_folder }} && find . -type d \\( -name 'BACKUP' -o
> -name 'vars[EXCLUDE_ ~ Layer ]' \\) -prune -o -type f -exec cksum {} + |
> awk '{$1=\"\"}1'"
>
> however,  instead of loading value1 or value2, I get the below nature of
> error:
>
> "The task includes an option with an undefined variable. The error was:
>> 'EXCLUDE_' is undefined\n\nT
>
>
> Can you please suggest what is wrong with my playbook?
>
> --
> You received this message because you are subscribed to the Google Groups
> "Ansible Project" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/f76a6376-0ac3-4724-9bb9-6fc54bd69610%40googlegroups.com
> <https://groups.google.com/d/msgid/ansible-project/f76a6376-0ac3-4724-9bb9-6fc54bd69610%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
-- 
Sent from a mobile device - please excuse the brevity, spelling and
punctuation.

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/CAL8fbwOiQArWXn2N4pc1vW-YmAZ09dNn3cN2yy_ZgWVbh6ieEw%40mail.gmail.com.

Reply via email to