IP Fabric Offical Plugin for nornir
Project description
ipfabric_nornir
IP Fabric
IP Fabric is a vendor-neutral network assurance platform that automates the holistic discovery, verification, visualization, and documentation of large-scale enterprise networks, reducing the associated costs and required resources whilst improving security and efficiency.
It supports your engineering and operations teams, underpinning migration and transformation projects. IP Fabric will revolutionize how you approach network visibility and assurance, security assurance, automation, multi-cloud networking, and trouble resolution.
Integrations or scripts should not be installed directly on the IP Fabric VM unless directly communicated from the IP Fabric Support or Solution Architect teams. Any action on the Command-Line Interface (CLI) using the root, osadmin, or autoboss account may cause irreversible, detrimental changes to the product and can render the system unusable.
Special Thanks
This project is an IP Fabric officially supported fork of nornir_ipfabric by routetonull. Thank you for your work!
Install
The recommended way to install ipfabric_nornir is via pip
pip install ipfabric_nornir
Requirements
An instance of IP Fabric is required to collect information.
Example usage
Setup
Using environment variables
Set environment vars to provide url and credentials to connect to the IP Fabric server
export IPF_URL=https://ipfabric.local
export IPF_TOKEN=myToken
# Or Username and Password
export IPF_USER=admin
export IPF_PASSWORD=mySecretPassword
Using .env file
The easiest way to use this package is with a .env file. You can copy the sample and edit it with your environment variables.
cp sample.env .env
This contains the following variables which can also be set as environment variables instead of a .env file.
IPF_URL="https://demo3.ipfabric.io"
IPF_TOKEN=TOKEN
IPF_VERIFY=true
Or if using Username/Password:
IPF_URL="https://demo3.ipfabric.io"
IPF_USERNAME=USER
IPF_PASSWORD=PASS
Running
from nornir import InitNornir
nr = InitNornir(inventory={"plugin": "IPFabricInventory"})
Using the InitNornir function
Init
from nornir import InitNornir
nr = InitNornir(
inventory={
"plugin": "IPFabricInventory",
"options": {
"base_url": "https://ipfabric.local",
"token": "Token", # or "username":"admin", "password":"mySecretPassword",
"verify": True,
"platform_map": "netmiko", # "netmiko" (Default), "napalm", or "genie",
"default": {"username": "device_username", "password": "device_password"},
},
},
)
Using the Nornir configuration file
File config.yaml
---
inventory:
plugin: IPFInventory
options:
base_url: "https://ipfabric.local"
token: "TOKEN"
# username: "admin"
# password: "mySecretPassword"
verify: true
platform_map: netmiko # "netmiko", "napalm", or "genie"
default:
username: 'device_username'
password: 'device_password'
Usage:
from nornir import InitNornir
nr = InitNornir(config_file="config.yaml", inventory={"plugin": "IPFabricInventory"})
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ipfabric_nornir-1.0.5.tar.gz.
File metadata
- Download URL: ipfabric_nornir-1.0.5.tar.gz
- Upload date:
- Size: 8.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: poetry/2.2.1 CPython/3.12.11 Linux/6.12.48+deb13-amd64
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
61b871906b9e2fd170159fe61e1d245a036af7597a810395ab5c9a470645b13a
|
|
| MD5 |
a730d4c04055be52506f3fcd6cb99af4
|
|
| BLAKE2b-256 |
e499ef4491cfc0fd25c7174d8571279a32220d8f1ef421254cfe73e495760efe
|
File details
Details for the file ipfabric_nornir-1.0.5-py3-none-any.whl.
File metadata
- Download URL: ipfabric_nornir-1.0.5-py3-none-any.whl
- Upload date:
- Size: 9.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: poetry/2.2.1 CPython/3.12.11 Linux/6.12.48+deb13-amd64
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b2f377bf06be3a3f80c0162374292b7c164daa66e5049df33a977ad567870755
|
|
| MD5 |
ebef679a61db0a5063cafee208fd8304
|
|
| BLAKE2b-256 |
c7470cf3e7a5a05e8f17f856969db2f37f04ee94df9037c6bc619aab54b004e8
|