%define plugin check_raid
Summary: Nagios plugin to check current server's RAID status
Name: nagios-plugin-%{plugin}
-Version: 3.0
-Release: 0.1
+Version: 3.2.3
+Release: 1
License: GPL v2
Group: Networking
-#Source0: https://github.com/glensc/nagios-plugin-check_raid/tarball/%{version}/%{plugin}-%{version}.tgz
-Source0: https://github.com/glensc/nagios-plugin-check_raid/tarball/master/%{plugin}-%{version}.tgz
-# Source0-md5: df0a73c32c4bec3a7faa1fc35cb26a06
+Source0: https://github.com/glensc/nagios-plugin-check_raid/archive/%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 7d253a3e8b8c8b4ca9aeae7c4e11e0fc
URL: https://github.com/glensc/nagios-plugin-check_raid
+BuildRequires: rpmbuild(macros) >= 1.685
+Requires: grep
Requires: nagios-common
Requires: perl-base >= 1:5.8.0
-Requires: sudo
+Requires: sed >= 4.0
+Requires: sudo >= 1:1.8.7-2
Suggests: CmdTool2
Suggests: arcconf
Suggests: areca-cli
Suggests: cciss_vol_status
Suggests: hpacucli
+Suggests: lsscsi
Suggests: megacli-sas
Suggests: megarc-scsi
Suggests: mpt-status
Suggests: smartmontools
Suggests: tw_cli-9xxx
+# cciss_vol_status 1.10 can process /dev/sdX instead of only /dev/sgX
+Conflicts: cciss_vol_status < 1.10
BuildArch: noarch
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _sysconfdir /etc/nagios/plugins
+%define nrpeddir /etc/nagios/nrpe.d
%define plugindir %{_prefix}/lib/nagios/plugins
%description
%prep
%setup -qc
-mv *-nagios-plugin-check_raid-*/* .
+mv nagios-plugin-check_raid-*/* .
%build
ver=$(./%{plugin}.pl -V)
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{plugindir}}
+install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{nrpeddir},%{plugindir}}
install -p %{plugin}.pl $RPM_BUILD_ROOT%{plugindir}/%{plugin}
cp -p %{plugin}.cfg $RPM_BUILD_ROOT%{_sysconfdir}/%{plugin}.cfg
+touch $RPM_BUILD_ROOT%{nrpeddir}/%{plugin}.cfg
%clean
rm -rf $RPM_BUILD_ROOT
%post
-if [ "$1" = 1 ]; then
+# setup sudo rules:
+# - on first install
+# - if separate config file is used
+grep -q '^#includedir /etc/sudoers\.d' /etc/sudoers && confd=1
+
+if [ "$1" = 1 -o "$confd" = 1 ]; then
# setup sudo rules on first install
%{plugindir}/%{plugin} -S || :
fi
%{__sed} -i -e '/CHECK_RAID/d' /etc/sudoers
fi
+%triggerpostun -- %{name} < 3.1.1-0.2, sudo < 1:1.8.7-2
+if grep -q '^#includedir /etc/sudoers\.d' /etc/sudoers; then
+ # setup sudo rules on first install
+ %{plugindir}/%{plugin} -S || :
+fi
+# remove CHECK_RAID rules from /etc/sudoers if separate config is in place
+if [ -e /etc/sudoers.d/check_raid ]; then
+ %{__sed} -i -e '/CHECK_RAID/d' /etc/sudoers
+fi
+
+%triggerin -- nagios-nrpe
+%nagios_nrpe -a %{plugin} -f %{_sysconfdir}/%{plugin}.cfg
+
+%triggerun -- nagios-nrpe
+%nagios_nrpe -d %{plugin} -f %{_sysconfdir}/%{plugin}.cfg
+
%files
%defattr(644,root,root,755)
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{plugin}.cfg
%attr(755,root,root) %{plugindir}/%{plugin}
+%ghost %{nrpeddir}/%{plugin}.cfg