From 8772537c3510a51e476d13af75ddb5fa76519269 Mon Sep 17 00:00:00 2001 From: Toshaan Bharvani Date: Wed, 14 Aug 2024 11:46:38 +0200 Subject: [PATCH] initial package creation Signed-off-by: Toshaan Bharvani --- SOURCES/.gitkeeper | 0 SPECS/icingaweb2-module-director.spec | 92 +++++++++++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 SOURCES/.gitkeeper create mode 100644 SPECS/icingaweb2-module-director.spec diff --git a/SOURCES/.gitkeeper b/SOURCES/.gitkeeper new file mode 100644 index 0000000..e69de29 diff --git a/SPECS/icingaweb2-module-director.spec b/SPECS/icingaweb2-module-director.spec new file mode 100644 index 0000000..7517539 --- /dev/null +++ b/SPECS/icingaweb2-module-director.spec @@ -0,0 +1,92 @@ +%global module_name director +%global icingaweb_min_version 2.10.3 +%global basedir %{_datadir}/icingaweb2/modules/%{module_name} + +Name: icingaweb2-module-%{module_name} +Version: 1.11.1 +Release: 1%{?dist} +Summary: Configuration deployment tool in the Icinga ecosystem +Group: Applications/System +License: GPLv2+ +URL: https://icinga.com +Source0: https://github.com/Icinga/icingaweb2-module-%{module_name}/archive/v%{version}.tar.gz +BuildArch: noarch +Requires: icingaweb2 >= %{icingaweb_min_version} +Requires: php-Icinga >= %{icingaweb_min_version} +Requires: icingaweb2-module-%{module_name}-daemon = %{version}-%{release} + + +%description +Icinga Director is the configuration deployment tool in the Icinga ecosystem, +designed for automating configuration deployments, +but also for making changes directly in the webinterface. + + +%package daemon +Requires(pre): shadow-utils +Requires: icingaweb2-module-%{module_name} = %{version}-%{release} +Requires: icingacli >= %{icingaweb_min_version} +Requires: php-process +Summary: Icinga Director daemon files +%description daemon +Daemon files for Icinga Director. + + +%prep +%autosetup + + +%build + + +%install +rm -rf %{buildroot} +mkdir -p %{buildroot}%{basedir} +cp -r * %{buildroot}%{basedir} +install -Dpm 0644 contrib/systemd/icinga-director.service %{buildroot}%{_unitdir}/icinga-director.service +install -dm 0750 %{buildroot}/var/lib/icingadirector + + +%preun +if [ $1 == 0 ]; then +rm -f /etc/icingaweb2/enabledModules/director +fi +%post +if [ $1 == 1 ]; then +if [ ! -d /etc/icingaweb2/enabledModules ]; then +install -dm 2770 -g icingaweb2 /etc/icingaweb2/enabledModules +fi +ln -sf /usr/share/icingaweb2/modules/director /etc/icingaweb2/enabledModules/director +fi + + +%pre daemon +getent passwd icingadirector >/dev/null || useradd -r -G icingaweb2 -d /var/lib/icingadirector -s /sbin/nologin icingadirector +%post daemon +if [ $1 -eq 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then +/usr/lib/systemd/systemd-update-helper install-system-units icinga-director.service || : +fi +%preun daemon +if [ $1 -eq 0 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then +/usr/lib/systemd/systemd-update-helper remove-system-units icinga-director.service || : +fi +%postun daemon +if [ $1 -ge 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then +/usr/lib/systemd/systemd-update-helper mark-restart-system-units icinga-director.service || : +fi +test "$1" != 0 || userdel -rf icingadirector &>/dev/null || : + + +%files +%doc README.md +%docdir %{_datadir}/icingaweb2/modules/%{module_name}/doc +%license LICENSE +%{_datadir}/icingaweb2/modules/%{module_name}/ + + +%files daemon +/usr/lib/systemd/system/icinga-director.service +%attr(-,icingadirector,icingaweb2) /var/lib/icingadirector + + +%changelog