{"id":13792014,"url":"https://github.com/vapor-ware/netbox-virtual-circuit-plugin","last_synced_at":"2025-04-14T16:33:50.209Z","repository":{"id":47631990,"uuid":"261046046","full_name":"vapor-ware/netbox-virtual-circuit-plugin","owner":"vapor-ware","description":"A plugin for NetBox that supports Virtual Circuit management","archived":false,"fork":false,"pushed_at":"2022-02-08T16:24:28.000Z","size":1091,"stargazers_count":59,"open_issues_count":10,"forks_count":19,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-04-09T18:10:29.425Z","etag":null,"topics":["netbox","netbox-plugin"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vapor-ware.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-05-04T00:14:53.000Z","updated_at":"2025-03-06T13:59:15.000Z","dependencies_parsed_at":"2022-09-02T23:50:47.561Z","dependency_job_id":null,"html_url":"https://github.com/vapor-ware/netbox-virtual-circuit-plugin","commit_stats":null,"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vapor-ware%2Fnetbox-virtual-circuit-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vapor-ware%2Fnetbox-virtual-circuit-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vapor-ware%2Fnetbox-virtual-circuit-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vapor-ware%2Fnetbox-virtual-circuit-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vapor-ware","download_url":"https://codeload.github.com/vapor-ware/netbox-virtual-circuit-plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248916634,"owners_count":21182845,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["netbox","netbox-plugin"],"created_at":"2024-08-03T22:01:06.982Z","updated_at":"2025-04-14T16:33:50.175Z","avatar_url":"https://github.com/vapor-ware.png","language":"Python","funding_links":[],"categories":["Archived"],"sub_categories":[],"readme":"# NetBox Virtual Circuit Plugin\n\nA plugin for [NetBox](https://github.com/netbox-community/netbox) that supports\nVirtual Circuit management.\n\n## Definitions\n\nA Virtual Circuit is a circuit created by routing two or more VLANs together.\n\nEach Virtual Circuit is identified by a name, a numeric ID (0-32767), along with\na context. Each Virtual Circuit must be assigned one of the following operational\nstatuses:\n- Pending Configuration\n- Configured\n- Pending Deletion\n- Configuration Error\n\nWhen a VLAN is assigned to a Virtual Circuit, it can not exist in another Virtual\nCircuit without first being removed.\n\n## Installing\n\nSince the plugin is published on\n[PyPI](https://pypi.org/project/netbox-virtual-circuit-plugin/), simply issue:\n```python\npip install netbox-virtual-circuit-plugin\n```\nto download and install it.\n\nTo enable to plugin, add the plugin's name to the `PLUGINS` list in\n`configuration.py` like so:\n```python\nPLUGINS = ['netbox_virtual_circuit_plugin'] # Note that the name here use underscore, not hyphen.\n```\n\nDon't forget to restart NetBox to load the new plugin.\n\nYou might also have to manually run the database migrations for Netbox to create the appropriate tables for virtual circuits.\n```bash\npython3 manage.py migrate\n```\n\nFor more information about installing plugins, refer to [NetBox's documentation.](https://netbox.readthedocs.io/en/stable/plugins/)\n\n## Compatibility\n\nBelow is a table describing the compatibility of various NetBox versions with NetBox Virtual Circuit Plugin versions.\n\n|                   | Netbox 2.8 | NetBox 2.9 | Netbox 2.10 | Netbox 2.11 | Netbox 3.0 | Netbox 3.1 |\n| ----------------- | ---------- | ---------- | ----------- | ----------- | ---------- | ---------- |\n| `1.0.x`           | ✓          | ✗          | ✗           | x           | x          | x          |\n| `1.1.x` to `1.5.x`| ✗          | ✓          | ✗           | x           | x          | x          |\n| `1.6.x`           | ✗          | ✗          | ✓           | x           | x          | x          |\n| `1.7.x`           | ✗          | ✗          | x           | ✓           | x          | x          |\n| `2.0.0`           | ✗          | ✗          | x           | ✓           | x          | ✓          |\n\n## Using\n\nOnce the plugin is installed correctly as instructed above, one can find the\n**Virtual Circuit** section under **Plugins** navigation tab via NetBox UI\nthat is ready to use with correct *admin* permission.\n\nAs for REST API use cases, the 2 group endpoints are exposed at:\n- `/api/plugins/virtual-circuit/virtual-circuits`\n- `/api/plugins/virtual-circuit/vlans`\n\nWhile the former one is for creating/retrieving/modifying/deleting Virtual\nCircuits, the later one is for assigning and managing Virtual-Circuit-to-VLAN\nconnections. For more information, refer to `/api/docs` as it also conforms\nto Swagger Specification for hosted visual documentations.\n\n## Developing\n\nPlugins are essentially self-contained Django apps which integrate with NetBox\nto provide custom functionality. For more information, see [NetBox\ndocumentation](https://netbox.readthedocs.io/en/stable/plugins/development/).\n\nTo help setup the development environment, it comes with a CLI helper\nbased on `Makefile`, including the following commands:\n```\nchangelog        Generate a changelog file from GitHub Issue Tracker\nclean            Clean up build artifacts\ndeploy           Run a local development deployment of the plugin with NetBox\ndocker           Build a local docker image\ngithub-tag       Create and push a tag with the current version\nhelp             Print usage information\nmigrate          Run makemigrations in Django and produce a migration file locally\nrelease          Package and distribute the current release to PyPI\ntest             Run unit tests\nversion          Print the version\n```\n\nThat said, one can simply build and run a local development image of the plugin\nwith NetBox with a single line:\n```\nmake build \u0026\u0026 make deploy\n```\n\nThe application will be available after a few minutes at\n`http://0.0.0.0:8000/`. The default credentials are:\n- Username: **admin**\n- Password: **admin**\n- API Token: **0123456789abcdef0123456789abcdef01234567**\n\nBelow are several screenshots of the UI:\n\n![Navigation view](docs/images/1_navigation.png)\n\n![Add a Virtual Circuit](docs/images/2_add.png)\n\n![List all Virtual Circuits](docs/images/3_list.png)\n\n![Assign a VLAN to a Virtual Circuit](docs/images/4_assign_vlan.png)\n\n![Virtual Circuit Single View (2 VLANs assigned)](docs/images/5_assigned_vlans.png)\n\n![List of all connections](docs/images/6_connections.png)\n\n## Contributing\n\nIf you experience a bug, would like to ask a question, or request a feature,\nopen a new issue and provide as much context as possible. All contributions,\nquestions, and feedback are welcomed and appreciated.\n\n## License\n\nNetBox Virtual Circuit Plugin is licensed under GPLv3. See [LICENSE](LICENSE)\nfor more info.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvapor-ware%2Fnetbox-virtual-circuit-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvapor-ware%2Fnetbox-virtual-circuit-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvapor-ware%2Fnetbox-virtual-circuit-plugin/lists"}