Native SLES/openSUSE Support & Unified Package Repository for Zabbix SAP Plugins

Native support for openSUSE and SUSE Linux Enterprise Server (SLES) was added to both the SAP HANA and SAP Host Agent Zabbix plugins.

Since SAP workloads mostly run on SLES infrastructure, offering native SUSE support was the next step to make setup easier for enterprise monitoring.

Additionally, all packages have been unified under a single repository. Previously, packages were split across different hostnames and subdomains, which made setup scripts, automation and firewall rules harder to manage. Putting everything under one domain keeps repository management simple across different operating systems, whether provisioning Debian/Ubuntu nodes via apt, Enterprise Linux distributions via dnf/yum or SUSE systems via zypper.

Here is a breakdown of the packaging and pipeline changes needed to make this work.


Repository Metadata Signing

While individual .rpm packages were already signed with a GPG key, zypper expects repository metadata (repomd.xml) to be signed by default when adding new repositories on SUSE systems.

To make installation work without requiring manual --no-gpg-check flags or extra prompts during setup, I updated the publishing release process. Now, on top of signing every single .rpm binary, the repository metadata itself is signed with GPG during generation.


RPM Packaging & Path Adjustments

Building .rpm packages that install cleanly across Red Hat distributions and the SUSE family required a few updates to the spec files %files sections. Path layouts and macro evaluations differ enough between dnf and zypper environments to cause packaging errors or missing files if unhandled.

Additionally, recent changes in the SUSE ecosystem (such as SLES 16 and openSUSE moving toward the UsrEtc design pattern) favor placing default configuration files under /usr (e.g., /usr/etc or system unit paths) rather than modifying /etc directly. The default plugin configuration files and paths were updated so the plugins work right after installation on both older and newer SLES/openSUSE targets.


CI/CD Pipeline Automation

To keep test coverage and automated delivery equal across target platforms, new jobs for both openSUSE and SLES were added to the CI/CD pipeline.

Every build pipeline run now automatically:

  1. Compiles the Go plugin binaries.
  2. Packages them into .rpm files with SUSE-specific path structures.
  3. Tests installation and service execution using zypper.
  4. Signs both individual packages and repository metadata using GPG.

Repository Setup

To configure the new repository on any supported Linux distribution, follow the setup guide in the documentation:

Zabbix Agent 2 Plugin for SAP Agent: Repository Setup

Zabbix Agent 2 Plugin for SAP HANA: Repository Setup