Skip to main content

NetBox plugin for managing SCION Links Assignment

Project description

NetBox SCION Plugin

A comprehensive NetBox plugin for managing SCION (Scalability, Control, and Isolation On Next-generation networks) infrastructure.

PyPI Python Version License

✨ Features

  • Organizations: Manage SCION operators with metadata and descriptions
  • ISD-ASes: Track Isolation Domain and Autonomous System identifiers with appliances (CORE/EDGE)
  • Link Assignments: Interface management with customer information and Zendesk integration
  • REST API: Full CRUD operations with filtering and pagination
  • Export: CSV and Excel export capabilities
  • Advanced Filtering: Search, dropdown filters, and tag-based filtering on all list pages

📦 Installation

pip install netbox-scion==1.3.3

🚀 Quick Start

Prerequisites

  • NetBox v4.0+ (Docker or system installation)
  • Python 3.8+

Basic Installation

Choose the method that matches your NetBox deployment:

Docker Installation (Recommended)

For netbox-docker deployments:

# 1. Add plugin to plugin_requirements.txt
echo "netbox-scion==1.3.3" >> plugin_requirements.txt

# 2. Add to configuration/plugins.py
PLUGINS = ['netbox_scion']

# 3. Rebuild containers
docker-compose build
docker-compose up -d

System Installation

For native NetBox installations:

# 1. Install in NetBox virtual environment
source /opt/netbox/venv/bin/activate
pip install netbox-scion==1.3.3

# 2. Add to configuration.py
PLUGINS = ['netbox_scion']

# 3. Run migrations and restart
cd /opt/netbox/netbox
python manage.py migrate
sudo systemctl restart netbox netbox-rq

Verification

Check the plugin is installed:

pip show netbox-scion  # or: docker exec netbox pip show netbox-scion

Then access NetBox and look for the "SCION" section in the sidebar.

Advanced Installation

For detailed setup, custom Docker builds, local development, or troubleshooting, see the Advanced Deployment Guide

🔧 API Access

The plugin provides a full REST API with CRUD operations, filtering, and pagination:

  • Organizations: /api/plugins/scion/organizations/
  • ISD-ASes: /api/plugins/scion/isd-ases/
  • Link Assignments: /api/plugins/scion/link-assignments/

📖 Complete API Documentation: See API.md for comprehensive documentation including:

  • Authentication methods
  • Request/response examples
  • Filtering and search
  • Error handling
  • Python code examples

🎯 Navigation

The plugin adds a "SCION" section to the NetBox sidebar with:

  • Organizations
  • ISD-ASes
  • SCION Link Assignments

📁 Development

For Plugin Users

You don't need to clone this repository! Simply install via pip using the instructions above.

For Contributors & Developers

Only clone this repository if you want to:

  • Contribute code changes
  • Customize the plugin
  • Use local development builds
  • Test unreleased features
# Clone and setup for development
git clone https://github.com/anapaya/netbox-scion.git
cd netbox-scion

# Install in development mode
pip install -e .

# For advanced deployment scenarios
cp -r deployment/* /path/to/your/netbox-docker/

See deployment/README.md for advanced installation methods including custom Docker images and local wheel files.

Project Structure

netbox_scion/
├── __init__.py              # Plugin configuration
├── models.py                # Data models
├── forms.py                 # Web forms
├── views.py                 # Web views
├── urls.py                  # URL routing
├── api/                     # REST API
├── templates/               # HTML templates
├── migrations/              # Database migrations
└── static/                  # CSS/JS assets

Local Development

# Install in development mode
pip install -e .

# Run migrations
python manage.py migrate

# Create wheel package
python setup.py bdist_wheel

🐛 Troubleshooting

Quick Fixes

Plugin not appearing?

  • Check installation: pip show netbox-scion (or docker exec netbox pip show netbox-scion)
  • Ensure 'netbox_scion' is in your PLUGINS list
  • Restart NetBox services

For detailed troubleshooting, deployment issues, and advanced configuration, see our Advanced Deployment Guide.

Getting Help

📝 License

Apache License 2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

netbox_scion-1.3.3.tar.gz (27.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

netbox_scion-1.3.3-py3-none-any.whl (41.9 kB view details)

Uploaded Python 3

File details

Details for the file netbox_scion-1.3.3.tar.gz.

File metadata

  • Download URL: netbox_scion-1.3.3.tar.gz
  • Upload date:
  • Size: 27.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for netbox_scion-1.3.3.tar.gz
Algorithm Hash digest
SHA256 ac4b85d129355c625a4a3618d7538292519c89c3b5219f6a8839e0cd34c01d4a
MD5 0d578c7456a479ef569960fe87211a4d
BLAKE2b-256 613b7f309a722a80daaf09a64b19676512bce19f328356053eb25bddd0034893

See more details on using hashes here.

File details

Details for the file netbox_scion-1.3.3-py3-none-any.whl.

File metadata

  • Download URL: netbox_scion-1.3.3-py3-none-any.whl
  • Upload date:
  • Size: 41.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for netbox_scion-1.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 32ee3905394b374815907f09965ed5a9f61e54e22833ae315f918844268b5371
MD5 734c3b9af95208d753c8316fe1a2a964
BLAKE2b-256 f7f6655dd844b120fbc3bd5f4623936e1dbc6f8d53a85affe0e450574fe36b07

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page