Adds ability to create, edit and view service paths in the CESNET network.
Project description
CESNET ServicePath Plugin for NetBox
A NetBox plugin for managing service paths and segments in network infrastructure.
Overview
The CESNET ServicePath Plugin extends NetBox's capabilities by:
- Managing service paths across your network
- Creating and tracking service segments
- Visualizing service routing
Compatibility Matrix
| NetBox Version | Plugin Version |
|---|---|
| 4.2 | 4.0.0 |
| 3.7 | 0.1.0 |
Features
-
Service Path Management
- Define experimental, core, and customer service paths
- Track service path status and metadata
- Link multiple segments to create complete paths
-
Segment Management
- Track network segments between locations
- Monitor installation and termination dates
- Manage provider relationships and contracts
- Link circuits to segments
- Automatic status tracking based on dates
Data Model
Service Path
- Name and status tracking
- Service type classification (experimental/core/customer)
- Multiple segment support through mappings
Segment
- Provider and location tracking
- Date-based lifecycle management
- Circuit associations
- Automated status monitoring
Quick Start
- Install the plugin:
pip install cesnet_service_path_plugin
- Enable the plugin in your NetBox configuration:
PLUGINS = [
'cesnet_service_path_plugin'
]
PLUGINS_CONFIG = {
"cesnet_service_path_plugin": {},
}
- Run NetBox migrations:
python manage.py migrate
Installation
Using pip
pip install git+https://gitlab.cesnet.cz/701/netbox/cesnet_service_path_plugin.git
Using Docker
For NetBox Docker installations, add to your plugin_requirements.txt:
cesnet_service_path_plugin
For detailed Docker setup instructions, see using netbox-docker with plugins.
Configuration
Custom Status Choices
Extend or override default status choices in your configuration.py:
FIELD_CHOICES = {
'cesnet_service_path_plugin.choices.status': (
('custom_status', 'Custom Status', 'blue'),
# ('status_value', 'Display Name', 'color'),
)
}
Status choice format:
- Value: Internal database value
- Name: UI display name
- Color: Badge color (blue, green, red, orange, yellow, purple, gray)
Default statuses (Active, Planned, Offline) will be merged with custom choices.
Custom Kind Choices
Extend or override default kind choices in your configuration.py:
FIELD_CHOICES = {
'cesnet_service_path_plugin.choices.kind': (
('custom_kind', 'Custom Kind Name', 'purple'),
# ('kind_value', 'Display Name', 'color'),
)
}
Kind choice format:
- Value: Internal database value
- Name: UI display name
- Color: Badge color (blue, green, red, orange, yellow, purple, gray)
Default kinds:
- experimental: Experimentální (cyan)
- core: Páteřní (blue)
- customer: Zákaznická (green)
Custom kinds will be merged with the default choices.
API Usage
The plugin provides a REST API for managing service paths and segments:
Development
Setting Up Development Environment
- Clone the repository:
git clone https://gitlab.cesnet.cz/701/netbox/cesnet_service_path_plugin.git
cd cesnet_service_path_plugin
- Create a virtual environment:
python -m venv venv
source venv/bin/activate # Linux/Mac
# or
.\venv\Scripts\activate # Windows
- Install development dependencies:
pip install -e ".[dev]"
Credits
- Created using Cookiecutter and
netbox-community/cookiecutter-netbox-plugin - Based on the NetBox plugin tutorial
License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file cesnet_service_path_plugin-5.0.2b4.tar.gz.
File metadata
- Download URL: cesnet_service_path_plugin-5.0.2b4.tar.gz
- Upload date:
- Size: 51.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b2a80daea8f17421064106f5636c020ec48cfc30c8f13749c61fabeb321f296a
|
|
| MD5 |
ac06a62795efff13577f13cd61f1d2a4
|
|
| BLAKE2b-256 |
9ac07bcc3d884579cb4eae6543b937ed59c90fec2f83c74977b311a9400dc413
|