You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
80 lines
2.4 KiB
80 lines
2.4 KiB
1 year ago
|
%global provider github
|
||
|
%global provider_tld com
|
||
|
%global project Icinga
|
||
|
%global repo icinga-notifications
|
||
|
%global provider_prefix %{provider}.%{provider_tld}/%{project}/%{repo}
|
||
|
%global import_path %{provider_prefix}
|
||
|
%define debug_package %nil
|
||
|
%define configdir %{_sysconfdir}/%{name}
|
||
|
%define service %{name}.service
|
||
|
|
||
|
Name: icinga-notifications
|
||
|
Version: 0.0.1
|
||
|
Release: 1%{?dist}
|
||
|
Summary: Icinga Notifications
|
||
|
Group: System Environment/Daemons
|
||
|
License: GPLv2+
|
||
|
URL: https://%{provider_prefix}
|
||
|
#Source0: https://%{import_path}/archive/v%{version}.tar.gz
|
||
|
Source1: icinga-notifications.service
|
||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}
|
||
|
BuildRequires: gcc
|
||
|
BuildRequires: git
|
||
|
BuildRequires: systemd
|
||
|
Requires(pre): shadow-utils
|
||
|
|
||
|
|
||
|
%description
|
||
|
Icinga Notifications
|
||
|
|
||
|
|
||
|
%prep
|
||
|
%setup -q -T -c %{name}-%{version}
|
||
|
git clone https://%{provider_prefix} .
|
||
|
|
||
|
%build
|
||
|
go build -v -ldflags "-extldflags -s -w -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n') -buildid "%{version}"" -buildvcs=false -trimpath ./cmd/icinga-notifications-daemon
|
||
|
|
||
|
|
||
|
%install
|
||
|
install -d -m 0755 %{buildroot}%{_sbindir}
|
||
|
install -d -m 0755 %{buildroot}%{configdir}
|
||
|
install -d -m 0755 %{buildroot}%{_unitdir}
|
||
|
install -m 0755 icinga-notifications-daemon %{buildroot}%{_sbindir}/
|
||
|
install -m 0644 config.example.yml %{buildroot}%{configdir}/config.yml
|
||
|
install -m 0644 icinga2.conf %{buildroot}%{configdir}/icinga2-notifications.conf
|
||
|
install -m 0644 %{S:1} %{buildroot}%{_unitdir}/
|
||
|
install -d -m 0755 %{buildroot}%{_datadir}/%{name}
|
||
|
(umask 0022 && cp -rv schema %{buildroot}%{_datadir}/%{name}/)
|
||
|
|
||
|
|
||
|
%pre
|
||
|
getent group icinganotifications >/dev/null || groupadd -r icinganotifications
|
||
|
getent passwd icinganotifications >/dev/null || useradd -r -g icinganotifications -d /etc/icinganotifications -s /sbin/nologin -c 'Icinga Notifications' icinganotifications
|
||
|
%post
|
||
|
%systemd_post %{service}
|
||
|
%preun
|
||
|
%systemd_preun %{service}
|
||
|
%postun
|
||
|
%systemd_postun %{service}
|
||
|
|
||
|
|
||
|
%clean
|
||
|
rm -rf %{buildroot}
|
||
|
|
||
|
|
||
|
%files
|
||
|
%defattr(-,root,root)
|
||
|
%doc LICENSE README.md
|
||
|
%{_sbindir}/icinga-notifications-daemon
|
||
|
%{_unitdir}/%{service}
|
||
|
%dir %{_datadir}/%{name}
|
||
|
%{_datadir}/%{name}/schema
|
||
|
%defattr(0644,icinganotifications,icinganotifications,0755)
|
||
|
%dir %{configdir}
|
||
|
%config(noreplace) %{configdir}/config.yml
|
||
|
%config(noreplace) %{configdir}/icinga2-notifications.conf
|
||
|
|
||
|
|
||
|
%changelog
|