netbox-circuitmaintenance


Namenetbox-circuitmaintenance JSON
Version 0.6.0 PyPI version JSON
download
home_pageNone
SummaryProvides the ability to record circuit maintenance, maintenance impact and maintenance notifications in Netbox and link them to Providers and Circuits.
upload_time2025-09-08 19:58:53
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10.0
licenseNone
keywords netbox_circuitmaintenance
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Netbox Circuit Maintenance Plugin

Documentation: [https://jasonyates.github.io/netbox-circuitmaintenance/](https://jasonyates.github.io/netbox-circuitmaintenance/)

A NetBox plugin built to track circuit maintenance events, the plugin itself is agnostic in that it is only built to store data surrounding maintenance events and provide an overview of historical, active and upcoming circuit and provider maintenance events. The plugin tracks maintenance events at the provider level and associates impact from each event at the circuit level.

The plugin does not directly provide an automated approach to ingesting provider notifications, instead it extends NetBox's extensive REST API and provides GET/POST/PUT/PATCH methods to manage maintenance events. The plugin is intended to be coupled with an automated parser to handle the parsing of provider notifications and the delivery of the maintenance events to the plugin's REST API. Several example parsers have been documented [here](https://jasonyates.github.io/netbox-circuitmaintenance/parsers/).

## Features

 - Track provider maintenance events
 - Track circuit impact from provider maintenance
 - Provides a consolidated view of active, upcoming and historical maintenance events at the provider and circuit level
 - Consolidated notifications (coming soon)
 - Maintenance overlap detection (coming soon)

## Compatibility
This plugin is only supported on NetBox 3.4 or higher, for exact compatibility information, see the table below.  
| NetBox Version | Plugin Version |
|--|--|
| 4.4+ | 0.6.0 |
| 4.2+ | 0.5.0 |
| 4.0+ | 0.4.2 |
| 3.5 | 0.3.0 |
| 3.4 | 0.2.2 |



## Installing

A working installation of Netbox 3.4+ is required - [see official documentation](https://netbox.readthedocs.io/en/stable/plugins/).

### Package Installation

Activate your virtual env and install via pip::

```bash
$ source /opt/netbox/venv/bin/activate
(venv) $ pip install netbox-circuitmaintenance
```

To ensure the Netbox Documents plugin is automatically re-installed during future upgrades, add the package to your `local_requirements.txt` :

```bash
# echo netbox-circuitmaintenance >> local_requirements.txt
```

### Enable the Plugin

In the Netbox `configuration.py` configuration file add or update the PLUGINS parameter, adding `netbox_circuitmaintenance`:


```python
PLUGINS = [
    'netbox_circuitmaintenance'
]

PLUGINS_CONFIG = {
    "netbox_circuitmaintenance": {},
}
```

### Apply Database Migrations

Apply database migrations with Netbox `manage.py`:

```
(venv) $ python manage.py migrate
```

### Restart Netbox

Restart the Netbox service to apply changes:

```
sudo systemctl restart netbox
```

## Screenshots

![Maintenance Event View](docs/img/maintenance.png)
![Circuit Maintenance View](docs/img/circuit_maintenance.png)
![Provider Maintenance View](docs/img/provider_maintenance.png)


## Credits

Based on the NetBox plugin tutorial:

- [demo repository](https://github.com/netbox-community/netbox-plugin-demo)
- [tutorial](https://github.com/netbox-community/netbox-plugin-tutorial)

This package was created with [Cookiecutter](https://github.com/audreyr/cookiecutter) and the [`netbox-community/cookiecutter-netbox-plugin`](https://github.com/netbox-community/cookiecutter-netbox-plugin) project template.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "netbox-circuitmaintenance",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10.0",
    "maintainer_email": null,
    "keywords": "netbox_circuitmaintenance",
    "author": null,
    "author_email": "Jason Yates <me@jasonyates.co.uk>",
    "download_url": "https://files.pythonhosted.org/packages/3a/2a/f562a60a560f8356f96a95aecfa2aca52c46c8ce030c5108900f4ce6c893/netbox_circuitmaintenance-0.6.0.tar.gz",
    "platform": null,
    "description": "# Netbox Circuit Maintenance Plugin\n\nDocumentation: [https://jasonyates.github.io/netbox-circuitmaintenance/](https://jasonyates.github.io/netbox-circuitmaintenance/)\n\nA NetBox plugin built to track circuit maintenance events, the plugin itself is agnostic in that it is only built to store data surrounding maintenance events and provide an overview of historical, active and upcoming circuit and provider maintenance events. The plugin tracks maintenance events at the provider level and associates impact from each event at the circuit level.\n\nThe plugin does not directly provide an automated approach to ingesting provider notifications, instead it extends NetBox's extensive REST API and provides GET/POST/PUT/PATCH methods to manage maintenance events. The plugin is intended to be coupled with an automated parser to handle the parsing of provider notifications and the delivery of the maintenance events to the plugin's REST API. Several example parsers have been documented [here](https://jasonyates.github.io/netbox-circuitmaintenance/parsers/).\n\n## Features\n\n - Track provider maintenance events\n - Track circuit impact from provider maintenance\n - Provides a consolidated view of active, upcoming and historical maintenance events at the provider and circuit level\n - Consolidated notifications (coming soon)\n - Maintenance overlap detection (coming soon)\n\n## Compatibility\nThis plugin is only supported on NetBox 3.4 or higher, for exact compatibility information, see the table below.  \n| NetBox Version | Plugin Version |\n|--|--|\n| 4.4+ | 0.6.0 |\n| 4.2+ | 0.5.0 |\n| 4.0+ | 0.4.2 |\n| 3.5 | 0.3.0 |\n| 3.4 | 0.2.2 |\n\n\n\n## Installing\n\nA working installation of Netbox 3.4+ is required - [see official documentation](https://netbox.readthedocs.io/en/stable/plugins/).\n\n### Package Installation\n\nActivate your virtual env and install via pip::\n\n```bash\n$ source /opt/netbox/venv/bin/activate\n(venv) $ pip install netbox-circuitmaintenance\n```\n\nTo ensure the Netbox Documents plugin is automatically re-installed during future upgrades, add the package to your `local_requirements.txt` :\n\n```bash\n# echo netbox-circuitmaintenance >> local_requirements.txt\n```\n\n### Enable the Plugin\n\nIn the Netbox `configuration.py` configuration file add or update the PLUGINS parameter, adding `netbox_circuitmaintenance`:\n\n\n```python\nPLUGINS = [\n    'netbox_circuitmaintenance'\n]\n\nPLUGINS_CONFIG = {\n    \"netbox_circuitmaintenance\": {},\n}\n```\n\n### Apply Database Migrations\n\nApply database migrations with Netbox `manage.py`:\n\n```\n(venv) $ python manage.py migrate\n```\n\n### Restart Netbox\n\nRestart the Netbox service to apply changes:\n\n```\nsudo systemctl restart netbox\n```\n\n## Screenshots\n\n![Maintenance Event View](docs/img/maintenance.png)\n![Circuit Maintenance View](docs/img/circuit_maintenance.png)\n![Provider Maintenance View](docs/img/provider_maintenance.png)\n\n\n## Credits\n\nBased on the NetBox plugin tutorial:\n\n- [demo repository](https://github.com/netbox-community/netbox-plugin-demo)\n- [tutorial](https://github.com/netbox-community/netbox-plugin-tutorial)\n\nThis package was created with [Cookiecutter](https://github.com/audreyr/cookiecutter) and the [`netbox-community/cookiecutter-netbox-plugin`](https://github.com/netbox-community/cookiecutter-netbox-plugin) project template.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Provides the ability to record circuit maintenance, maintenance impact and maintenance notifications in Netbox and link them to Providers and Circuits.",
    "version": "0.6.0",
    "project_urls": {
        "Documentation": "https://jasonyates.github.io/netbox-circuitmaintenance",
        "Homepage": "https://github.com/jasonyates/netbox-circuitmaintenance",
        "Source": "https://github.com/jasonyates/netbox-circuitmaintenance",
        "Tracker": "https://github.com/jasonyates/netbox-circuitmaintenance/issues"
    },
    "split_keywords": [
        "netbox_circuitmaintenance"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7ee93c25150ff0919842bedddf176f36ed2b0aefbd69018dd5f00e54a0229973",
                "md5": "1cda0058b07b520e4caaf1b826aaa0dc",
                "sha256": "81cfb942f41adc9cf34aa4e9e61db67692150b469f458178f129d41308ae1c79"
            },
            "downloads": -1,
            "filename": "netbox_circuitmaintenance-0.6.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1cda0058b07b520e4caaf1b826aaa0dc",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10.0",
            "size": 25181,
            "upload_time": "2025-09-08T19:58:51",
            "upload_time_iso_8601": "2025-09-08T19:58:51.776112Z",
            "url": "https://files.pythonhosted.org/packages/7e/e9/3c25150ff0919842bedddf176f36ed2b0aefbd69018dd5f00e54a0229973/netbox_circuitmaintenance-0.6.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3a2af562a60a560f8356f96a95aecfa2aca52c46c8ce030c5108900f4ce6c893",
                "md5": "42f2e0f53ef5fddd72adfedd45bf7c96",
                "sha256": "77eeb1c6e93ab054481553332d1638688846d56134ebaf4682990e4ad882484f"
            },
            "downloads": -1,
            "filename": "netbox_circuitmaintenance-0.6.0.tar.gz",
            "has_sig": false,
            "md5_digest": "42f2e0f53ef5fddd72adfedd45bf7c96",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10.0",
            "size": 1116143,
            "upload_time": "2025-09-08T19:58:53",
            "upload_time_iso_8601": "2025-09-08T19:58:53.634651Z",
            "url": "https://files.pythonhosted.org/packages/3a/2a/f562a60a560f8356f96a95aecfa2aca52c46c8ce030c5108900f4ce6c893/netbox_circuitmaintenance-0.6.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-08 19:58:53",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jasonyates",
    "github_project": "netbox-circuitmaintenance",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "netbox-circuitmaintenance"
}
        
Elapsed time: 1.31561s