diff --git a/README.md b/README.md index 75414b3..9672957 100644 --- a/README.md +++ b/README.md @@ -5,33 +5,42 @@ A simple device map plugin with filtering criteria for NetBox ![Map filters screenshot](docs/images/screenshot_map_filters.png) ## Installation -1. Download plugin distribution from releases. -2. If your NetBox installation uses virtualenv, activate it like this: +1. If your NetBox installation uses virtualenv, activate it like this: ``` source /opt/netbox/venv/bin/activate ``` -3. Install the plugin from the distribution: -``` -sudo pip install /path/to/netbox-plugin-device-map.tar.gz -``` -4. Add plugin to `local_requirements.txt`: + +2. Install the plugin. To ensure plugin is automatically re-installed during future NetBox upgrades, create a file named `local_requirements.txt` (if not already existing) in the NetBox root directory and list the `nextbox-plugin-device-map` package: + - Option A: if you want to install it from PyPI: +``` +echo netbox-plugin-device-map | sudo tee -a /opt/netbox/local_requirements.txt +``` + - Option B: if you manually downloaded the plugin distribution from releases: ``` echo "/path/to/netbox-plugin-device-map.tar.gz" | sudo tee -a /opt/netbox/local_requirements.txt ``` -5. Collect static files: +Then run: +``` +sudo pip install -U -r /opt/netbox/local_requirements.txt +``` +to install the plugin. + +3. Collect static files: ``` sudo python /opt/netbox/netbox/manage.py collectstatic ``` -6. To enable plugin, add the plugin's name to the PLUGINS list in `configuration.py` (it's usually located in `/opt/netbox/netbox/netbox/`) like so: + +4. To enable plugin, add the plugin's name to the PLUGINS list in `configuration.py` (it's usually located in `/opt/netbox/netbox/netbox/`) like so: ``` PLUGINS = [ 'netbox_device_map' ] ``` -7. Restart NetBox WSGI service to apply changes: + +5. Restart NetBox WSGI service to apply changes: ``` sudo systemctl restart netbox ``` diff --git a/netbox_device_map/__init__.py b/netbox_device_map/__init__.py index 531f91b..c8de47b 100644 --- a/netbox_device_map/__init__.py +++ b/netbox_device_map/__init__.py @@ -4,7 +4,7 @@ from extras.plugins import PluginConfig class DeviceMapConfig(PluginConfig): name = 'netbox_device_map' verbose_name = 'Device map' - version = '0.1.1' + version = '0.1.2' author = 'Victor Golovanenko' author_email = 'drygdryg2014@yandex.com' base_url = 'device-map' diff --git a/setup.py b/setup.py index a3c1bd3..70c8eca 100644 --- a/setup.py +++ b/setup.py @@ -1,18 +1,31 @@ from setuptools import setup, find_packages +version = '0.1.2' + with open('README.md', encoding='utf-8') as f: long_description = f.read() setup( name='netbox-plugin-device-map', - version='0.1.1', + version=version, description='A simple device map with filter criteria', long_description=long_description, long_description_content_type='text/markdown', + license='MIT', author='Victor Golovanenko', author_email='drygdryg2014@yandex.com', - license='GPL-3.0', + url='https://github.com/drygdryg/netbox-plugin-device-map', + download_url='https://github.com/drygdryg/netbox-plugin-device-map/archive/v{}.zip'.format(version), + python_requires='>3.9', + classifiers=[ + 'Environment :: Plugins', + 'Environment :: Web Environment', + 'Framework :: Django', + 'License :: OSI Approved :: MIT License', + 'Topic :: System :: Networking', + 'Topic :: System :: Systems Administration' + ], packages=find_packages(), include_package_data=True, - zip_safe=False + zip_safe=False, )