1 %include /usr/lib/rpm/macros.perl
2 Summary: Heartbeat - subsystem for High-Availability Linux
3 Summary(es): Subsistema heartbeat para Linux "High-Availability"
4 Summary(pl): Podsystem heartbeat dla systemów o podwy¿szonej niezawodno¶ci
5 Summary(pt_BR): Implementa sistema de monitoração (heartbeats) visando Alta Disponibilidade
10 Group: Applications/System
11 Source0: http://linux-ha.org/download/%{name}-%{version}.tar.gz
12 # Source0-md5: 41233e5097c42341bf2162806d4cb99c
14 Source2: ldirectord.init
15 Patch0: %{name}-ac.patch
16 URL: http://linux-ha.org/
17 BuildRequires: OpenIPMI-devel >= 2.0.3
18 BuildRequires: autoconf
19 BuildRequires: automake
20 BuildRequires: gdbm-devel
21 BuildRequires: glib2-devel
22 BuildRequires: libnet-devel >= 1.1.0
23 BuildRequires: libltdl-devel
24 BuildRequires: libtool
25 BuildRequires: libuuid-devel
26 BuildRequires: libwrap-devel
27 BuildRequires: libxml2-devel
28 BuildRequires: lm_sensors-devel
29 BuildRequires: net-snmp-devel >= 5.1
30 BuildRequires: pkgconfig
31 BuildRequires: rpm-perlprov
32 BuildRequires: rpm-pythonprov
33 BuildRequires: rpmbuild(macros) >= 1.268
34 BuildRequires: swig-perl >= 1.3.25
35 BuildRequires: swig-python >= 1.3.25
36 Requires(pre): /bin/id
37 Requires(pre): /usr/bin/getgid
38 Requires(pre): /usr/sbin/groupadd
39 Requires(pre): /usr/sbin/useradd
40 Requires(post,preun): /sbin/chkconfig
41 Requires(post,postun): /sbin/ldconfig
42 Requires(postun): /usr/sbin/groupdel
43 Requires(postun): /usr/sbin/userdel
45 Requires: syslogdaemon
46 Provides: group(haclient)
47 Provides: user(hacluster)
49 Obsoletes: perl-heartbeat
50 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
53 heartbeat is a basic heartbeat subsystem for Linux-HA. It will run
54 scripts at initialization, and when machines go up or down. This
55 version will also perform IP address takeover using gratuitous ARPs.
56 It works correctly for a 2-node configuration, and is extensible to
57 larger configurations.
59 It implements the following kinds of heartbeats:
60 - Bidirectional Serial Rings ("raw" serial ports)
63 heartbeat es un sistema básico para Linux-HA. La función de este
64 software es ejecutar scripts en la inicialización y al apagar las
65 máquinas que lo utilizan.
68 heartbeat jest podstawowym podsystemem dla systemów o podwy¿szonej
69 dostêpno¶ci budowanych w oparciu o Linuksa. Zajmuje siê uruchamianiem
70 skryptów podczas startu i zamykania systemu. Ta wersja pakietu pozwala
71 na przejmowanie adresów IP. Oprogramowanie dzia³a poprawnie dla
72 konfiguracji sk³adaj±cej siê z 2 hostów, mo¿na je równie¿ stosowaæ do
73 bardziej skomplikowanych konfiguracji.
76 Summary: Provides an interface to Shoot The Other Node In The Head
77 Summary(pl): Interfejs do "odstrzelenia" drugiego wêz³a w klastrze
78 Group: Applications/System
81 Provides an interface to Shoot The Other Node In The Head.
83 %description stonith -l pl
84 STONITH (Shoot The Other Node In The Head) to interfejs s³u¿±cy do
85 "odstrzelenia" drugiego wêz³a w klastrze.
88 Summary: Monitor virtual services provided by LVS
89 Summary(pl): Demon monitoruj±cy wirtualne us³ugi dostarczane poprzez LVS
90 Group: Applications/System
92 Requires(post,preun): /sbin/chkconfig
95 %description ldirectord
96 ldirectord is a stand-alone daemon to monitor services of real
97 for virtual services provided by The Linux Virtual Server
98 (http://www.linuxvirtualserver.org/).
100 %description ldirectord -l pl
101 ldirectord to samodzielny demon monitoruj±cy rzeczywiste us³ugi dla
102 wirtualnych us³ug dostarczanych poprzez Linux Virtual Server
103 (http://www.linuxvirtualserver.org/).
106 Summary: Heartbeat developement header files and libraries
107 Summary(pl): Pliki nag³ówkowe i biblioteki heartbeat
108 Group: Development/Libraries
109 Requires: %{name} = %{version}-%{release}
112 Heartbeat developement header files and libraries.
114 %description devel -l pl
115 Pliki nag³ówkowe i biblioteki heartbeat.
118 Summary: Heartbeat static libraries
119 Summary(pl): Biblioteki statyczne heartbeat
120 Group: Development/Libraries
121 Requires: %{name}-devel = %{version}-%{release}
124 Heartbeat static libraries.
126 %description static -l pl
127 Biblioteki statyczne heartbeat.
130 Summary: Cluster Test Suite
131 Summary(pl): Zestaw testów klastra
132 Group: Applications/System
133 Requires: %{name} = %{version}-%{release}
136 Cluster Test Suite for heartbeat.
138 %description cts -l pl
139 Zestaw testów klastra opartego o heartbeat.
148 %{__libtoolize} --ltdl
157 --with-initdir=/etc/rc.d/init.d \
160 --enable-snmp-subagent
165 rm -rf $RPM_BUILD_ROOT
168 DESTDIR=$RPM_BUILD_ROOT
169 install -d $RPM_BUILD_ROOT/var/run/heartbeat
171 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/ha.d/resource.d/ldirectord
172 ln -sf %{_sbindir}/ldirectord $RPM_BUILD_ROOT%{_sysconfdir}/ha.d/resource.d/ldirectord
174 # plugins are lt_dlopened, but using *.so names, so *.la are not used
175 rm -f $RPM_BUILD_ROOT%{_libdir}/{heartbeat,pils,stonith}/plugins/*/*.{la,a}
177 rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/heartbeat
178 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/heartbeat
180 > $RPM_BUILD_ROOT/etc/ha.d/haresources
181 echo -e "auth 2\n2 crc" > $RPM_BUILD_ROOT/etc/ha.d/authkeys
182 install doc/ha.cf $RPM_BUILD_ROOT/etc/ha.d
184 rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/ldirectord
185 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/ldirectord
186 install ldirectord/ldirectord.cf $RPM_BUILD_ROOT%{_sysconfdir}/ha.d
191 rm -rf $RPM_BUILD_ROOT
194 %groupadd -g 60 haclient
195 %useradd -u 17 -d /var/lib/heartbeat/cores/hacluster -c "Heartbeat User" -g haclient hacluster
199 /sbin/chkconfig --add heartbeat
200 %service %{name} restart
203 if [ "$1" = "0" ]; then
204 %service -q %{name} stop
205 /sbin/chkconfig --del heartbeat
210 if [ "$1" = "0" ]; then
211 %userremove hacluster
212 %groupremove haclient
215 %post stonith -p /sbin/ldconfig
216 %postun stonith -p /sbin/ldconfig
218 %files -f haclient.lang
219 %defattr(644,root,root,755)
220 %doc doc/{*.html,AUTHORS,apphbd.cf,authkeys,ha.cf,haresources,startstop}
221 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
222 %dir %{_libdir}/heartbeat
223 %dir %{_libdir}/heartbeat/plugins
224 %dir %{_libdir}/heartbeat/plugins/*
225 %attr(755,root,root) %{_libdir}/heartbeat/plugins/*/*.so
226 %attr(755,root,root) %{_libdir}/heartbeat/[!cp]*
227 %attr(755,root,root) %{_libdir}/heartbeat/c[!t]*
228 %attr(755,root,root) %{_libdir}/heartbeat/p[!l]*
230 %dir %{_libdir}/pils/plugins
231 %dir %{_libdir}/pils/plugins/*
232 %attr(755,root,root) %{_libdir}/pils/plugins/*/*.so
233 %dir %{_sysconfdir}/ha.d
234 %attr(755,root,root) %{_sysconfdir}/ha.d/rc.d
235 %attr(755,root,root) %{_sysconfdir}/ha.d/resource.d
236 %{_sysconfdir}/ha.d/README.config
237 %attr(755,root,root) %{_sysconfdir}/ha.d/harc
238 %{_sysconfdir}/ha.d/shellfuncs
239 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/hbmgmtd
240 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/heartbeat
241 %attr(754,root,root) /etc/rc.d/init.d/heartbeat
242 %attr(755,root,root) %{_libdir}/ocf
243 %dir /var/lib/heartbeat
244 %dir /var/run/heartbeat
245 #%%attr(750,root,haclient) %dir /var/lib/heartbeat/api
246 #%%attr(1770,root,haclient) %dir /var/lib/heartbeat/casual
247 #%%attr(755,hacluster,haclient) %dir /var/lib/heartbeat/ccm
248 #%%attr(755,root,haclient) %dir /var/lib/heartbeat/ccm
249 #%%attr(755,root,haclient) %dir /var/lib/heartbeat/ckpt
250 #%%attr(600,root,root) /var/lib/heartbeat/fifo
252 %{_mandir}/man8/[a-h]*.8*
253 /var/lib/heartbeat/cores
254 %attr(755,root,root) %{_bindir}/cl_respawn
255 %attr(2755,root,haclient) %{_bindir}/cl_status
256 %attr(755,root,root) %{_sbindir}/[a-i]*
257 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/ha.d/haresources
258 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/ha.d/authkeys
259 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/ha.d/ha.cf
260 %{_datadir}/snmp/mibs/*mib
263 %defattr(644,root,root,755)
264 %attr(755,root,root) %{_libdir}/libstonith.so.*.*.*
265 %dir %{_libdir}/stonith
266 %dir %{_libdir}/stonith/plugins
267 %dir %{_libdir}/stonith/plugins/external
268 %dir %{_libdir}/stonith/plugins/stonith2
269 %attr(755,root,root) %{_libdir}/stonith/plugins/*/*
270 %attr(755,root,root) %{_sbindir}/meatclient
271 %attr(755,root,root) %{_sbindir}/stonith
272 %{_mandir}/man8/stonith.8*
273 %{_mandir}/man8/meatclient.8*
276 %defattr(644,root,root,755)
277 %dir %{_sysconfdir}/ha.d/conf
278 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/ha.d/ldirectord.cf
279 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/ldirectord
280 %attr(754,root,root) /etc/rc.d/init.d/ldirectord
281 %attr(755,root,root) %{_sbindir}/*ldirectord*
282 %{_mandir}/man8/*ldirectord*.8*
285 %defattr(644,root,root,755)
290 %defattr(644,root,root,755)
294 %defattr(644,root,root,755)
296 %dir %{_libdir}/heartbeat/cts
297 %attr(755,root,root) %{_libdir}/heartbeat/cts/*.py