Skip to main content

Contract management plugin for Netbox

Project description

Contract pluggin

Overview

The pluggin adds contracts and invoices model to Netbox.
It allows to register contract with objects.
Add invoices to contracts.

Installation

Activate venv

To ensure our plugin is accessible to the NetBox installation, we first need to activate the Python virtual environment that was created when we installed NetBox. To do this, determine the virtual environment's path (this will be /opt/netbox/venv/ if you use the documentation's defaults) and activate it:

$ source /opt/netbox/venv/bin/activate

Install the package

$ python3 -m pip install netbox-contract

Configure NetBox

Finally, we need to configure NetBox to enable our new plugin. Over in the NetBox installation path, open netbox/netbox/configuration.py and look for the PLUGINS parameter; this should be an empty list. (If it's not yet defined, go ahead and create it.) Add the name of our plugin to this list:

# configuration.py
PLUGINS = [
    'netbox_contract',
]

Customize the location of the plugin's menu:

# configuration.py
PLUGINS_CONFIG = {
    'netbox_contract': {
        'top_level_menu': True
    }
}

Customize the internal partie field.
Internal partie reference the legal entity of your organization that is a partie to the contract.

# configuration.py
FIELD_CHOICES = {
    'netbox_contract.Contract.internal_partie': (
        ('Nagravision SARL', 'Nagravision SARL', 'green'),
        ('Nagra USA', 'Nagra USA', 'green'),
        ('Nagra India', 'Nagra India', 'green'),
    )
}

Run database migrations

(venv) $ cd /opt/netbox/netbox/
(venv) $ python3 manage.py migrate

release notes

version 2.0.0

Add a new contract asignement model to allow the assignement of contract not only to Circuits. The support for the direct Contract to Circuit relation will be removed in version 2.1.0 . In Order to migrate existing relations contract_migration.py script is provided and can be run from the django shell.

version 2.0.1

Add support contract assignement panel to devices.

version 2.0.2

Add support for Netbox 3.5 which become the minimum version supported to accomodate the removal of NetBoxModelCSVForm class (replaced by NetBoxModelImportForm) .

version 2.0.3

  • #60 Update contract quick search to also filter on fields "External reference" and "Comments".
  • #49 Manage permissions.

version 2.0.4

  • Add bulk update capability for contract assignement
  • #63 Correct an API issue on the invoice object.
  • #64 Add hierarchy to contract; New parent field created.
  • #65 Add end date to contact import form.
  • Removed the possibility of add or modify circuits to contracts. The field becomes read only and will be removed in next major release.
  • Make accounting dimensions optional.

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-contract-2.0.4.tar.gz (17.5 kB view details)

Uploaded Source

Built Distribution

netbox_contract-2.0.4-py3-none-any.whl (28.6 kB view details)

Uploaded Python 3

File details

Details for the file netbox-contract-2.0.4.tar.gz.

File metadata

  • Download URL: netbox-contract-2.0.4.tar.gz
  • Upload date:
  • Size: 17.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.8

File hashes

Hashes for netbox-contract-2.0.4.tar.gz
Algorithm Hash digest
SHA256 58540208c119c529754cbcfedc57144da5ff23eae7b915f8ea299ac41435320e
MD5 4d89cc6ef8138fbca3ce1981c742be34
BLAKE2b-256 3cb32efa69ec1c36eb0a088157a34f945169d02ad6cf4e3b3fda336ae3230f37

See more details on using hashes here.

File details

Details for the file netbox_contract-2.0.4-py3-none-any.whl.

File metadata

File hashes

Hashes for netbox_contract-2.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b27015cc2501186ce2da6b13574682da0c8408b5286534684bfaddcda37aa40b
MD5 d0fb10b3898023ea3a32db77c0b314ad
BLAKE2b-256 d7f58ebcd97d09b0b925750ba49ff9a6f97409ca99d1525dba6183146cb20ae5

See more details on using hashes here.

Supported by

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