This is a follow up to my CI/CD for networking presentation for Packet Pushers VDC 3; this time, instead of using Ansible, I am using "pure Python" (Nornir, NAPALM, Netmiko) to render configurations, create backups, push configurations, and test/validate configurations.
You can find the original Ansible version of this demo along with info on how to spin up the Vagrant environment and all that other good stuff here.
You can read about Nornir at the following links:
Currently the EOS config replace fails on the rollback tasks. AFAIK this is due to there being no "exit" statements after entering neighbor configuration of the BGP section. I plan to write a quick helper function to clean that so its not an issue but haven't done so yet.
Please feel free to open an issue if you've got any issues/questions. I will be messing around with this repo for a little while I suspect!