A NetBox plugin that dynamically reloads plugins without requiring a server restart. This plugin ensures that NetBox properly registers all plugin models and form fields that might have been missed during the initial application startup.
- Dynamically registers plugin models that were missed during server startup
- Refreshes custom field form definitions to include newly registered models
- Helps solve integration issues between NetBox and other plugins
- No configuration required - works out of the box
NetBox Version | Plugin Version |
---|---|
4.2.x | 0.0.2 |
The plugin is available as a Python package on PyPI and can be installed with pip:
pip install netbox-plugin-reloader
To enable the plugin, add it to the PLUGINS
list in your configuration.py
:
PLUGINS = [
'other_plugin',
'another_plugin',
'netbox_plugin_reloader', # Always add netbox_plugin_reloader last!
]
After installing the plugin:
-
Restart NetBox:
sudo systemctl restart netbox
-
Ensure that
netbox-plugin-reloader
is included in yourlocal_requirements.txt
if you're using the official NetBox installation method.
For more details, see the NetBox Documentation.
netbox_plugin_reloader must be the last item in your PLUGINS list! This ensures that it can properly detect and register all models from other plugins that may have been missed during the initial startup process.
When NetBox starts, Plugin Reloader:
- Scans all enabled plugins for models that aren't properly registered in NetBox's feature registry
- Registers any missed models with NetBox's registration system
- Refreshes form field definitions to ensure they include all registered models
This helps resolve issues where plugins might not fully integrate with NetBox due to load order problems without requiring a server restart.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
Jan Krupa [email protected]