Name: icingadb Version: 1.5.0 Release: 1%{dist} Summary: Icinga configuration and state database supporting multiple environments Group: Productivity/Databases/Daemons License: GPLv2 URL: https://icinga.com Source0: icingadb-1.5.0.tgz Source1: icingadb.service Source2: icingadb-rpm.tgz BuildRequires: gcc BuildRequires: systemd-rpm-macros BuildRequires: compiler(go-compiler) Requires(pre): shadow-utils %description Icinga DB is a set of components for publishing, synchronizing and visualizing monitoring data in the Icinga ecosystem. This is the Icinga DB daemon, which synchronizes monitoring data between a RedisĀ® server and a database. %define debug_package %{nil} %prep %autosetup -p0 install -d sources tar -C sources -xzvf %_topdir/SOURCES/icingadb-rpm.tgz %build sed -i s@/usr/sbin@/usr/sbin@g %_topdir/SOURCES/icingadb.service go build -buildvcs=false -trimpath -o . ./cmd/... cd sources/SELinux for variant in mls targeted; do make NAME=${variant} -f /usr/share/selinux/devel/Makefile mv icingadb.pp icingadb.pp.${variant} make NAME=${variant} -f /usr/share/selinux/devel/Makefile clean done cd - %install install -Dpm 0755 icingadb %{buildroot}/usr/sbin/icingadb install -Dpm 0755 icingadb-migrate %{buildroot}/usr/sbin/icingadb-migrate install -dm 0750 %{buildroot}/etc/icingadb install -pm 0640 config.example.yml %{buildroot}/etc/icingadb/config.yml install -Dpm 0644 %_topdir/SOURCES/icingadb.service %{buildroot}/usr/lib/systemd/system/icingadb.service install -dm 0755 %{buildroot}/usr/share/icingadb cp -rv schema %{buildroot}/usr/share/icingadb/ install -dm 0755 %{buildroot}/usr/share/doc/icingadb cp -v README.md %{buildroot}/usr/share/doc/icingadb/ cp -rv doc %{buildroot}/usr/share/doc/icingadb/ cd sources/SELinux for variant in mls targeted; do install -Dpm 644 icingadb.pp.${variant} %{buildroot}/usr/share/selinux/${variant}/icingadb.pp done cd - %pre getent passwd icingadb >/dev/null || useradd -rU -d /etc/icingadb -s /sbin/nologin icingadb %post if [ $1 -eq 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then /usr/lib/systemd/systemd-update-helper install-system-units icingadb.service || : fi %preun if [ $1 -eq 0 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then /usr/lib/systemd/systemd-update-helper remove-system-units icingadb.service || : fi %postun if [ $1 -ge 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then /usr/lib/systemd/systemd-update-helper mark-restart-system-units icingadb.service || : fi %files %license LICENSE /usr/share/doc/icingadb /usr/sbin/icingadb /usr/sbin/icingadb-migrate /usr/lib/systemd/system/icingadb.service /usr/share/icingadb %attr(-, icingadb, root) /etc/icingadb %attr(-, icingadb, root) %config(noreplace) /etc/icingadb/config.yml %package selinux Summary: SELinux policy module for Icinga DB Group: System/Base Requires: icingadb = 1.5.0-1%{?dist} Requires: selinux-policy Requires: icinga-selinux-common Requires(post): policycoreutils Requires(postun): policycoreutils BuildArch: noarch BuildRequires: checkpolicy BuildRequires: selinux-policy-devel %description selinux SELinux policy module for Icinga DB daemon. %post selinux for variant in mls targeted; do /usr/sbin/semodule --store ${variant} --install /usr/share/selinux/${variant}/icingadb.pp &> /dev/null || : done /sbin/fixfiles -R icingadb restore &> /dev/null || : %postun selinux if [ $1 -eq 0 ]; then for variant in mls targeted; do /usr/sbin/semodule --store ${variant} --remove icingadb &> /dev/null || : done /sbin/fixfiles -R icingadb restore &> /dev/null || : fi %files selinux /usr/share/selinux/mls/icingadb.pp /usr/share/selinux/targeted/icingadb.pp %changelog * Tue Nov 18 2025 Icinga GmbH - 1.5.0-1 - Version 1.5.0-1