Hi Team,

The standard way to access is - 
ansible_facts['device_links']['uuids']['xvdb'][0] . It works on existing 
rhel 7 machine but it fails there. Also if the syntax is wrong it should 
have failed at xvda2 line , the very first line of jinja2 template. WHy it 
failed at second line ? That's strange . What should be the correct way to 
extract uuid that works in jinja2 template.

Regards
Sachin Kumar

On Thursday, May 18, 2023 at 11:24:48 AM UTC+5:30 Dick Visser wrote:

> On Thu, 18 May 2023 at 03:14, Sac Isilia <[email protected]> wrote:
>
>> Hi Team,
>>
>> Below is the jinja template that I wrote that works fine on existing RHEL 
>> 7 machine .
>>
>> ```
>> UUID={{ 
>> hostvars['localhost']['ansible_facts']['device_links']['uuids']['xvda2'][0] 
>> }}    /  {{ ansible_facts['mounts'][0].fstype }}  defaults 0 0
>>
>
>
>
>> UUID_home={{ 
>> hostvars['localhost']['ansible_facts']['device_links']['uuids']['xvdb'][0] 
>>  }}   
>>
>
>
>
>  /home  {{ ansible_facts['mounts'][0].fstype }}  defaults 0 0
>> UUID_var={{ 
>> hostvars['localhost']['ansible_facts']['device_links']['uuids']['xvdc'][0] 
>>  }}    /var  {{ ansible_facts['mounts'][0].fstype }}  defaults 0 0
>> UUID_swap={{ 
>> hostvars['localhost']['ansible_facts']['device_links']['uuids']['xvdd'][0] 
>> }}   swap  swap  defaults 0 0
>> ```
>>
>> It works fine on existing test RHEL 7 machine but it fails when I am 
>> trying to run this template in our Jenkins job with below error.
>>
>> ```
>> An exception occurred during task execution. To see the full traceback, 
>> use -vvv. The error was: AnsibleUndefinedVariable: 'dict object' has no 
>> attribute 'xvdb'
>> ```
>>
>> I tried running ansible localhost -m setup and the above paths actually 
>> exist and xvdb entry is also there. My main doubt is the playbook parsed 
>> xvda2 line but fails at xvdb. Why? Below is the relevant output of ansible 
>> setup command.
>>
>> ```
>>
>
>
> \"ansible_device_links\": {", 
>>
>
> This is different from what you have in the template:
>
> hostvars['localhost']['ansible_facts']['device_links']
>
> Also are you sure this "Jenkins" is targeting the right host? That could 
> be the problem. 
>
>
>
>
>>     "            \"ids\": {}, ", 
>>        "            \"labels\": {}, ", 
>>        "            \"masters\": {}, ", 
>>        \"uuids\": {", 
>>           \"xvda2\": [", 
>>                  \"87be522b-2b75-4150-879d-4ee109559f7e\"", 
>>      ], ", 
>>            \"xvdb\": [", 
>>                 \"da750c25-cc98-4c2a-a5fe-24bbf42c210e\"", 
>>      "                ], ", 
>>      "      \"xvdc\": [", 
>>      "                    \"c2d5f1dc-5840-40bf-9a54-bb8fb215fbec\"", 
>>      "                ], ", 
>>      "        \"xvdd\": [", 
>>      "                    \"3b78b0ff-cc18-49ff-80b4-f21ca0a1234e\"", 
>>     "                ]", 
>>      "            }", 
>>     "        }, ", 
>> ```
>>
>> Please help me to resolve this 
>>
>> Regards
>> Sachin Kumar
>>
>> -- 
>> 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/52ff8092-399f-48ab-901a-228ce8c16c0cn%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/ansible-project/52ff8092-399f-48ab-901a-228ce8c16c0cn%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
> -- 
> Sent from Gmail Mobile
>

-- 
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/4e85a6ae-d96e-4afb-be36-52a0a92d6174n%40googlegroups.com.

Reply via email to