summaryrefslogtreecommitdiffstats
path: root/monitoring-plugins.spec.in
blob: f00349827433b1b8821c04032a6fe572f385cb94 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
# Macros
%define isaix %(test "`uname -s`" = "AIX" && echo "1" || echo "0")
%define islinux %(test "`uname -s`" = "Linux" && echo "1" || echo "0")
%define isredhatfamily %(test -f /etc/redhat-release && echo "1" || echo "0")

%if %{isaix}
	%define _prefix /opt/nagios
#	%define _defaultdocdir %{_datadir}/doc
%else
	%define _libexecdir %{_exec_prefix}/lib/nagios/plugins
%endif
%define _sysconfdir /etc/nagios

%define npusr nagios
%define nphome /opt/nagios
%define npgrp nagios

Name: monitoring-plugins
Version: @PACKAGE_VERSION@
Release: @RELEASE@
Summary: Host/service/network monitoring program plugins for Nagios and compatible

Group: Applications/System
License: GPL
URL: https://www.monitoring-plugins.org/
Source0: https://www.monitoring-plugins.org/download/%{name}-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

%define npdir %{_builddir}/%{name}-%{version}

%if %{isaix}
Prefix: %{_prefix}
%else
Prefix: %{_prefix}/lib/nagios/plugins
%endif
Packager: Karl DeBisschop <kdebisschop@users.sourceforge.net>
Vendor: Monitoring Plugins Development Team
Provides: monitoring-plugins

%{!?custom:%global custom 0}
Obsoletes: monitoring-plugins-custom monitoring-plugins-extras


# Requires
%if %{isaix}
Requires:	fping 
Requires:	gawk
Requires:	net-snmp 
Requires:	net-snmp-perl 
Requires:	net-snmp-utils
Requires:	openldap
Requires:	openssl
Requires:	perl
Requires:	python
Requires:	openssl
BuildRequires:	fping 
BuildRequires:	gawk
BuildRequires:	net-snmp 
BuildRequires:	net-snmp-perl 
BuildRequires:	net-snmp-utils
BuildRequires:	openldap-devel
%endif
%if %{isredhatfamily}
Requires:	bind-utils
Requires:	coreutils
Requires:	fping 
Requires:	gawk
Requires:	grep
Requires:	iputils
Requires:	mysql
Requires:	net-snmp-utils
Requires:	ntp
Requires:	openldap
Requires:	openssl
Requires:	openssh-clients
Requires:	perl
Requires:	postgresql-libs
Requires:	procps
Requires:	python
Requires:	samba-client
Requires:	shadow-utils
Requires:	traceroute
Requires:	/usr/bin/mailq
BuildRequires:	bind-utils
BuildRequires:	coreutils
BuildRequires:	iputils
BuildRequires:	mysql-devel
BuildRequires:	net-snmp-utils
BuildRequires:	net-tools
BuildRequires:	ntp
BuildRequires:	openldap-devel
BuildRequires:	openssh-clients
BuildRequires:	openssl-devel
BuildRequires:	postgresql-devel
BuildRequires:	procps
BuildRequires:	samba-client
BuildRequires:	/usr/bin/mailq
%endif


%description

Nagios is a program that will monitor hosts and services on your
network, and to email or page you when a problem arises or is
resolved. Nagios runs on a unix server as a background or daemon
process, intermittently running checks on various services that you
specify. The actual service checks are performed by separate "plugin"
programs which return the status of the checks to the monitoring
system. This package contains those plugins.


%prep
%setup -q


%build
%{?isaix: MAKE=gmake} ./configure \
--prefix=%{_prefix} \
--exec-prefix=%{_exec_prefix} \
--libexecdir=%{_libexecdir} \
--sysconfdir=%{_sysconfdir} \
--datadir=%{_datadir} \
--with-cgiurl=/nagios/cgi-bin
ls -1 %{npdir}/plugins > %{npdir}/ls-plugins-before
ls -1 %{npdir}/plugins-root > %{npdir}/ls-plugins-root-before
ls -1 %{npdir}/plugins-scripts > %{npdir}/ls-plugins-scripts-before
make %{?_smp_mflags}
ls -1 %{npdir}/plugins > %{npdir}/ls-plugins-after
ls -1 %{npdir}/plugins-root > %{npdir}/ls-plugins-root-after
ls -1 %{npdir}/plugins-scripts > %{npdir}/ls-plugins-scripts-after

%pre
# Create `nagios' group on the system if necessary
%if %{isaix}
lsgroup %{npgrp} > /dev/null 2> /dev/null
if [ $? -eq 2 ] ; then
	mkgroup %{npgrp} || %nnmmsg Unexpected error adding group "%{npgrp}". Aborting install process.
fi
%endif
%if %{islinux}
getent group %{npgrp} > /dev/null 2> /dev/null
if [ $? -ne 0 ] ; then
	groupadd %{npgrp} || %nnmmsg Unexpected error adding group "%{npgrp}". Aborting install process.
fi
%endif

# Create `nagios' user on the system if necessary
%if %{isaix}
lsuser %{npusr} > /dev/null 2> /dev/null
if [ $? -eq 2 ] ; then
	useradd -d %{nphome} -c "%{npusr}" -g %{npgrp} %{npusr} || \
		%nnmmsg Unexpected error adding user "%{npusr}". Aborting install process.
fi
%endif
%if %{islinux}
getent passwd %{npusr} > /dev/null 2> /dev/null
if [ $? -ne 0 ] ; then
	useradd -r -d %{nshome} -c "%{npusr}" -g %{npgrp} %{npusr} || \
		%nnmmsg Unexpected error adding user "%{npusr}". Aborting install process.
fi
%endif

%install
rm -rf $RPM_BUILD_ROOT
make AM_INSTALL_PROGRAM_FLAGS="" DESTDIR=${RPM_BUILD_ROOT} install
%find_lang %{name}
echo "%defattr(755,%{npusr},%{npgrp})" >> %{name}.lang
comm -13 %{npdir}/ls-plugins-before %{npdir}/ls-plugins-after | egrep -v "\.o$|^\." | gawk -v libexecdir=%{_libexecdir} '{printf( "%s/%s\n", libexecdir, $0);}' >> %{name}.lang
echo "%defattr(755,root,root)" >> %{name}.lang
comm -13 %{npdir}/ls-plugins-root-before %{npdir}/ls-plugins-root-after | egrep -v "\.o$|^\." | gawk -v libexecdir=%{_libexecdir} '{printf( "%s/%s\n", libexecdir, $0);}' >> %{name}.lang
echo "%defattr(755,%{npusr},%{npgrp})" >> %{name}.lang
comm -13 %{npdir}/ls-plugins-scripts-before %{npdir}/ls-plugins-scripts-after | egrep -v "\.o$|^\." | gawk -v libexecdir=%{_libexecdir} '{printf( "%s/%s\n", libexecdir, $0);}' >> %{name}.lang
echo "%{_libexecdir}/utils.pm" >> %{name}.lang
echo "%{_libexecdir}/utils.sh" >> %{name}.lang
echo "%{_libexecdir}/check_ldaps" >> %{name}.lang

sed -i '/libnpcommon/d' %{name}.lang
sed -i '/monitoring-plugins.mo/d' %{name}.lang

%clean
rm -rf $RPM_BUILD_ROOT


%files -f %{name}.lang
%config(missingok,noreplace) %{_sysconfdir}/command.cfg
%doc CODING COPYING FAQ INSTALL LEGAL README REQUIREMENTS SUPPORT THANKS
%doc ChangeLog command.cfg
%if ! %{isaix}
%{_datadir}/locale/de/LC_MESSAGES/monitoring-plugins.mo
%{_datadir}/locale/fr/LC_MESSAGES/monitoring-plugins.mo
%endif

%changelog
* Mon May 23 2005 Sean Finney <seanius@seanius.net> - cvs head
- just include the nagios plugins directory, which will automatically include
  all generated plugins (which keeps the build from failing on systems that
  don't have all build-dependencies for every plugin)
* Tue Mar 04 2004 Karl DeBisschop <karl[AT]debisschop.net> - 1.4.0alpha1
- extensive rewrite to facilitate processing into various distro-compatible specs
* Tue Mar 04 2004 Karl DeBisschop <karl[AT]debisschop.net> - 1.4.0alpha1
- extensive rewrite to facilitate processing into various distro-compatible specs