Horizon packages provide versioned OPA dependency package
Description
Acceptance / Success Criteria
Acceptance
Horizon RPM and DEB packages are marked as providing a virtual package (e.g.
opennms-plugin-api
) at a version equal to the value ofopennmsApiVersion
in the top-level POM (this is a must for the 31.0.0 release)Sentinel RPM and DEB packages provide the same virtual package at the same version (this can be broken out to a separate issue and slip to 31.0.1 if necessary)
Minion RPM and DEB packages provide the same virtual package at the same version (this can be broken out to a separate issue and slip to 31.0.1 if necessary)
Lucidchart Diagrams
Activity
Show:
Morteza November 7, 2022 at 3:21 PM
PR was merged
Morteza November 1, 2022 at 7:53 PM
Rest on Ubuntu:
# rpm -i opennms-32.0.0-0.20221101.mem.dev.196200.noarch.rpm
rpm: RPM should not be used directly install RPM packages, use Alien instead!
rpm: However assuming you know what you are doing...
warning: opennms-32.0.0-0.20221101.mem.dev.196200.noarch.rpm: Header V4 DSA/SHA1 Signature, key ID 5b9efd43: NOKEY
error: Failed dependencies:
java-11-openjdk-devel is needed by opennms-32.0.0-0.20221101.mem.dev.196200.noarch
opennms-core = 32.0.0-0.20221101.mem.dev.196200 is needed by opennms-32.0.0-0.20221101.mem.dev.196200.noarch
opennms-plugin-cloud >= 1.0.0 is needed by opennms-32.0.0-0.20221101.mem.dev.196200.noarch
opennms-webui = 32.0.0-0.20221101.mem.dev.196200 is needed by opennms-32.0.0-0.20221101.mem.dev.196200.noarch
postgresql-server >= 10 is needed by opennms-32.0.0-0.20221101.mem.dev.196200.noarch
Morteza October 26, 2022 at 5:42 PM
I ran a quick test and was able to show some information regarding the Opennms integration api. For Debian package, I had to hardcode the value.
❯ dpkg-deb -I opennms_32.0.0-0.20221026.mem.dev.194534_all.deb
new Debian package, version 2.0.
size 1420 bytes: control archive=884 bytes.
1337 bytes, 22 lines control
0 bytes, 0 lines md5sums
Package: opennms
Version: 32.0.0-0.20221026.mem.dev.194534
Architecture: all
Maintainer: Benjamin Reed <ranger@opennms.org>
Installed-Size: 2
Depends: opennms-common (= 32.0.0-0.20221026.mem.dev.194534), opennms-db (= 32.0.0-0.20221026.mem.dev.194534), opennms-server (= 32.0.0-0.20221026.mem.dev.194534), opennms-webapp-jetty (= 32.0.0-0.20221026.mem.dev.194534)
Recommends: opennms-source (= 32.0.0-0.20221026.mem.dev.194534), openjdk-11-jdk-headless | openjdk-11-jdk | adoptopenjdk-11-openj9xl | adoptopenjdk-11-openj9 | adoptopenjdk-11-hotspot | java11-jdk | temurin-11-jdk
Suggests: opennms-doc
Provides: opennms-integration-api (>= 1.1.0)
Section: contrib/net
Priority: optional
Description: Enterprise-grade Open-source Network Management Platform (Full Install)
OpenNMS is an enterprise-grade network management system written in Java.
.
OpenNMS can monitor various network services to determine status and service
level availability. Data collection is performed using protocols such as SNMP
to generate reports and alert on thresholds. An extensible event management
and notification system handles both internally and externally generated
events (such as SNMP traps), and generates notices via email, pager, SMS, etc.
.
This package provides the components needed for a reasonable default
installation of OpenNMS.
❯ rpm -qipp --provides opennms-core-32.0.0-0.20221026.mem.dev.194532.noarch.rpm
warning: opennms-core-32.0.0-0.20221026.mem.dev.194532.noarch.rpm: Header V4 DSA/SHA1 Signature, key ID 5b9efd43: NOKEY
Name : opennms-core
Version : 32.0.0
Release : 0.20221026.mem.dev.194532
Architecture: noarch
Install Date: (not installed)
Group : Applications/System
Size : 755771756
License : LGPL/AGPL
Signature : DSA/SHA1, Wed 26 Oct 13:04:30 2022, Key ID 57801f6f5b9efd43
Source RPM : opennms-32.0.0-0.20221026.mem.dev.194532.src.rpm
Build Date : Wed 26 Oct 13:00:57 2022
Build Host : 2d11f5a8c5e1
Relocations : /opt/opennms /var/opennms /var/log/opennms
URL : http://www.opennms.org/
Summary : The core OpenNMS backend.
Description :
The core backend. This package contains the main daemon responsible
for discovery, polling, data collection, and notifications (ie,
anything that is not part of the web UI).
If you want to be able to view your data, you will need to install
the webapp package.
The logs and data directories are relocatable. By default, they are:
logs: /var/log/opennms
data: /var/opennms
If you wish to install them to an alternate location, use the --relocate rpm
option, like so:
rpm -i --relocate /var/log/opennms=/mnt/netapp/opennms-logs opennms-core.rpm
This is an OpenNMS build from the mem/dev branch. For a complete log, see:
https://github.com/OpenNMS/opennms/commit/cce084d943c7753df7f24c0455baf61161f6aaa6
config(opennms-core) = 32.0.0-0.20221026.mem.dev.194532
opennms-core = 32.0.0-0.20221026.mem.dev.194532
opennms-integration-api = 1.1.0
opennms-plugin-protocol-dhcp = 32.0.0-0.20221026.mem.dev.194532
opennms-plugin-protocol-xml = 32.0.0-0.20221026.mem.dev.194532
perl(PagerEmailAddresses)
Fixed
Details
Assignee
MortezaMortezaReporter
Jeff GehlbachJeff GehlbachHB Grooming Date
Oct 25, 2022HB Backlog Status
Refined BacklogSprint
NoneFix versions
Priority
Minor
Details
Details
Assignee
Morteza
MortezaReporter
Jeff Gehlbach
Jeff GehlbachHB Grooming Date
Oct 25, 2022
HB Backlog Status
Refined Backlog
Sprint
None
Fix versions
Priority
PagerDuty
PagerDuty Incident
PagerDuty
PagerDuty Incident
PagerDuty

PagerDuty Incident
Created October 25, 2022 at 4:50 PM
Updated November 7, 2022 at 3:21 PM
Resolved November 7, 2022 at 3:21 PM
In support of the cloud plugin today, and the whole ecosystem of plugins down the road, Horizon packages (RPM and DEB for Core, Minion, and Sentinel) need to provide a dependency package for the OpenNMS plugin API, with its version set to whichever OPA version ships in the Horizon version in question (i.e. the value of the POM property
opennmsApiVersion
)