{"repo":"superloopnetwork/superloop","free":true,"listed":false,"github":"https://github.com/superloopnetwork/superloop","clone":"git clone https://github.com/superloopnetwork/superloop.git","description":"Superloop is a network automation framework, used to manage networks at scale. It's a framework that auto remediates based on templates and maintains config standardization across device platforms. As well, it comes equipped with various toolsets that assist Network Engineers with their day to day tasks.","language":"Python","stars":14,"topics":["superloop","cfgs","jinja2","cisco","juniper","f5","auditing","remediation","automation","pushing"],"license":null,"category":"workflow-automation","readme_excerpt":"superloop Inspired by the world's leading social media tech company (Facebook) for network automation, I have created my own version of the framework. Prerequisites 1. Python 3.6 or higher. 2. netmiko - A HUGE thanks and shout out to Kirk Byers for developing the library! 3. snmp helper.py - module written by Kirk Byers (https://github.com/ktbyers/pynet/blob/master/snmp/snmp helper.py). 4. ciscoconfparse - A library to help parse out Cisco (or similiar) CLI configs (https://pypi.org/project/ciscoconfparse/). 5. yaml - YAML is a human-readable data-serialization language (https://en.wikipedia.org/wiki/YAML). 6. libyaml-cpp-dev - C parser for yaml (xargs apt-get install /datacenter.jinja2 # all variables pertaining to datacenter/region specific will be stored in this file. environment.jinja2 maps to /superloop code/templates/datacenter/ /prod/environment.jinja2 # all variables pertaining to the different region and environment will be stored in this file. NEVER include any secrets (static) within any templates as they will be exposed in clear text and visible in version control. Instead we want to mask our secrets by storing them in hashicorp and calling them in this fashion: Mappings can be found here: Networking prod secrets in vault. Every time when a template is being rendered for output, superloop will authenticate with vault. If successful, it then queries the requested secret. The secret is returned to superloop and is then pushed to jinja for output. With this method, n","default_branch":null,"files":null,"tree":[],"storefront":"/r/superloopnetwork","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/superloopnetwork/superloop/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}