optiz0r / ansible-multicast-graph

Visualises the multicast trees for a single IPv4 group address using information scraped from NX-OS, EOS and IOS devices using ansible, ntc-ansible and TextFSM
15 stars 6 forks source link

JunOS support #1

Open tiagoasousa opened 6 years ago

tiagoasousa commented 6 years ago

What are the tasks/vars required for JunOS support? thanks

optiz0r commented 6 years ago

At the very minimum, adding a "junos" entry to the hosts type map in vars/ntc.yml. If you're very lucky, ntc-templates would support all the textfsm commands called by the tasks\*.yml ansible tasks for junos and would return all the same data.

If ntc-templates is missing a command for junos, or the command doesn't return the right output and needs to be modified, then add an override task into tasks\junos\*.yml which points at the local textfsm template in ntc-templates folder, and update the ntc-templates\index file to reference it.

I don't currently have any junos switches to test with, but that might change over the next few months.

tiagoasousa commented 6 years ago

Thanks for the reply! If ntc does not have the templates, what data (command outputs) do you require to build the graph? just to accelerate my search/tests.

optiz0r commented 6 years ago

So apologies, this isn't doc'd anywhere, the answers lie only in the code. The short answer is look at the files in ntc-templates/ and make sure any new TextFSM templates you write expose the same variables as you see in the nxos/eos templates there. The slightly longer answer is that I don't use all variables from all commands; it's filter_plugins/report.py that reads the data so if some of the variables aren't exposed by the junos commands and you want to know if you can skip them, you'd have to read this code to be sure.