
Managing the Version Zoo: How Enodia Was Built for Service Inventory Tracking EOL and CVE Data
A DevOps engineer developed enodia, an open-source Go-based CLI tool, to solve the problem of tracking hundreds of service versions across infrastructure, including PostgreSQL, MySQL, nginx, Debian, and Jira. The tool collects real versions through product-specific probes, then cross-references them against endoflife.date calendars and CVE databases from NVD and Russia's FSTEC BDU. It separates collection and evaluation phases, uses three independent axes for status (PATCH, LIFECYCLE, BRANCH), and supports air-gapped environments by allowing offline CVE data import. Early versions of the MySQL probe caused self-blocking on servers due to connection error counting, which was fixed by completing authentication attempts. The developer contributed multiple products and historical data back to endoflife.date and added support for ten Linux distributions using vendor OVAL and Security Tracker feeds. The project is distributed as a single AGPL-3.0 binary with YAML configuration and environment-variable credential handling.
HabrOct 30, 2026Translated from Russian