Hello folks,
I have some additional OIDs for Cisco ASA and IOS devices that I would like to share with the community. I tried to set up a dev environment for this purpose.
After installing a fresh Debian 13 and following the installation guide successfully, I went through the additional guide for contributions and failed at this command: ./lnms dev:check
The output should look like this: Tests ok, submit away :)
But I see some errors on a freshly installed LibreNMS at the end of running the dev:check command:
ERRORS! Tests: 4075, Assertions: 7610, Errors: 217, Failures: 3, Skipped: 2754, Risky: 4.
Output from ./validate.php:
Component Version
LibreNMS 26.3.1 (2026-04-13T21:37:48+02:00)
DB Schema 2026_04_02_141445_add_ssl_certificate_update_permission (381)
PHP 8.4.16
Python 3.13.5
Database MariaDB 11.8.6-MariaDB-0+deb13u1 from Debian
RRDTool 1.7.2
SNMP 5.9.4.pre2
[OK] Composer Version: 2.9.7
[OK] Dependencies up-to-date.
[WARN] Debug enabled. This is a security risk.
[WARN] You have no devices.
[FIX]: Consider adding a device such as localhost: http://10.0.1.65/addhost
[OK] Database Connected
[OK] Database Schema is current
[OK] SQL Server meets minimum requirements
[OK] lower_case_table_names is enabled
[OK] MySQL engine is optimal
[OK] Database and column collations are correct
[OK] Database schema correct
[OK] MySQL and PHP time match
[OK] Locks are functional
[OK] Python poller wrapper is polling
[OK] Redis is unavailable
[OK] rrd_dir is writable
[OK] rrdtool version ok
[WARN] Your local git contains modified files, this could prevent automatic updates.
[FIX]: You can fix this with ./scripts/github-remove
Modified Files:
LibreNMS/Alert/RunAlerts.php
LibreNMS/Authentication/LegacyAuth.php
LibreNMS/DB/SyncsModels.php
LibreNMS/Data/Store/InfluxDB.php
LibreNMS/Discovery/YamlDiscoveryDefinition.php
LibreNMS/Exceptions/DatabaseInconsistentException.php
LibreNMS/Interfaces/Discovery/EntityPhysicalDiscovery.php
LibreNMS/Interfaces/Discovery/Ipv4AddressDiscovery.php
LibreNMS/Interfaces/Discovery/Ipv6AddressDiscovery.php
LibreNMS/Interfaces/Discovery/MacAccountingDiscovery.php
LibreNMS/Modules/PortSecurity.php
LibreNMS/Modules/UcdDiskio.php
LibreNMS/OS/Aos6.php
LibreNMS/OS/Aos7.php
LibreNMS/OS/Awplus.php
and 455 moreā¦
Side question for the community: Is there a straightforward way for a non-developer to set up a working dev environment just to contribute additional OIDs (e.g. YAML-based sensor definitions for Cisco ASA/IOS)? Ideally something like a step-by-step guide or a ready-to-use VM/container image where ./lnms dev:check passes cleanly out of the box, so that contributors without a deep development background can focus on the actual OID work rather than fighting the toolchain. Any pointers would be greatly appreciated!