Files
rpms/fedora/SPECS/pnp4nagios.spec

172 lines
5.6 KiB
RPMSpec
Raw Normal View History

# if not defined, we use icinga as dependency:
%define mon icinga
# command to install:
# rpmbuild -ba --define "with_nagios 1" --sign SPECS/pnp4nagios.spec
%{?with_nagios:%define mon nagios}
Name: pnp4nagios
Version: 0.6.25
Release: 1003%{?dist}
Summary: Nagios/Icinga performance data analysis tool
Group: Applications/System
License: GPLv2
URL: http://www.%{name}.org/
Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
Source1: %{name}.logrotate.conf
Source2: %{name}-npcd.sysvinit
Source3: %{name}-README.fedora
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: autoconf, automake, libtool
BuildRequires: rrdtool-perl
BuildRequires: perl(Time::HiRes)
Requires: %mon
Requires: rrdtool-perl
Requires: php-gd
Requires(post): chkconfig
Requires(preun): chkconfig
Requires(preun): initscripts
Requires(postun): initscripts
Provides: /bin/perl
%description
PNP is an addon to nagios which analyzes performance data provided by plugins
and stores them automatically into RRD-databases.
%prep
%setup -q
autoreconf
cp -p %{SOURCE3} README.fedora
sed -i -e 's/^INSTALL_OPTS="-o %{mon} -g %{mon}"/INSTALL_OPTS=""/' configure
sed -i -e '/^\t$(MAKE) strip-post-install$/d' src/Makefile.in
%build
%configure --bindir=%{_sbindir} \
--libexecdir=%{_libexecdir}/%{name} \
--sysconfdir=%{_sysconfdir}/%{name} \
--localstatedir=%{_localstatedir}/log/%{name} \
--datadir=%{_datadir}/%{name}/html \
--datarootdir=%{_datadir}/%{name}/html \
--with-perfdata-dir=%{_localstatedir}/lib/%{name} \
--with-perfdata-spool-dir=%{_localstatedir}/spool/%{name} \
--with-nagios_user=%{mon} \
--with-nagios_group=%{mon}
make %{?_smp_mflags} all
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
make install-config DESTDIR=$RPM_BUILD_ROOT
# remove -sample from filename suffix
for i in $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/*-sample \
$RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/*/*-sample
do
mv ${i} ${i%%-sample}
done
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/config.php.*
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/config_local.php
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/spool/%{name}
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/%{name}
install -Dp -m 0644 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/%{name}
install -Dp -m 0755 %{SOURCE2} $RPM_BUILD_ROOT%{_initrddir}/npcd
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d
sed 's|/usr/local/nagios/etc/htpasswd.users|/etc/%{mon}/passwd|' \
sample-config/httpd.conf \
> $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/%{name}.conf
mkdir -p $RPM_BUILD_ROOT%{_libdir}/%{mon}/brokers
mv $RPM_BUILD_ROOT%{_libdir}/npcdmod.o \
$RPM_BUILD_ROOT%{_libdir}/%{mon}/brokers/npcdmod.o
mv $RPM_BUILD_ROOT%{_prefix}/man $RPM_BUILD_ROOT%{_datadir}/
# Move kohana to pnp4nagios, there is another kohana in fedore/EPEL,
# which can be installed.
mv $RPM_BUILD_ROOT%{_libdir}/kohana \
$RPM_BUILD_ROOT%{_datadir}/%{name}/html/kohana
sed -i 's|%{_libdir}/kohana|%{_datadir}/%{name}/html/kohana|' \
$RPM_BUILD_ROOT%{_datadir}/%{name}/html/index.php
%clean
rm -rf $RPM_BUILD_ROOT
%post
/sbin/chkconfig --add npcd
%preun
if [ $1 = 0 ]; then
/sbin/service npcd stop >/dev/null 2>&1
/sbin/chkconfig --del npcd
fi
%postun
if [ "$1" -ge "1" ]; then
/sbin/service npcd condrestart >/dev/null 2>&1 || :
fi
%files
%defattr(644,root,root,755)
%doc AUTHORS ChangeLog COPYING INSTALL README README.fedora
%doc THANKS contrib/
%dir %{_sysconfdir}/%{name}
%config(noreplace) %attr(0640,root,%{mon}) %{_sysconfdir}/%{name}/process_perfdata.cfg
%config(noreplace) %{_sysconfdir}/%{name}/background.pdf
%config(noreplace) %{_sysconfdir}/%{name}/check_commands/*.cfg
%config(noreplace) %{_sysconfdir}/%{name}/config.d
%config(noreplace) %{_sysconfdir}/%{name}/config.php
%config(noreplace) %{_sysconfdir}/%{name}/misccommands.cfg
%config(noreplace) %{_sysconfdir}/%{name}/nagios.cfg
%config(noreplace) %{_sysconfdir}/%{name}/npcd.cfg
%config(noreplace) %{_sysconfdir}/%{name}/pages/*
%config(noreplace) %{_sysconfdir}/%{name}/rra.cfg
%config %{_sysconfdir}/%{name}/pnp4nagios_release
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}.conf
%attr(755,root,root) %{_initrddir}/npcd
%attr(755,root,root) %{_sbindir}/npcd
%{_libdir}/%{mon}/brokers/npcdmod.o
%dir %{_libexecdir}/%{name}
%attr(755,root,root) %{_libexecdir}/%{name}/*
%attr(755,%{mon},%{mon}) %{_localstatedir}/lib/%{name}
%attr(755,%{mon},%{mon}) %{_localstatedir}/log/%{name}
%attr(755,%{mon},%{mon}) %{_localstatedir}/spool/%{name}
%{_datadir}/%{name}/html/application
%{_datadir}/%{name}/html/documents
%{_datadir}/%{name}/html/index.php
%{_datadir}/%{name}/html/media
%{_datadir}/%{name}/html/templates.dist
%{_datadir}/%{name}/html/templates
%{_datadir}/%{name}/html/templates.special
# Remove install check script
# as it is not required if all dependencies are met.
%exclude %{_datadir}/%{name}/html/install.php
%{_mandir}/man8/*
# This is a different version of Kohana like in Fedora/EPEL.
# Needed for pnp4nagios web interface to work.
%{_datadir}/%{name}/html/kohana
%changelog
* Thu Apr 23 2015 <elpito@bluewin.ch>
- New perl version.
* Tue Feb 24 2015 <elpito@bluewin.ch>
- New perl version.
* Thu Jan 8 2015 <elpito@bluewin.ch>
- Update to 0.6.25.
* Fri Oct 17 2014 <elpito@bluewin.ch>
- Perl version changed on system.
* Thu Aug 7 2014 <elpito@bluewin.ch>
- Update to 0.6.24.
* Fri Jul 11 2014 <elpito@bluewin.ch>
- Update to 0.6.22.
* Sat Dec 7 2013 <elpito@bluewin.ch>
- New package.