]> git.pld-linux.org Git - packages/nagios-plugin-check_raid.git/blame - nagios-plugin-check_raid.spec
rel 2; more aacraid improvements (from git)
[packages/nagios-plugin-check_raid.git] / nagios-plugin-check_raid.spec
CommitLineData
d207195d
ER
1# TODO
2# - see and adopt: http://gist.github.com/359890
33a1c413
ER
3%define plugin check_raid
4Summary: Nagios plugin to check current server's RAID status
5Name: nagios-plugin-%{plugin}
35562ff8 6Version: 4.0.10
a222c107 7Release: 2
81a52836 8License: GPL v2
77a58f21 9Group: Applications
d170d566 10Source0: https://github.com/glensc/nagios-plugin-check_raid/archive/%{version}/%{name}-%{version}.tar.gz
35562ff8 11# Source0-md5: 44d42b711ea234f69c1103f731a4c461
a222c107 12Patch0: aacraid.patch
5fe36881 13Patch1: bbu.patch
eb3c08b9 14URL: https://github.com/glensc/nagios-plugin-check_raid
5c7c0008 15BuildRequires: perl-ExtUtils-MakeMaker-CPANfile
f95c3387 16BuildRequires: perl-Module-Pluggable >= 5.1
b58f13f9
ER
17BuildRequires: perl-Monitoring-Plugin >= 0.37
18BuildRequires: rpm-perlprov >= 4.1-13
3745f267
ER
19BuildRequires: rpmbuild(macros) >= 1.685
20Requires: grep
b6d14fcc 21Requires: nagios-common
7c0f1466 22Requires: perl-base >= 1:5.8.0
3745f267 23Requires: sed >= 4.0
59ac65dd 24Requires: sudo >= 1:1.8.7-2
d0bfad7a 25Suggests: CmdTool2
81a52836 26Suggests: arcconf
bba37da2 27Suggests: areca-cli
c28807f0 28Suggests: cciss_vol_status
047af81a 29Suggests: hpacucli
59ac65dd 30Suggests: lsscsi
6aac77a0 31Suggests: megacli-sas
d0bfad7a 32Suggests: megarc-scsi
81a52836 33Suggests: mpt-status
21a9ecca 34Suggests: mvcli
a0df8e50 35Suggests: smartmontools
81a52836 36Suggests: tw_cli-9xxx
59ac65dd
ER
37# cciss_vol_status 1.10 can process /dev/sdX instead of only /dev/sgX
38Conflicts: cciss_vol_status < 1.10
a4cec8c3 39Conflicts: nagios-nrpe < 2.15-5
33a1c413
ER
40BuildArch: noarch
41BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42
43%define _sysconfdir /etc/nagios/plugins
3745f267 44%define nrpeddir /etc/nagios/nrpe.d
33a1c413
ER
45%define plugindir %{_prefix}/lib/nagios/plugins
46
47%description
1d167ca8
ER
48This plugin chekcs Check all RAID volumes (hardware and software) that
49can be identified.
33a1c413 50
67c765ab 51Supports:
94679d3f 52- AIX software RAID via lsvg
bba37da2
ER
53- Adaptec AAC RAID via aaccli or afacli or arcconf
54- Areca SATA RAID Support
55- HP Smart Array (MSA1500) via serial line
94679d3f
ER
56- HP Smart Array Controllers and MSA Controllers via hpacucli (see
57 hapacucli readme)
bba37da2
ER
58- HP/Compaq Smart Array via cciss_vol_status (hpsa supported too)
59- LSI Logic MegaRAID SAS series via MegaCli
60- LSI MegaRaid via lsraid
94679d3f
ER
61- Linux 3ware SATA RAID via tw_cli
62- Linux DPT/I2O hardware RAID controllers via /proc/scsi/dpt_i2o
63- Linux GDTH hardware RAID controllers via /proc/scsi/gdth
bba37da2 64- Linux LSI MegaRaid hardware RAID via /proc/megaraid
94679d3f
ER
65- Linux LSI MegaRaid hardware RAID via CmdTool2
66- Linux LSI MegaRaid hardware RAID via megarc
94679d3f 67- Linux MPT hardware RAID via mpt-status
5de6f208 68- Linux Device Mapper
bba37da2 69- Linux MegaIDE hardware RAID controllers via /proc/megaide
94679d3f 70- Linux software RAID (md) via /proc/mdstat
bba37da2 71- SAS2IRCU support
94679d3f
ER
72- Serveraid IPS via ipssend
73- Solaris software RAID via metastat
67c765ab 74
33a1c413 75%prep
59ac65dd
ER
76%setup -qc
77mv nagios-plugin-check_raid-*/* .
f189a9e6 78%patch0 -p1
5fe36881 79%patch1 -p1
c1a6298c 80
35562ff8
ER
81# set version
82%{__sed} -i -e '
83 s#my $VERSION = q.*;#my $VERSION = q/%{version}-%{release}/;#
84' bin/%{plugin}.pl
85
04e7eccc 86%build
b58f13f9
ER
87# version check exits with "3", here's explanation:
88# https://github.com/monitoring-plugins/monitoring-plugins/pull/1363
89ver=$(./%{plugin}.sh -V || :)
35562ff8 90test "$(echo "$ver" | awk '{print $NF}')" = %{version}-%{release}
c1a6298c 91
a9655cbc 92LC_ALL=en_US.utf8 \
b58f13f9
ER
93%{__perl} Makefile.PL \
94 INSTALLVENDORSCRIPT=%{plugindir} \
95 INSTALLDIRS=vendor
96%{__make}
97
33a1c413
ER
98%install
99rm -rf $RPM_BUILD_ROOT
bd50b177 100install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{nrpeddir},%{plugindir},/etc/sudoers.d}
b58f13f9
ER
101%{__make} install \
102 DESTDIR=$RPM_BUILD_ROOT
103
104cp -p %{plugin}.cfg $RPM_BUILD_ROOT%{_sysconfdir}
cc8cea24 105touch $RPM_BUILD_ROOT%{nrpeddir}/%{plugin}.cfg
bd50b177 106touch $RPM_BUILD_ROOT/etc/sudoers.d/check_raid
33a1c413 107
bd50b177 108# remove .pl extension
b58f13f9
ER
109mv $RPM_BUILD_ROOT%{plugindir}/%{plugin}{.pl,}
110
111# cleanup
112%{__rm} $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
113%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/App/Monitoring/Plugin/CheckRaid/.packlist
114
33a1c413
ER
115%clean
116rm -rf $RPM_BUILD_ROOT
117
70176926 118%post
59ac65dd
ER
119# setup sudo rules:
120# - on first install
121# - if separate config file is used
122grep -q '^#includedir /etc/sudoers\.d' /etc/sudoers && confd=1
123
46a85d79 124if [ "$1" = 1 ] || [ "$1" = "configure" ] || [ "$confd" = 1 ]; then
70176926
ER
125 %{plugindir}/%{plugin} -S || :
126fi
127
128%postun
46a85d79 129if [ "$1" = "0" ] || [ "$1" = "remove" ]; then
70176926
ER
130 # remove all sudo rules related to us
131 %{__sed} -i -e '/CHECK_RAID/d' /etc/sudoers
132fi
133
59ac65dd
ER
134%triggerpostun -- %{name} < 3.1.1-0.2, sudo < 1:1.8.7-2
135if grep -q '^#includedir /etc/sudoers\.d' /etc/sudoers; then
59ac65dd
ER
136 %{plugindir}/%{plugin} -S || :
137fi
138# remove CHECK_RAID rules from /etc/sudoers if separate config is in place
139if [ -e /etc/sudoers.d/check_raid ]; then
140 %{__sed} -i -e '/CHECK_RAID/d' /etc/sudoers
141fi
142
3745f267
ER
143%triggerin -- nagios-nrpe
144%nagios_nrpe -a %{plugin} -f %{_sysconfdir}/%{plugin}.cfg
145
146%triggerun -- nagios-nrpe
147%nagios_nrpe -d %{plugin} -f %{_sysconfdir}/%{plugin}.cfg
148
33a1c413
ER
149%files
150%defattr(644,root,root,755)
34952916 151%attr(640,root,nagios) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{plugin}.cfg
33a1c413 152%attr(755,root,root) %{plugindir}/%{plugin}
3745f267 153%ghost %{nrpeddir}/%{plugin}.cfg
bd50b177 154%ghost /etc/sudoers.d/check_raid
b58f13f9
ER
155%dir %{perl_vendorlib}/App/Monitoring
156%dir %{perl_vendorlib}/App/Monitoring/Plugin
157%{perl_vendorlib}/App/Monitoring/Plugin/CheckRaid.pm
158%{perl_vendorlib}/App/Monitoring/Plugin/CheckRaid
This page took 0.140135 seconds and 5 git commands to generate.