Hi Hawkesworth,
I have followed your instruction and it's working so my inventories are now 
working like I wanted. My end goal is to run show_vlan.yml role on the 
requested inventory but im getting syntax problem on my include_role module.
(ansible now fetching the right hosts from the right inventory just like I 
wanted so the inventory problem is behind us)

About the role configuration,
This is my playbook:
---
  - name: Playing VLAN Configuration
    hosts: POC_ENV
    connection: local
    vars:
      ansible_ssh_private_key_file: /home/ansible/.ssh/id_rsa
      ansible_ssh_common_args: 
-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null
      ansible_user: ansible
      vlan_id: 999
      vlan_name: TEST_VLAN_TEST
    tasks:
    - include_role:
        name: show_vlan

# Final result = run show_vlan on requested predefined group


This is the role that is located on /etc/ansible/roles/tasks/show_vlan.yml:
---
  - name: Show VLAN
    ios_command:
        commands: show vlan brief
        register: show_vlan

  - debug: var=show_vlan.stdout_lines
Basically, all it does its the execute the show vlan brief command on the 
switch and register it in show_vlan variable and supposed to print it to my 
screen with stdout_lines.


As you can see in the error below it is failing for some reason, seems that 
its failing to find the role show_vlan that I have requested:

[image: Ansible add vlans errors.PNG]


What am I missing?




Thanks in advance!



מאת J Hawkesworth:
>
> I suggest doing this:
>
> mkdir /etc/ansible/inventory
> # copy POC_ENV.yml, avaya.yml, nexus.yml to /etc/ansible/inventory
> changing your ansible.cfg so that it looks for inventory in 
>
> /etc/ansible/inventory
>
> IIRC that will load all the inventory files in that directory
>
> I have not tried this using .yaml format inventory file but it works fine 
> using ini format so I suspect it will work ok using .yaml format inventory.
>
> If you run 
> ansible-playbook -vvvvvv a_test_playbook.yml 
>
> the first few lines will show you where it is looking for inventory and 
> what plugins it is using to parse and load your inventory.
>
> Hope this helps,
>
> Jon
>
> On Tuesday, December 31, 2019 at 10:13:25 AM UTC, Yehuda Pinhas wrote:
>>
>> Hi J Hawkesworth,
>> Can you explain exactly in which file do I need to add what code?
>>
>> Considering I have the inventories POC_ENV.yml, avaya.yml, nexus.yml for 
>> example. What file do I need to edit? the ansible.cfg and the inventory 
>> file? can you provide the exact solution?
>>
>> currently my ansible.cfg file directs to /etc/ansible/inventory.yml
>>
>> and my inventory.yml is empty (which is the master inventory as i 
>> understand and from it I am supposed to direct ansible to each one of the 
>> inventories mentioned above such as POC_ENV.yml,etc.)
>>
>>
>>
>>
>>
>>  J Hawkesworth:
>>>
>>> I suggest using a directory that contains the files you need to build up 
>>> your inventory.  You can also use symlinks I think
>>> This is described in the documentation in the section starting 
>>> '*Aggregating 
>>> inventory sources with a directory' *here:
>>>
>>> https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html#using-multiple-inventory-sources
>>>
>>> I think this might be a simpler way to achieve what you want rather than 
>>> using add_host and including lots of inventory files directly into your 
>>> playbook.
>>>
>>> It does depend on not having hostnames that clash of course.
>>>
>>> Hope this helps,
>>>
>>> Jon
>>>
>>>>
>>>>

-- 
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/efed4aa7-01eb-4b0e-be00-5aa3d74090a6%40googlegroups.com.

Reply via email to