Flexible Network documentation
A Python library / cli-tool to achieve advanced network automation scenarios with few lines of code
Get started now View it on GitHub
Before reading the features you need to know that the network devices are “dump”, they don’t detect errors (Just return outputs despite if it has an error or not), which limits the flexibility when using Python to automate them.
Features
- Ability to detect errors when executing commands on network devices
- When executing commands you get output similar to what you get when executing commands on Linux machines
- Which gives you the power to use Python conditionals when automating network devices.
- Multi-Vendor
- Use a unified way to automate different types of devices from different vendors [ Suppoerted vendors ]
Backup config, with different storage options including
local storage
&S3
(any S3 compatable object storage) [supported backup storage]- Integrations with different external APIs that gives more flexibility & efficiency to your scripts [Supported integrations]
FAQs
Why the execution time of a command takes around 0.6 ms ?
It takes much less than that, But we wait for a half a second before getting the result of a command from a device so that we’re sure that we got the full output of the command
Why to use Flexible-Network while we can use Ansible for Network automation ?
Ansible and Flexible-Network have different ways of work
- Ansible requires you to use Modules for the vendor you want to automate, and just running commands with ansible will not give you any fancy feature (no error detection).
- Flexible-Network focuses on powering the network automation with Python, allows you to make productive network automation scripts with simple python code.
- Use the same automation method for different types of vendors
- Just use the commands you use for automation ! (no need different Modules syntax)
- Focues on Network automation simplicy and productivity, See supported backup storage … Supported integrations … Usage