]> git.pld-linux.org Git - packages/heartbeat.git/blob - heartbeat.spec
- -libs subpackage separated so whole heartbeat does not need to be installed on...
[packages/heartbeat.git] / heartbeat.spec
1 #
2 %include        /usr/lib/rpm/macros.perl
3 Summary:        Heartbeat - subsystem for High-Availability Linux
4 Summary(es.UTF-8):      Subsistema heartbeat para Linux "High-Availability"
5 Summary(pl.UTF-8):      Podsystem heartbeat dla systemów o podwyższonej niezawodności
6 Summary(pt_BR.UTF-8):   Implementa sistema de monitoração (heartbeats) visando Alta Disponibilidade
7 Name:           heartbeat
8 Version:        2.99.2
9 Release:        0.1
10 License:        GPL v2+
11 Group:          Applications/System
12 Source0:        http://hg.linux-ha.org/dev/archive/beta-%{version}.tar.bz2
13 # Source0-md5:  ef79dc10100451bfcbb55b4707d28eb1
14 Source1:        %{name}.init
15 Source2:        ldirectord.init
16 Patch0:         %{name}-ac.patch
17 Patch1:         %{name}-no_ipmilan_test.patch
18 URL:            http://www.linux-ha.org/Heartbeat
19 BuildRequires:  OpenIPMI-devel >= 2.0.3
20 BuildRequires:  autoconf
21 BuildRequires:  automake
22 BuildRequires:  gdbm-devel
23 BuildRequires:  glib2-devel
24 BuildRequires:  gnutls-devel
25 BuildRequires:  libltdl-devel
26 BuildRequires:  libnet-devel >= 1.1.0
27 BuildRequires:  libnl-devel
28 BuildRequires:  libtool
29 BuildRequires:  libuuid-devel
30 BuildRequires:  libwrap-devel
31 BuildRequires:  libxml2-devel
32 BuildRequires:  lm_sensors-devel
33 BuildRequires:  ncurses-devel >= 5.4
34 BuildRequires:  net-snmp-devel >= 5.1
35 BuildRequires:  pam-devel
36 BuildRequires:  pkgconfig
37 BuildRequires:  python-devel
38 BuildRequires:  rpm-perlprov
39 BuildRequires:  rpm-pythonprov
40 BuildRequires:  rpmbuild(macros) >= 1.268
41 BuildRequires:  swig-perl >= 1.3.25
42 BuildRequires:  swig-python >= 1.3.25
43 Requires(post,postun):  /sbin/ldconfig
44 Requires(post,preun):   /sbin/chkconfig
45 Requires(postun):       /usr/sbin/groupdel
46 Requires(postun):       /usr/sbin/userdel
47 Requires(pre):  /bin/id
48 Requires(pre):  /usr/bin/getgid
49 Requires(pre):  /usr/sbin/groupadd
50 Requires(pre):  /usr/sbin/useradd
51 Requires:       psmisc >= 22.5-2
52 Requires:       rc-scripts
53 Requires:       syslogdaemon
54 Requires:       which
55 Requires:       %{name}-libs = %{version}-%{release}
56 Provides:       group(haclient)
57 Provides:       user(hacluster)
58 # disappeared
59 Obsoletes:      perl-heartbeat
60 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
61
62 %define         specflags               -fgnu89-inline
63 %define         filterout_ld    -Wl,--as-needed
64
65 %description
66 heartbeat is a basic heartbeat subsystem for Linux-HA. It will run
67 scripts at initialization, and when machines go up or down. This
68 version will also perform IP address takeover using gratuitous ARPs.
69 It works correctly for a 2-node configuration, and is extensible to
70 larger configurations.
71
72 It implements the following kinds of heartbeats:
73  - Bidirectional Serial Rings ("raw" serial ports)
74
75 %description -l es.UTF-8
76 heartbeat es un sistema básico para Linux-HA. La función de este
77 software es ejecutar scripts en la inicialización y al apagar las
78 máquinas que lo utilizan.
79
80 %description -l pl.UTF-8
81 heartbeat jest podstawowym podsystemem dla systemów o podwyższonej
82 dostępności budowanych w oparciu o Linuksa. Zajmuje się uruchamianiem
83 skryptów podczas startu i zamykania systemu. Ta wersja pakietu pozwala
84 na przejmowanie adresów IP. Oprogramowanie działa poprawnie dla
85 konfiguracji składającej się z 2 hostów, można je również stosować do
86 bardziej skomplikowanych konfiguracji.
87
88 %package stonith
89 Summary:        Provides an interface to Shoot The Other Node In The Head
90 Summary(pl.UTF-8):      Interfejs do "odstrzelenia" drugiego węzła w klastrze
91 Group:          Applications/System
92 Requires:       OpenIPMI >= 2.0.3
93
94 %description stonith
95 Provides an interface to Shoot The Other Node In The Head.
96
97 %description stonith -l pl.UTF-8
98 STONITH (Shoot The Other Node In The Head) to interfejs służący do
99 "odstrzelenia" drugiego węzła w klastrze.
100
101 %package ldirectord
102 Summary:        Monitor virtual services provided by LVS
103 Summary(pl.UTF-8):      Demon monitorujący wirtualne usługi dostarczane poprzez LVS
104 Group:          Applications/System
105 Requires(post,preun):   /sbin/chkconfig
106 Requires:       ipvsadm
107 Requires:       rc-scripts
108
109 %description ldirectord
110 ldirectord is a stand-alone daemon to monitor services of real for
111 virtual services provided by The Linux Virtual Server
112 (http://www.linuxvirtualserver.org/).
113
114 %description ldirectord -l pl.UTF-8
115 ldirectord to samodzielny demon monitorujący rzeczywiste usługi dla
116 wirtualnych usług dostarczanych poprzez Linux Virtual Server
117 (http://www.linuxvirtualserver.org/).
118
119 %package libs
120 Summary:        Heartbeat libraries
121 Summary(pl.UTF-8):      Biblioteki heartbeat
122 Group:          Libraries
123
124 %description libs
125 Heartbeat libraries.
126
127 %description libs -l pl.UTF-8
128 Biblioteki heartbeat.
129
130 %package devel
131 Summary:        Heartbeat developement header files and libraries
132 Summary(pl.UTF-8):      Pliki nagłówkowe i biblioteki heartbeat
133 Group:          Development/Libraries
134 Requires:       %{name}-libs = %{version}-%{release}
135
136 %description devel
137 Heartbeat developement header files and libraries.
138
139 %description devel -l pl.UTF-8
140 Pliki nagłówkowe i biblioteki heartbeat.
141
142 %package static
143 Summary:        Heartbeat static libraries
144 Summary(pl.UTF-8):      Biblioteki statyczne heartbeat
145 Group:          Development/Libraries
146 Requires:       %{name}-devel = %{version}-%{release}
147
148 %description static
149 Heartbeat static libraries.
150
151 %description static -l pl.UTF-8
152 Biblioteki statyczne heartbeat.
153
154 %package cts
155 Summary:        Cluster Test Suite
156 Summary(pl.UTF-8):      Zestaw testów klastra
157 Group:          Applications/System
158 Requires:       %{name} = %{version}-%{release}
159
160 %description cts
161 Cluster Test Suite for heartbeat.
162
163 %description cts -l pl.UTF-8
164 Zestaw testów klastra opartego o heartbeat.
165
166 %prep
167 %setup -qn Linux-HA-Dev-beta-%{version}
168 %patch0 -p1
169 %patch1 -p1
170
171 rm -rf libltdl
172
173 %build
174 %{__libtoolize} --ltdl
175 %{__aclocal}
176 %{__autoconf}
177 %{__autoheader}
178 %{__automake}
179 %configure \
180         FSCK=/sbin/fsck \
181         FUSER=/bin/fuser \
182         IPTABLES=/usr/sbin/iptables \
183         MAILCMD=/bin/mail \
184         MOUNT=/bin/mount \
185         PING=/bin/ping \
186         --with-initdir=/etc/rc.d/init.d \
187         --enable-fatal-warnings=no \
188         --enable-mgmt \
189         --enable-quorumd \
190         --enable-snmp-subagent
191
192 %{__make}
193
194 %install
195 rm -rf $RPM_BUILD_ROOT
196
197 %{__make} install \
198         DESTDIR=$RPM_BUILD_ROOT
199 install -d $RPM_BUILD_ROOT/var/run/heartbeat
200
201 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/ha.d/resource.d/ldirectord
202 ln -sf %{_sbindir}/ldirectord $RPM_BUILD_ROOT%{_sysconfdir}/ha.d/resource.d/ldirectord
203
204 # plugins are lt_dlopened, but using *.so names, so *.la are not used
205 rm -f $RPM_BUILD_ROOT%{_libdir}/{heartbeat,pils,stonith}/plugins/*/*.{la,a}
206
207 rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/heartbeat
208 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/heartbeat
209
210 > $RPM_BUILD_ROOT/etc/ha.d/haresources
211 echo -e "auth 2\n2 crc" > $RPM_BUILD_ROOT/etc/ha.d/authkeys
212 install doc/ha.cf $RPM_BUILD_ROOT/etc/ha.d
213
214 rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/ldirectord
215 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/ldirectord
216 install ldirectord/ldirectord.cf $RPM_BUILD_ROOT%{_sysconfdir}/ha.d
217
218 rm -f $RPM_BUILD_ROOT%{_datadir}/heartbeat/cts/README
219
220 for tool in ha_logger hb_addnode hb_delnode hb_standby hb_takeover; do
221         ln -sf %{_libdir}/heartbeat/$tool $RPM_BUILD_ROOT%{_bindir}
222 done
223
224 sed -i -e's, /%{_lib}/libpam.la, /usr/%{_lib}/libpam.la,g' $RPM_BUILD_ROOT%{_libdir}/*.la
225
226 %clean
227 rm -rf $RPM_BUILD_ROOT
228
229 %pre
230 %groupadd -g 60 haclient
231 %useradd -u 17 -d /var/lib/heartbeat/cores/hacluster -c "Heartbeat User" -g haclient hacluster
232
233 %post
234 /sbin/ldconfig
235 /sbin/chkconfig --add heartbeat
236 %service %{name} restart
237
238 %preun
239 if [ "$1" = "0" ]; then
240         %service -q %{name} stop
241         /sbin/chkconfig --del heartbeat
242 fi
243
244 %postun
245 /sbin/ldconfig
246 if [ "$1" = "0" ]; then
247         %userremove hacluster
248         %groupremove haclient
249 fi
250
251 %post   stonith -p /sbin/ldconfig
252 %postun stonith -p /sbin/ldconfig
253
254 %files
255 %defattr(644,root,root,755)
256 %doc doc/{*.html,AUTHORS,apphbd.cf,authkeys,ha.cf,logd.cf,haresources,startstop}
257 %dir %{_libdir}/heartbeat
258 %dir %{_libdir}/heartbeat/plugins
259 %dir %{_libdir}/heartbeat/plugins/*
260 %attr(755,root,root) %{_libdir}/heartbeat/plugins/*/*.so
261 %attr(755,root,root) %{_libdir}/heartbeat/[!cp]*
262 %attr(755,root,root) %{_libdir}/heartbeat/c[!t]*
263 %dir %{_libdir}/pils
264 %dir %{_libdir}/pils/plugins
265 %dir %{_libdir}/pils/plugins/*
266 %dir %{_datadir}/heartbeat
267 %attr(755,root,root) %{_datadir}/heartbeat/BasicSanityCheck
268 %attr(755,root,root) %{_datadir}/heartbeat/ResourceManager
269 %attr(755,root,root) %{_datadir}/heartbeat/TestHeartbeatComm
270 %attr(755,root,root) %{_datadir}/heartbeat/ha_*
271 %attr(755,root,root) %{_datadir}/heartbeat/hb_*
272 %attr(755,root,root) %{_datadir}/heartbeat/lrmtest
273 %attr(755,root,root) %{_datadir}/heartbeat/mach_down
274 %attr(755,root,root) %{_datadir}/heartbeat/req_resource
275 %attr(755,root,root) %{_datadir}/heartbeat/utillib.sh
276 %{_datadir}/heartbeat/ra-api-1.dtd
277 %attr(755,root,root) %{_libdir}/pils/plugins/*/*.so
278 %dir %{_sysconfdir}/ha.d
279 %attr(755,root,root) %{_sysconfdir}/ha.d/rc.d
280 %attr(755,root,root) %{_sysconfdir}/ha.d/resource.d
281 %exclude %{_sysconfdir}/ha.d/resource.d/ldirectord
282 %{_sysconfdir}/ha.d/README.config
283 %attr(755,root,root) %{_sysconfdir}/ha.d/harc
284 %{_sysconfdir}/ha.d/shellfuncs
285 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/heartbeat
286 %attr(754,root,root) /etc/rc.d/init.d/heartbeat
287 %attr(755,root,root) %{_prefix}/lib/ocf
288 %dir /var/run/heartbeat
289 %attr(750,hacluster,haclient) %dir /var/run/heartbeat/ccm
290 %dir /var/lib/heartbeat
291 %attr(770,root,haclient) %dir /var/lib/heartbeat/lrm
292 %attr(711,root,root) %dir /var/lib/heartbeat/cores
293 %attr(700,root,root) %dir /var/lib/heartbeat/cores/root
294 # we don't want any files owned by nobody
295 %attr(700,root,root) %dir /var/lib/heartbeat/cores/nobody
296 %attr(700,hacluster,root) %dir /var/lib/heartbeat/cores/hacluster
297 %{_mandir}/man1/*.1*
298 %{_mandir}/man8/[a-h]*.8*
299 %attr(755,root,root) %{_bindir}/cl_respawn
300 %attr(2755,root,haclient) %{_bindir}/cl_status
301 %attr(755,root,root) %{_bindir}/ha_logger
302 %attr(755,root,root) %{_bindir}/hb_addnode
303 %attr(755,root,root) %{_bindir}/hb_delnode
304 %attr(755,root,root) %{_bindir}/hb_standby
305 %attr(755,root,root) %{_bindir}/hb_takeover
306 %attr(755,root,root) %{_sbindir}/[a-i]*
307 %attr(755,root,root) %{_sbindir}/ocf-tester
308 %attr(755,root,root) %{_sbindir}/sbd
309 %attr(755,root,root) %{_sbindir}/sfex_init
310 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/ha.d/haresources
311 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/ha.d/authkeys
312 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/ha.d/ha.cf
313
314 %files stonith
315 %defattr(644,root,root,755)
316 %dir %{_libdir}/stonith
317 %dir %{_libdir}/stonith/plugins
318 %dir %{_libdir}/stonith/plugins/external
319 %dir %{_libdir}/stonith/plugins/stonith2
320 %attr(755,root,root) %{_libdir}/stonith/plugins/*/*
321 %attr(755,root,root) %{_libdir}/stonith/plugins/xen0-ha-dom0-stonith-helper
322 %attr(755,root,root) %{_sbindir}/meatclient
323 %attr(755,root,root) %{_sbindir}/stonith
324 %{_mandir}/man8/stonith.8*
325 %{_mandir}/man8/meatclient.8*
326
327 %files ldirectord
328 %defattr(644,root,root,755)
329 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/ha.d/ldirectord.cf
330 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/ldirectord
331 %attr(755,root,root) %{_sysconfdir}/ha.d/resource.d/ldirectord
332 %attr(754,root,root) /etc/rc.d/init.d/ldirectord
333 %attr(755,root,root) %{_sbindir}/*ldirectord*
334 %{_mandir}/man8/*ldirectord*.8*
335
336 %files libs
337 %defattr(644,root,root,755)
338 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
339 %attr(755,root,root) %ghost %{_libdir}/lib*.so.[0-9]
340
341 %files devel
342 %defattr(644,root,root,755)
343 %{_includedir}/*
344 %attr(755,root,root) %{_libdir}/lib*.so
345 %{_libdir}/*.la
346
347 %files static
348 %defattr(644,root,root,755)
349 %{_libdir}/*.a
350
351 %files cts
352 %defattr(644,root,root,755)
353 %doc cts/README
354 %{_libdir}/heartbeat/cts
355 %dir %{_datadir}/heartbeat/cts
356 %attr(755,root,root) %{_datadir}/heartbeat/cts/*.py
357 %{_datadir}/heartbeat/cts/*.py[co]
358 %attr(755,root,root) %{_datadir}/heartbeat/cts/*.sh
359 %attr(755,root,root) %{_datadir}/heartbeat/cts/*Dummy
This page took 0.047851 seconds and 3 git commands to generate.