Skip to main content

Manage contracts and services in NetBox.

Project description

netbox-plugin-itsm

A NetBox plugin for managing IT service management (ITSM) data — products, contracts, and contract services — and linking them to objects within NetBox such as devices, IP addresses, circuits, and virtual machines.

Features

  • Product catalogue — define products and organise them into product groups
  • Contract management — track contracts per tenant with active/planned/terminated status
  • Contract services — link products to contracts with optional quantity
  • Contract service items — attach any NetBox object (device, IP, circuit, VM, etc.) to a contract service
  • Full NetBox integration: change logging, tagging, custom fields, and global search

Requirements

  • NetBox 4.0 or later (tested up to 4.6)

Installation

Add the plugin to the NetBox Python virtual environment:

source /opt/netbox/venv/bin/activate
pip install netbox-plugin-itsm

Or install in development mode from source:

source /opt/netbox/venv/bin/activate
pip install setuptools
python setup.py develop

Enable the plugin in /opt/netbox/netbox/netbox/configuration.py:

PLUGINS = [
    'netbox_itsm',
]

Run migrations:

python /opt/netbox/netbox/manage.py migrate

Collect static assets:

python /opt/netbox/netbox/manage.py collectstatic

Restart the NetBox service.

Development

Setup

source /opt/netbox/venv/bin/activate
pip install setuptools
python setup.py develop
python /opt/netbox/netbox/manage.py migrate

Useful commands

# Open the NetBox shell
python /opt/netbox/netbox/manage.py nbshell

# Run a local dev server
python /opt/netbox/netbox/manage.py runserver 127.0.0.1:8001

Updating data models

After changing a model, generate and apply a migration:

python /opt/netbox/netbox/manage.py makemigrations netbox_itsm
python /opt/netbox/netbox/manage.py migrate

Testing

Install test dependencies (only Django is required — NetBox itself is not needed):

pip install pytest pytest-django django

Run the test suite:

pytest

Tests use module-level stubs for all NetBox and third-party dependencies, so they run in any environment with Django installed. No database or NetBox installation required.

License

AGPL-3.0-or-later — see LICENSE for details.

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_plugin_itsm-0.3.tar.gz (34.1 kB view details)

Uploaded Source

Built Distribution

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

netbox_plugin_itsm-0.3-py3-none-any.whl (32.3 kB view details)

Uploaded Python 3

File details

Details for the file netbox_plugin_itsm-0.3.tar.gz.

File metadata

  • Download URL: netbox_plugin_itsm-0.3.tar.gz
  • Upload date:
  • Size: 34.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for netbox_plugin_itsm-0.3.tar.gz
Algorithm Hash digest
SHA256 4bd98edf6b370a2bf0ef2e1f737830a7bfd8c03e260f274c4052ad136f216bc5
MD5 dee933c28bf74645535101dbbab29a8e
BLAKE2b-256 af009f9acfdc6f02f7d8629cf87f482f402b1db475863b4ebd1c0d9a9d907619

See more details on using hashes here.

File details

Details for the file netbox_plugin_itsm-0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for netbox_plugin_itsm-0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f1418a9142f9c4466c2995f87d609435b21759899f4d423fc33ec105c71ad925
MD5 377aee43770402bb91aa62b36d0ab140
BLAKE2b-256 41403d0d4abc4b795b0932e8147036ea1bc45c4b0c282fd8044698aedc28f37f

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