Thanks Dennis for your help. Once I changed the mode to "644" as suggested
by Jean-Yves, the playbook worked fine.

On Sun, Apr 5, 2020 at 6:02 PM Dennis McCarthy <[email protected]> wrote:

> try deleting:  /etc/ansible/facts.d
>
> and let ansible recreate it. If you still get the same issue (delete
> /etc/ansible/facts.d again) and try running ansible either as root or with
> sudo just to rule out permissions.
>
>
>
> On Sun, 5 Apr 2020 at 07:22, Rajesh <[email protected]> wrote:
>
>> Tried that but still not working. Thanks for your help.
>>
>> On Saturday, April 4, 2020 at 7:35:12 PM UTC+11, Jean-Yves LENHOF wrote:
>>>
>>> The first time you run it, files are not yet in place, so you probably
>>> need to regather fact, no ? You can do it with setup:
>>>
>>> Regards,
>>>
>>>
>>> Le 04/04/2020 à 10:18, Rajesh a écrit :
>>>
>>> Could someone help why I am still getting the below error?
>>>
>>> Thanks,
>>> Rajesh
>>>
>>> On Thursday, April 2, 2020 at 5:38:27 PM UTC+11, Rajesh wrote:
>>>>
>>>> Thanks for that. I have modified the playbook as you suggested. The
>>>> playbook creates the custom file, but still giving the below error.
>>>>
>>>> [automation@workstation plays]$ cat facts.yml
>>>> - name: Create a custom facts file
>>>>   hosts: database
>>>>   become: true
>>>>   become_user: root
>>>>   gather_facts: true
>>>>   tasks:
>>>>     - name: Create a custom facts directory
>>>>       file:
>>>>         path: /etc/ansible/facts.d
>>>>         state: directory
>>>>
>>>>     - name: Create a custom facts
>>>>       template:
>>>>         src: templates/custom.fact.j2
>>>>         dest: /etc/ansible/facts.d/custom.fact
>>>>         mode: 0755
>>>>
>>>>     - name: Output our newly created static fact
>>>>       debug:
>>>>         msg: "{{ ansible_local.custom.sample_exam }}"
>>>> [automation@workstation plays]$
>>>>
>>>> [automation@workstation plays]$ ansible-playbook facts.yml
>>>>
>>>> PLAY [Create a custom facts file]
>>>> **********************************************************************************************************************************************************************************************************
>>>>
>>>> TASK [Gathering Facts]
>>>> *********************************************************************************************************************************************************************************************************************
>>>> ok: [ansible5]
>>>>
>>>> TASK [Create a custom facts directory]
>>>> *****************************************************************************************************************************************************************************************************
>>>> ok: [ansible5]
>>>>
>>>> TASK [Create a custom facts]
>>>> ***************************************************************************************************************************************************************************************************************
>>>> changed: [ansible5]
>>>>
>>>> TASK [Output our newly created static fact]
>>>> ************************************************************************************************************************************************************************************************
>>>> fatal: [ansible5]: FAILED! => {"msg": "The task includes an option with
>>>> an undefined variable. The error was: 'dict object' has no attribute
>>>> 'custom'\n\nThe error appears to be in '/home/automation/plays/facts.yml':
>>>> line 18, column 7, but may\nbe elsewhere in the file depending on the exact
>>>> syntax problem.\n\nThe offending line appears to be:\n\n\n    - name:
>>>> Output our newly created static fact\n      ^ here\n"}
>>>>
>>>> PLAY RECAP
>>>> *********************************************************************************************************************************************************************************************************************************
>>>> ansible5                   : ok=3    changed=1    unreachable=0
>>>> failed=1    skipped=0    rescued=0    ignored=0
>>>>
>>>> [automation@workstation plays]$
>>>>
>>>>
>>>> On Thursday, April 2, 2020 at 4:46:20 PM UTC+11, Stefan Hornburg
>>>> (Racke) wrote:
>>>>>
>>>>> On 4/2/20 4:16 AM, Rajesh wrote:
>>>>> > Hi All,
>>>>> >
>>>>> > I created a custom facts playbook. But I am getting an error when I
>>>>> run. I could not figure out why?
>>>>>
>>>>> Hello Rajesh,
>>>>>
>>>>> if /etc/ansible/facts.d/custom.fact is supposed to be a script it
>>>>> needs executable permissions:
>>>>>
>>>>> - name: Create a custom facts
>>>>>   template:
>>>>>     src: templates/custom.fact.j2
>>>>>     dest: /etc/ansible/facts.d/custom.fact
>>>>>     mode: 0755
>>>>>
>>>>> Regards
>>>>>          Racke
>>>>>
>>>>> >
>>>>> > *_Playbook_*
>>>>> >
>>>>> > - name: Create a custom facts file
>>>>> >   hosts: database
>>>>> >   become: true
>>>>> >   become_user: root
>>>>> >   gather_facts: true
>>>>> >   tasks:
>>>>> >     - name: Create a custom facts directory
>>>>> >       file:
>>>>> >         path: /etc/ansible/facts.d
>>>>> >         state: directory
>>>>> >
>>>>> >     - name: Create a custom facts
>>>>> >       template:
>>>>> >         src: templates/custom.fact.j2
>>>>> >         dest: /etc/ansible/facts.d/custom.fact
>>>>> >
>>>>> >     - name: Print ansible_local
>>>>> >       debug: var=ansible_local
>>>>> >     - name: Print the custom facts value
>>>>> >       debug:
>>>>> >         msg: "{{ ansible_local.custom.sample_exam }}"
>>>>> >
>>>>> > _*Template file*_
>>>>> >
>>>>> > [automation@workstation plays]$ cat templates/server_list.j2
>>>>> > {% for host in groups['all'] %}
>>>>> > {{ hostvars[host]['ansible_facts']['fqdn'] }}
>>>>> > {% endfor %}
>>>>> >
>>>>> > [automation@workstation plays]$
>>>>> >
>>>>> > [automation@workstation plays]$ ansible-playbook facts.yml
>>>>> >
>>>>> > PLAY [Create a custom facts file]
>>>>> >
>>>>> **********************************************************************************************************************************************************************************************************
>>>>>
>>>>> >
>>>>> > TASK [Gathering Facts]
>>>>> >
>>>>> *********************************************************************************************************************************************************************************************************************
>>>>>
>>>>> > fatal: [ansible5]: FAILED! => {"ansible_facts": {}, "changed":
>>>>> false, "failed_modules": {"setup": {"ansible_facts":
>>>>> > {"discovered_interpreter_python": "/usr/libexec/platform-python"},
>>>>> "cmd": "/etc/ansible/facts.d/custom.fact", "failed":
>>>>> > true, "invocation": {"module_args": {"fact_path":
>>>>> "/etc/ansible/facts.d", "filter": "*", "gather_subset": ["all"],
>>>>> > "gather_timeout": 10}}, "msg": "[Errno 8] Exec format error:
>>>>> b'/etc/ansible/facts.d/custom.fact'", "rc": 8}}, "msg":
>>>>> > "The following modules failed to execute: setup\n"}
>>>>> >
>>>>> > PLAY RECAP
>>>>> >
>>>>> *********************************************************************************************************************************************************************************************************************************
>>>>>
>>>>> > ansible5                   : ok=0    changed=0    unreachable=0
>>>>> failed=1    skipped=0    rescued=0    ignored=0
>>>>> >
>>>>> > [automation@workstation plays]$
>>>>> >
>>>>> > --
>>>>> > 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] <mailto:
>>>>> [email protected]>.
>>>>> > To view this discussion on the web visit
>>>>> >
>>>>> https://groups.google.com/d/msgid/ansible-project/5b9d27a2-cc4e-40b1-9429-284adf50524d%40googlegroups.com
>>>>> > <
>>>>> https://groups.google.com/d/msgid/ansible-project/5b9d27a2-cc4e-40b1-9429-284adf50524d%40googlegroups.com?utm_medium=email&utm_source=footer>.
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Ecommerce and Linux consulting + Perl and web application programming.
>>>>> Debian and Sympa administration. Provisioning with Ansible.
>>>>>
>>>>> --
>>> 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/01148e2a-5846-447b-857a-4dcecdad6e63%40googlegroups.com
>>> <https://groups.google.com/d/msgid/ansible-project/01148e2a-5846-447b-857a-4dcecdad6e63%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>> --
>> 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/5000fa54-3f67-4d99-8f2c-6d1a33cb6b58%40googlegroups.com
>> <https://groups.google.com/d/msgid/ansible-project/5000fa54-3f67-4d99-8f2c-6d1a33cb6b58%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
> --
> 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/CAA%3Df3eLBc-yE5FSSMoOdMXWQVGwPUB_aT9u93Fb8p8_NyGuKBw%40mail.gmail.com
> <https://groups.google.com/d/msgid/ansible-project/CAA%3Df3eLBc-yE5FSSMoOdMXWQVGwPUB_aT9u93Fb8p8_NyGuKBw%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
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/CAGt19NvxCYhyL-0QOO_esuM0%2BaxFggVNoLwrBzscaHHAevWXww%40mail.gmail.com.

Reply via email to