python-netbox-network-importer
Port variant v11
Summary Tool to import network into Netbox (3.11)
Package version 1.1.4
Homepage https://gitlab.cesnet.cz/701/done/netbox_network_importer
Keywords python
Maintainer Python Automaton
License Not yet specified
Other variants v12
Ravenports Buildsheet | History
Ravensource Port Directory | History
Last modified 09 OCT 2023, 04:40:21 UTC
Port created 07 JAN 2023, 04:18:24 UTC
Subpackage Descriptions
single # Netbox Network Importer Tool to analyze and synchronize an existing network with a Netbox (SOT). The main use cases for the network importer: - Import an existing network into a Netbox - ~~Check the differences between the running network and the Netbox~~ --- ## Install 1. Clone repository - `git clone git@gitlab.cesnet.cz:701/done/netbox_network_importer.git` 2. Go into the repository - `cd netbox_network_importer ` 3. Create `virtualenv` - `python3 -m venv venv` 3. Activate it - `source venv/bin/activate` 3. Install the tool - `pip install .` --- ## Pre-requisite To operate, the Netbox Network Importer is dependent on the following items: - Access to Netbox API - Access to Network Devices via SSH - Created Custom Field on Netbox ```json { "display": "Ignore Importer", "content_types": [ "dcim.interface", ], "type": { "value": "boolean", "label": "Boolean (true/false)" }, "object_type": null, "data_type": "boolean", "name": "ignore_importer", "label": "Ignore Importer", "description": "Will be ignored when processed by Network Importer", "required": true, "filter_logic": { "value": "exact", "label": "Exact" }, "default": false, "weight": 100, } ``` --- ## Inventory A device inventory must be available in NetBox. To be able to connect to the device the following information needs to be defined : - Primary ip address - Platform (must be a one of the following ['iosxr', 'ios', 'iosxe']) --- ## Configuration file The information to connect to NetBox must be provided via the configuration file. The configuration file below present standard options that can be provided to control the behavior of the Netbox Network Importer. Netbox Network Importer try to find the configuration file at: - `/home//.config/netbox_network_importer/config.yml` - `/etc/netbox_network_importer/config.yml` - Or you can set path to configuratin file like: - `netbox_network_importer --config path_to_dir_with_config/ synchronize` ``` --- netbox: NETBOX_API_TOKEN: "API_TOKEN" NETBOX_INSTANCE_URL: "https://netbox.done-test.cesnet.cz/" NETBOX_GRAPHQL_URL: "https://netbox.done-test.cesnet.cz/graphql/" tacacs: TACACS_USERNAME: "username" TACACS_PASSWORD: "password" config: LOG_DIR: "path_where_output.log_will_be_stored" LOG_LEVEL: "DEBUG" OUTPUT_DIR: "output_folder_where_results_will_be_stored" ``` --- ## Execute The Netbox Network Importer runs only in apply mode. - ~~In check mode, no modification will be made to the SOT, the differences will be printed on the screen~~ - In apply mode, the NETBOX will be updated with: - interfaces - IPs - vlans - LAGs ### Apply Mode The Netbox Network Importer will attempt to create/update or delete all elements in the Netbox that do not match what has been observed in the
Configuration Switches (platform-specific settings discarded)
PY311 ON Build using Python 3.11 PY312 OFF Build using Python 3.12
Package Dependencies by Type
Build (only) python-setuptools:single:v11
autoselect-python:single:standard
Build and Runtime python-click:single:v11
python-pynetbox:single:v11
python-python-slugify:single:v11
python-appdirs:single:v11
python-PyYAML:single:v11
python-python-dotenv:single:v11
python-netutils:single:v11
python-nornir:single:v11
python-nornir-netbox:single:v11
python-nornir-utils:single:v11
python-nornir-rich:single:v11
python-deepdiff:single:v11
python-napalm:single:v11
python-ncclient:single:v11
python-loguru:single:v11
python-dictdiffer:single:v11
python-json2html:single:v11
python-jsonpickle:single:v11
python-pytest-runner:single:v11
python311:single:standard
Download groups
main mirror://PYPI/n/netbox-network-importer
Distribution File Information
7bc3ca23b2ec7325c8bf83e0ee145927a2fbc4e1de8ea79bfbe5b4edcd8f9515 25719 netbox_network_importer-1.1.4.tar.gz
Ports that require python-netbox-network-importer:v11
No other ports depend on this one.