Metadata-Version: 2.4
Name: netbox-napalm-plugin
Version: 0.3.4
Summary: NetBox plugin for Napalm.
Author-email: Arthur Hanson <ahanson@netboxlabs.com>
Project-URL: Documentation, https://github.com/netbox-community/netbox-napalm-plugin/blob/main/README.md
Project-URL: Source, https://github.com/netbox-community/netbox-napalm-plugin
Project-URL: Tracker, https://github.com/netbox-community/netbox-napalm-plugin/issues
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.10.0
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: napalm<5.0
Provides-Extra: test
Requires-Dist: black==24.3.0; extra == "test"
Requires-Dist: check-manifest==0.49; extra == "test"
Requires-Dist: flake8; extra == "test"
Requires-Dist: flake8-pyproject; extra == "test"
Requires-Dist: pre-commit==3.7.0; extra == "test"
Requires-Dist: pytest==8.1.1; extra == "test"
Dynamic: license-file

# NetBox Napalm Plugin

NetBox plugin for Napalm.


* Free software: Apache-2.0
* Documentation: https://netbox-community.github.io/netbox-napalm-plugin/.


## Features

The features the plugin provides should be listed here.

## Compatibility

| NetBox Version   | Plugin Version |
|------------------|----------------|
| 3.5              | 0.1.0          |
| 3.5.8            | 0.1.4          |
| 3.6.0            | 0.1.5          |
| 3.7.6            | 0.1.7          |
| < 4.0.11         | 0.2.1          |
| >= 4.1.0 < 4.2.0 | 0.3.0          |
| >= 4.2.0         | 0.3.1          |
| >= 4.3.0         | 0.3.2          |
| >= 4.4.0         | 0.3.3          |
| >= 4.5.0         | 0.3.4          |

## Installation

For adding to a NetBox Docker setup see
[the general instructions for using netbox-docker with plugins](https://github.com/netbox-community/netbox-docker/wiki/Using-Netbox-Plugins).

```no-highlight
$ source /opt/netbox/venv/bin/activate
(venv) pip install netbox-napalm-plugin
```

or by adding to your `local_requirements.txt` or `plugin_requirements.txt` (netbox-docker):

```no-highlight
(venv) netbox-napalm-plugin
```

### Enable the Plugin

Enable the plugin in `/opt/netbox/netbox/netbox/configuration.py`,
 or if you use netbox-docker, your `/configuration/plugins.py` file :

```no-highlight
PLUGINS = [
    'netbox_napalm_plugin'
]
```

### Configure Plugin

Configure the plugin in `configuration.py` under the `PLUGINS_CONFIG` parameter.

```no-highlight
PLUGINS_CONFIG = {
    'netbox_napalm_plugin': {
        'NAPALM_USERNAME': 'xxx',
        'NAPALM_PASSWORD': 'yyy',
    },
}
```

### Run Database Migrations

Run the provided schema migrations:

```no-highlight
(venv) $ cd /opt/netbox/netbox/
(venv) $ python3 manage.py migrate
```

### Collect Static Files

Ensure the static files are copied to the static root directory with the `collectstatic` management command:

```no-highlight
(venv) $ cd /opt/netbox/netbox/
(venv) $ python3 manage.py collectstatic
```

### Restart WSGI Service

Restart the WSGI service to load the new plugin:

```no-highlight
# sudo systemctl restart netbox
```

## 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.
