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"})
Metadata
Release files for ipfabric_nornir 1.0.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ipfabric_nornir-1.0.5.tar.gz | 8.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ipfabric_nornir-1.0.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 18.1 kB
Release files / ipfabric_nornir-1.0.5.tar.gz
| Download URL | ipfabric_nornir-1.0.5.tar.gz |
|---|---|
| Size | 8.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
61b871906b9e2fd170159fe61e1d245a036af7597a810395ab5c9a470645b13a
|
|
BLAKE2b-256 checksum How to use checksums |
e499ef4491cfc0fd25c7174d8571279a32220d8f1ef421254cfe73e495760efe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
poetry/2.2.1 CPython/3.12.11 Linux/6.12.48+deb13-amd64
|
Release files / ipfabric_nornir-1.0.5-py3-none-any.whl
| Download URL | ipfabric_nornir-1.0.5-py3-none-any.whl |
|---|---|
| Size | 9.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b2f377bf06be3a3f80c0162374292b7c164daa66e5049df33a977ad567870755
|
|
BLAKE2b-256 checksum How to use checksums |
c7470cf3e7a5a05e8f17f856969db2f37f04ee94df9037c6bc619aab54b004e8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
poetry/2.2.1 CPython/3.12.11 Linux/6.12.48+deb13-amd64
|