Package: netbox-virtual-circuit-plugin
NetBox Virtual Circuit PluginA plugin forNetBoxthat supports
Virtual Circuit management.DefinitionsA Virtual Circuit is a circuit created by routing two or more VLANs together.Each Virtual Circuit is identified by a name, a numeric ID (0-32767), along with
a context. Each Virtual Circuit must be assigned one of the following operational
statuses:Pending ConfigurationConfiguredPending DeletionConfiguration ErrorWhen a VLAN is assigned to a Virtual Circuit, it can not exist in another Virtual
Circuit without first being removed.InstallingSince the plugin is published onPyPI, simply issue:pipinstallnetbox-virtual-circuit-pluginto download and install it.To enable to plugin, add the plugin's name to thePLUGINSlist inconfiguration.pylike so:PLUGINS=['netbox_virtual_circuit_plugin']# Note that the name here use underscore, not hyphen.Don't forget to restart NetBox to load the new plugin.You might also have to manually run the database migrations for Netbox to create the appropriate tables for virtual circuits.python3manage.pymigrateFor more information about installing plugins, refer toNetBox's documentation.CompatibilityBelow is a table describing the compatibility of various NetBox versions with NetBox Virtual Circuit Plugin versions.Netbox 2.8NetBox 2.9Netbox 2.10Netbox 2.11Netbox 3.0Netbox 3.11.0.x✓✗✗xxx1.1.xto1.5.x✗✓✗xxx1.6.x✗✗✓xxx1.7.x✗✗x✓xx2.0.0✗✗x✓x✓UsingOnce the plugin is installed correctly as instructed above, one can find theVirtual Circuitsection underPluginsnavigation tab via NetBox UI
that is ready to use with correctadminpermission.As for REST API use cases, the 2 group endpoints are exposed at:/api/plugins/virtual-circuit/virtual-circuits/api/plugins/virtual-circuit/vlansWhile the former one is for creating/retrieving/modifying/deleting Virtual
Circuits, the later one is for assigning and managing Virtual-Circuit-to-VLAN
connections. For more information, refer to/api/docsas it also conforms
to Swagger Specification for hosted visual documentations.DevelopingPlugins are essentially self-contained Django apps which integrate with NetBox
to provide custom functionality. For more information, seeNetBox
documentation.To help setup the development environment, it comes with a CLI helper
based onMakefile, including the following commands:changelog        Generate a changelog file from GitHub Issue Tracker
clean            Clean up build artifacts
deploy           Run a local development deployment of the plugin with NetBox
docker           Build a local docker image
github-tag       Create and push a tag with the current version
help             Print usage information
migrate          Run makemigrations in Django and produce a migration file locally
release          Package and distribute the current release to PyPI
test             Run unit tests
version          Print the versionThat said, one can simply build and run a local development image of the plugin
with NetBox with a single line:make build && make deployThe application will be available after a few minutes athttp://0.0.0.0:8000/. The default credentials are:Username:adminPassword:adminAPI Token:0123456789abcdef0123456789abcdef01234567Below are several screenshots of the UI:ContributingIf you experience a bug, would like to ask a question, or request a feature,
open a new issue and provide as much context as possible. All contributions,
questions, and feedback are welcomed and appreciated.LicenseNetBox Virtual Circuit Plugin is licensed under GPLv3. SeeLICENSEfor more info.