Skip to content

Releases: no42-org/netbox-opennms-plugin

v0.0.4

Choose a tag to compare

@indigo423 indigo423 released this 14 Jul 21:05
dbe16d8

Highlights

  • No plugin code changes. netbox-opennms-plugin 0.0.4 behaves identically to 0.0.3 — this release refreshes the project's development, CI, and demo environments.

Test & demo stacks

  • PostgreSQL 16 → 18 across all compose stacks, adopting the postgres:18 image's new /var/lib/postgresql data layout. Verified against the plugin's supported matrix: OpenNMS Horizon 36 supports PostgreSQL 14–18, NetBox 4.6 requires 14+. Existing quickstart demos start with a fresh database — the old PG16 volume is left on disk for manual dump/restore. (#47)
  • OpenNMS Horizon 36.0.1 → 36.0.2 and Redis 7 → 8 in the test and quickstart stacks; CI's live round-trip runs against Horizon 36.0.2. (#39, #41, #42, #44)

Under the hood

  • Dependabot now scans the Compose files (docker-compose ecosystem) for image updates — the previous docker configuration failed on every run because the repo has no Dockerfiles. (#38)

Full changelog: v0.0.3...v0.0.4

v0.0.3 — pure-Python install

Choose a tag to compare

@indigo423 indigo423 released this 07 Jul 23:04
8255c8a

Highlights

  • Pure-Python package — no more compiled dependency. The OpenNMS requisition and foreign-source XML is now rendered with the standard library (xml.etree.ElementTree) instead of lxml. The wheel is py3-none-any with requests as its only runtime dependency, so installs — including containers and air-gapped builds — no longer pull a C extension. The requisition sent to OpenNMS is unchanged. (#33)

Deployment docs

  • Clarified the Helm / custom-image install path and the requirement that the web and RQ-worker pods run the same plugin-bearing image. (#32)
  • Corrected the explanation of why runtime-mounted plugins aren't supported: it's a chart / netbox-docker constraint, not the plugin. (#36)

Under the hood

  • Automated release-to-PyPI via GitHub Trusted Publishing (OIDC, no API tokens). (#35)
  • CI runs the live OpenNMS Horizon 36 round-trip on every pull request. (#31)

Full changelog: v0.0.2...v0.0.3

v0.0.2 — documentation release

Choose a tag to compare

@indigo423 indigo423 released this 06 Jul 11:36
v0.0.2
cc4a756

A documentation-only patch release. No functional changes to the plugin — the API, migrations, and behavior are identical to v0.0.1. Safe to skip if you don't need the improved docs.

What changed

  • README restructured to GitHub best practices, with a UI screenshot (#26).
  • Contributor guide now published as a styled GitHub Pages page (#27).
  • Quickstart folded into the guide's Local test environment section and trimmed from the README, so there's a single place to look (#28, #29).

Requirements

NetBox 4.6.1+ · Python 3.12+ · OpenNMS Horizon 36

Install

pip install netbox-opennms-plugin

Verified in CI: lint + the unit suite and the wheel-packaging check are green.

v0.0.1 — first public release

Choose a tag to compare

@indigo423 indigo423 released this 05 Jul 23:20
v0.0.1

Provision NetBox devices and virtual machines into OpenNMS Horizon 36 as requisition nodes, via the OpenNMS REST provisioning API.

Highlights

  • Filter-based Requisitions — group Devices/VMs into a Foreign Source with a saved or custom NetBox filter; overlaps between requisitions surface as blocking conflicts to resolve before sync.
  • Discovery-driven detectors & policies — configure a requisition's detectors and provisioning policies from the live OpenNMS catalog (parameters / options / required discovered via REST), with a curated preset overlay and a freeform class escape hatch.
  • Per-interface SNMP roles — the management IP is the Primary SNMP interface by default; add more IPs as Primary / Secondary / Not-eligible.
  • Asset & metadata enrichment — map NetBox inventory to OpenNMS node asset fields, and attach meta-data at node / interface / service scope.
  • Graded node status — a device with no management IP is provisioned as an inventory-only node with a warning, not silently skipped.
  • Safe sync — a dry-run diff against the live OpenNMS state before syncing, serialized per-Foreign-Source background jobs, and a drift reconciler that clears only the requisitions the plugin owns.
  • Connect OpenNMS — a permission-gated page to verify the configured connection.

Requirements

NetBox 4.6.1+ · Python 3.12+ · OpenNMS Horizon 36

Install

pip install netbox-opennms-plugin

Add netbox_opennms to PLUGINS, set PLUGINS_CONFIG, run manage.py migrate, and restart NetBox + its worker. Kubernetes/Helm and a quickstart demo are in the README.


Verified in CI: lint + the 608-test unit suite and the live OpenNMS Horizon 36 round-trip all green.