Skip to main content

NetBox plugin for device maintenance management with comprehensive REST API and Portuguese-BR support

Project description

NetBox Maintenance Device Plugin

NetBox PyPI PyPI Downloads Language

A comprehensive NetBox plugin for managing device preventive and corrective maintenance with enhanced visual indicators, scheduling capabilities, and multi-language support.

Upcoming & Overdue Maintenance

Features

  • Maintenance Plans: Create and manage maintenance plans for devices with configurable frequency
  • Maintenance Executions: Record and track maintenance executions with status monitoring
  • Device Integration: View maintenance history directly on device pages with dedicated tabs
  • Quick Actions: Schedule and complete maintenance directly from the interface
  • REST API: Complete REST API for external integrations and automation
  • Advanced Filtering: Powerful filtering and search capabilities
  • Custom Actions: Schedule, complete, and cancel maintenance via API
  • Statistics: Get maintenance statistics and overdue/upcoming reports

Compatibility

NetBox Version Plugin Support Notes
4.5.x Tested & Supported Current target version
4.4.x Tested & Supported Fully compatible
4.3.x Likely Compatible Not officially tested
4.2.x Likely Compatible Not officially tested
4.1.x Likely Compatible Not officially tested
4.0.x Likely Compatible Not officially tested
3.x Not Supported Breaking changes

Note: This version (v1.2.3) is specifically tested and certified for NetBox 4.5.x and 4.4.x. While it may work with other 4.x versions, we recommend testing in a development environment first.

Python Requirements: NetBox 4.5.x requires Python 3.12, 3.13, or 3.14. If you're using NetBox 4.4.x or earlier, you can use Python 3.8+.

Installation

Method 1: PyPI Installation (Recommended)

Now officially available on PyPI!

# Install the latest version
pip install netbox-maintenance-device

# Or install a specific version
pip install netbox-maintenance-device==1.2.3

For Docker deployments, add to your plugin_requirements.txt:

echo "netbox-maintenance-device>=1.2.3" >> plugin_requirements.txt

Method 2: GitHub Installation

# Install from GitHub (development version)
pip install git+https://github.com/diegogodoy06/netbox-maintenance-device.git

Method 3: Docker Installation

For Docker-based NetBox installations using netbox-docker:

📋 For detailed Docker installation instructions in English and Portuguese, see DOCKER_INSTALL.md

Configuration

Basic Configuration

Add the plugin to your NetBox configuration.py:

# configuration.py

PLUGINS = [
    'netbox_maintenance_device',
    # ... other plugins
]

# Optional: Plugin-specific settings
PLUGINS_CONFIG = {
    'netbox_maintenance_device': {
        # Future configuration options will be added here
        # Currently, the plugin uses default settings
    }
}

Language Configuration (Optional)

To enable Portuguese-BR by default:

# configuration.py

# Enable internationalization
USE_I18N = True
USE_L10N = True

# Set default language
LANGUAGE_CODE = 'pt-br'
TIME_ZONE = 'America/Sao_Paulo'

# Available languages
LANGUAGES = [
    ('en', 'English'),
    ('pt-br', 'Português (Brasil)'),
]

Restart Services

Restart your NetBox services:

# For systemd
sudo systemctl restart netbox netbox-rq

# For Docker
docker compose restart netbox netbox-worker

Usage

For detailed usage instructions, please refer to the USAGE.md guide, which includes:

  • Creating and managing maintenance plans
  • Scheduling and completing maintenance
  • Monitoring maintenance status
  • Using the REST API
  • Troubleshooting common issues

Quick Start:

  1. Create maintenance plans for your devices
  2. View upcoming/overdue maintenance in the dashboard
  3. Use quick action buttons to schedule or complete maintenance
  4. Monitor device-specific maintenance on device pages

Screenshots

Device Maintenance Section

View maintenance plans and status directly on device pages

Device Maintenance

Upcoming Maintenance Dashboard

Monitor all upcoming and overdue maintenance across your infrastructure

Upcoming Maintenance

Maintenance Plan Management

Create and manage maintenance plans with flexible scheduling

Maintenance Plans


🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

📄 License

This project is licensed under the Apache 2.0 License - see the LICENSE file for details.

🙏 Acknowledgments

  • NetBox community for the excellent platform
  • Contributors and users providing feedback

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_maintenance_device-1.2.3.tar.gz (43.9 kB view details)

Uploaded Source

Built Distribution

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

netbox_maintenance_device-1.2.3-py3-none-any.whl (51.5 kB view details)

Uploaded Python 3

File details

Details for the file netbox_maintenance_device-1.2.3.tar.gz.

File metadata

File hashes

Hashes for netbox_maintenance_device-1.2.3.tar.gz
Algorithm Hash digest
SHA256 094a34d46ff9f3e0c0b4ac7f6689ac2469f7813e517ee1d022fc3a346d36673b
MD5 5a04425575025799597041195818bedb
BLAKE2b-256 dfd77196cc7fe4423e2c24d58f3dd37af1f42e83bb06f20d799795358d339009

See more details on using hashes here.

File details

Details for the file netbox_maintenance_device-1.2.3-py3-none-any.whl.

File metadata

File hashes

Hashes for netbox_maintenance_device-1.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 42dc7e344ae1bdc9764791535f0b28c421a678a06b95e10b3271adc9d4aca42c
MD5 8ff23d20f35b8db08d6f75c351b91b5a
BLAKE2b-256 634f9efd16379d1bbced65634d188f8b8ce52f996521874815ad6b747de390b4

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