A netbox plugin for managing multiple device group types by site
<a href="https://github.com/sapcc/netbox-device-groups/forks"><img src="https://img.shields.io/github/forks/sapcc/netbox-device-groups" alt="Forks Badge"/></a>
<a href="https://github.com/sapcc/netbox-device-groups/pulls"><img src="https://img.shields.io/github/issues-pr/sapcc/netbox-device-groups" alt="Pull Requests Badge"/></a>
<a href="https://github.com/sapcc/netbox-device-groups/issues"><img src="https://img.shields.io/github/issues/sapcc/netbox-device-groups" alt="Issues Badge"/></a>
<a href="https://github.com/sapcc/netbox-device-groups/graphs/contributors"><img alt="GitHub contributors" src="https://img.shields.io/github/contributors/sapcc/netbox-device-groups?color=2b9348"></a>
<a href="https://github.com/sapcc/netbox-device-groups/blob/master/LICENSE"><img src="https://img.shields.io/github/license/sapcc/netbox-device-groups?color=2b9348" alt="License Badge"/></a>
## Installing the Plugin in Netbox
### Prerequisites
- The plugin is compatible with Netbox 3.5.0 and higher.
- Databases supported: PostgreSQL
- Python supported : Python3 >= 3.10
### Install Guide
> NOTE: Plugins can be installed manually or using Python's `pip`. See the [netbox documentation](https://docs.netbox.dev/en/stable/plugins/) for more details. The pip package name for this plugin is [`netbox-device-groups`](https://pypi.org/project/netbox-device-groups/).
The plugin is available as a Python package via PyPI and can be installed with `pip`:
```shell
pip install netbox-device-groups
```
To ensure the device cluster plugin is automatically re-installed during future upgrades, create a file named `local_requirements.txt` (if not already existing) in the Netbox root directory (alongside `requirements.txt`) and list the `netbox_device_groups` package:
```shell
echo netbox-device-groups >> local_requirements.txt
```
Once installed, the plugin needs to be enabled in your Netbox configuration. The following block of code below shows the additional configuration required to be added to your `$NETBOX_ROOT/netbox/configuration.py` file:
- Append `"netbox_device_groups"` to the `PLUGINS` list.
- Append the `"netbox_device_groups"` dictionary to the `PLUGINS_CONFIG` dictionary and override any defaults.
```python
PLUGINS = [
"netbox_device_groups",
]
```
## Post Install Steps
Once the Netbox configuration is updated, run the post install steps from the _Netbox Home_ to run migrations and clear any cache:
```shell
# Apply any database migrations
python3 netbox/manage.py migrate
# Trace any missing cable paths (not typically needed)
python3 netbox/manage.py trace_paths --no-input
# Collect static files
python3 netbox/manage.py collectstatic --no-input
# Delete any stale content types
python3 netbox/manage.py remove_stale_contenttypes --no-input
# Rebuild the search cache (lazily)
python3 netbox/manage.py reindex --lazy
# Delete any expired user sessions
python3 netbox/manage.py clearsessions
# Clear the cache
python3 netbox/manage.py clearcache
```
Then restart the Netbox services:
```shell
sudo systemctl restart netbox netbox-rq
```
Raw data
{
"_id": null,
"home_page": "https://github.com/sapcc/netbox-device-groups",
"name": "netbox-device-groups",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.10,<4.0",
"maintainer_email": "",
"keywords": "Netbox,netbox,plugin",
"author": "Pat McLean",
"author_email": "patrick.mclean@sap.com",
"download_url": "https://files.pythonhosted.org/packages/41/c3/e33ecf8fede3c852c24e80be0ad40451a7d53cf1d3631a5600a9045e0d41/netbox_device_groups-0.1.1.tar.gz",
"platform": null,
"description": "\nA netbox plugin for managing multiple device group types by site\n\n<a href=\"https://github.com/sapcc/netbox-device-groups/forks\"><img src=\"https://img.shields.io/github/forks/sapcc/netbox-device-groups\" alt=\"Forks Badge\"/></a>\n<a href=\"https://github.com/sapcc/netbox-device-groups/pulls\"><img src=\"https://img.shields.io/github/issues-pr/sapcc/netbox-device-groups\" alt=\"Pull Requests Badge\"/></a>\n<a href=\"https://github.com/sapcc/netbox-device-groups/issues\"><img src=\"https://img.shields.io/github/issues/sapcc/netbox-device-groups\" alt=\"Issues Badge\"/></a>\n<a href=\"https://github.com/sapcc/netbox-device-groups/graphs/contributors\"><img alt=\"GitHub contributors\" src=\"https://img.shields.io/github/contributors/sapcc/netbox-device-groups?color=2b9348\"></a>\n<a href=\"https://github.com/sapcc/netbox-device-groups/blob/master/LICENSE\"><img src=\"https://img.shields.io/github/license/sapcc/netbox-device-groups?color=2b9348\" alt=\"License Badge\"/></a>\n\n## Installing the Plugin in Netbox\n\n### Prerequisites\n\n- The plugin is compatible with Netbox 3.5.0 and higher.\n- Databases supported: PostgreSQL\n- Python supported : Python3 >= 3.10\n\n### Install Guide\n\n> NOTE: Plugins can be installed manually or using Python's `pip`. See the [netbox documentation](https://docs.netbox.dev/en/stable/plugins/) for more details. The pip package name for this plugin is [`netbox-device-groups`](https://pypi.org/project/netbox-device-groups/).\n\nThe plugin is available as a Python package via PyPI and can be installed with `pip`:\n\n```shell\npip install netbox-device-groups\n```\n\nTo ensure the device cluster plugin is automatically re-installed during future upgrades, create a file named `local_requirements.txt` (if not already existing) in the Netbox root directory (alongside `requirements.txt`) and list the `netbox_device_groups` package:\n\n```shell\necho netbox-device-groups >> local_requirements.txt\n```\n\nOnce installed, the plugin needs to be enabled in your Netbox configuration. The following block of code below shows the additional configuration required to be added to your `$NETBOX_ROOT/netbox/configuration.py` file:\n\n- Append `\"netbox_device_groups\"` to the `PLUGINS` list.\n- Append the `\"netbox_device_groups\"` dictionary to the `PLUGINS_CONFIG` dictionary and override any defaults.\n\n```python\nPLUGINS = [\n \"netbox_device_groups\",\n]\n```\n\n## Post Install Steps\n\nOnce the Netbox configuration is updated, run the post install steps from the _Netbox Home_ to run migrations and clear any cache:\n\n```shell\n# Apply any database migrations\npython3 netbox/manage.py migrate\n# Trace any missing cable paths (not typically needed)\npython3 netbox/manage.py trace_paths --no-input\n# Collect static files\npython3 netbox/manage.py collectstatic --no-input\n# Delete any stale content types\npython3 netbox/manage.py remove_stale_contenttypes --no-input\n# Rebuild the search cache (lazily)\npython3 netbox/manage.py reindex --lazy\n# Delete any expired user sessions\npython3 netbox/manage.py clearsessions\n# Clear the cache\npython3 netbox/manage.py clearcache\n```\n\nThen restart the Netbox services:\n\n```shell\nsudo systemctl restart netbox netbox-rq\n```\n\n",
"bugtrack_url": null,
"license": "",
"summary": "A netbox plugin for managing multiple device group types",
"version": "0.1.1",
"project_urls": {
"Documentation": "https://sapcc.github.io/netbox-device-groups",
"Homepage": "https://github.com/sapcc/netbox-device-groups"
},
"split_keywords": [
"netbox",
"netbox",
"plugin"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2d761be3dddb628e6cdd55b840f721fa1123a422a2c882dc59e85c068a6f6793",
"md5": "1abc69ef7ae91b7064802afb4844d8c7",
"sha256": "cf4065c0849355998fa3d8a4db501da7525467bd3e6230087a8d8b1919bfdec2"
},
"downloads": -1,
"filename": "netbox_device_groups-0.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "1abc69ef7ae91b7064802afb4844d8c7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10,<4.0",
"size": 33025,
"upload_time": "2024-02-26T12:46:33",
"upload_time_iso_8601": "2024-02-26T12:46:33.162098Z",
"url": "https://files.pythonhosted.org/packages/2d/76/1be3dddb628e6cdd55b840f721fa1123a422a2c882dc59e85c068a6f6793/netbox_device_groups-0.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "41c3e33ecf8fede3c852c24e80be0ad40451a7d53cf1d3631a5600a9045e0d41",
"md5": "5d9cb0aef9a86a9de7ee25c6fbf0d071",
"sha256": "3acc13fc071d418eeb46fad904b2ebea60a78de1dd21711aed61eb889befad21"
},
"downloads": -1,
"filename": "netbox_device_groups-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "5d9cb0aef9a86a9de7ee25c6fbf0d071",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10,<4.0",
"size": 23070,
"upload_time": "2024-02-26T12:46:35",
"upload_time_iso_8601": "2024-02-26T12:46:35.104139Z",
"url": "https://files.pythonhosted.org/packages/41/c3/e33ecf8fede3c852c24e80be0ad40451a7d53cf1d3631a5600a9045e0d41/netbox_device_groups-0.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-02-26 12:46:35",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "sapcc",
"github_project": "netbox-device-groups",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "netbox-device-groups"
}