2 # - pldize ha_logd initscript (look heartbeat.init?)
3 # - stonith-libs? pils? (any sense? libs are small and have little external dependencies)
4 # - separate some stonith plugins which have external dependencies?
7 %bcond_without vacm # VACM stonith plugin
9 Summary: Reusable cluster components
10 Summary(pl.UTF-8): Komponenty klastrowe wielokrotnego użytku
14 License: GPL v2+ and LGPL v2+
15 Group: Aplications/System
16 # for future releases:
17 #Source0Download: https://github.com/ClusterLabs/cluster-glue/releases
18 #Source0: https://github.com/ClusterLabs/cluster-glue/archive/%{version}/glue-%{version}.tar.gz
19 Source0: http://hg.linux-ha.org/glue/archive/glue-%{version}.tar.bz2
20 # Source0-md5: ec620466d6f23affa3b074b72bca7870
21 Patch0: %{name}-link.patch
22 Patch1: %{name}-opt.patch
23 Patch2: %{name}-rc.patch
24 Patch3: %{name}-heartbeat-libexecdir.patch
25 Patch4: x32-long-long-time-types.patch
26 URL: http://www.linux-ha.org/wiki/Cluster_Glue
27 BuildRequires: OpenIPMI-devel >= 1.4
28 BuildRequires: asciidoc
29 BuildRequires: autoconf >= 2.53
30 BuildRequires: automake
31 BuildRequires: bzip2-devel
32 BuildRequires: curl-devel
33 BuildRequires: docbook-dtd42-xml
34 BuildRequires: docbook-dtd44-xml
35 BuildRequires: docbook-style-xsl
36 BuildRequires: glib2-devel >= 2.0
37 BuildRequires: help2man
38 BuildRequires: libaio-devel
39 BuildRequires: libltdl-devel
40 BuildRequires: libnet-devel >= 1.0
41 BuildRequires: libstdc++-devel
42 BuildRequires: libtool
43 BuildRequires: libuuid-devel
44 BuildRequires: libxml2-devel >= 2.0
45 BuildRequires: libxslt-progs
46 BuildRequires: ncurses-devel
47 BuildRequires: net-snmp-devel >= 5.4
48 BuildRequires: openhpi-devel
49 BuildRequires: openssl-devel
50 BuildRequires: perl-tools-pod
51 BuildRequires: pkgconfig
52 BuildRequires: python3-devel
53 BuildRequires: rpm-pythonprov
54 %{?with_vacm:BuildRequires: vacm-devel}
55 BuildRequires: zlib-devel
56 Requires(post,preun): /sbin/chkconfig
57 Requires(postun): /usr/sbin/groupdel
58 Requires(postun): /usr/sbin/userdel
59 Requires(pre): /bin/id
60 Requires(pre): /usr/bin/getgid
61 Requires(pre): /usr/sbin/groupadd
62 Requires(pre): /usr/sbin/useradd
63 Requires(post,preun,postun): systemd-units
64 Requires: systemd-units
65 Requires: %{name}-libs = %{version}-%{release}
66 Requires: perl-TimeDate
68 Provides: group(haclient)
69 Provides: user(hacluster)
70 # Directives to allow upgrade from combined heartbeat packages
71 Provides: heartbeat-pils = 3.0.0-1
72 Obsoletes: heartbeat-common
73 Obsoletes: heartbeat-pils < 3.0.0-1
74 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
77 A collection of common tools that are useful for writing cluster
78 managers such as Pacemaker. Provides a local resource manager that
79 understands the OCF and LSB standards, and an interface to common
82 %description -l pl.UTF-8
83 Zbiór wspólnych narzędzi przydatnych przy pisaniu zarządców klastrów,
84 takich jak Pacemaker. Pakiet zawiera zarządcę zasobów lokalnych
85 zgodnego ze standardami OCF i LSB oraz interfejs do wspólnych urządzeń
89 Summary: Reusable cluster libraries
90 Summary(pl.UTF-8): Biblioteki klastrowe wielokrotnego użytku
92 Obsoletes: libheartbeat2
95 A collection of libraries that are useful for writing cluster managers
98 %description libs -l pl.UTF-8
99 Zbiór bibliotek przydatnych przy pisaniu zarządców klastrów, takich
103 Summary: Header files for writing cluster managers
104 Summary(pl.UTF-8): Pliki nagłówkowe do pisania zarządców klastrów
105 Group: Development/Libraries
106 Requires: %{name}-libs = %{version}-%{release}
107 Requires: glib2-devel >= 2.0
108 Requires: libltdl-devel
109 Obsoletes: libheartbeat-devel
111 %description libs-devel
112 Header files useful for writing cluster managers such as Pacemaker.
114 %description libs-devel -l pl.UTF-8
115 Pliki nagłówkowe przydatne przy pisaniu zarządców klastrów, takich jak
119 Summary: Tests for cluster-glue framework
120 Summary(pl.UTF-8): Testy dla szkieletu cluster-glue
122 Requires: %{name}-libs = %{version}-%{release}
125 Tests for cluster-glue framework.
127 %description tests -l pl.UTF-8
128 Testy dla szkieletu cluster-glue.
131 Summary: Provides an interface to Shoot The Other Node In The Head
132 Summary(pl.UTF-8): Interfejs do "odstrzelenia" drugiego węzła w klastrze
133 Group: Applications/System
134 Requires: OpenIPMI >= 2.0.3
135 Provides: heartbeat-stonith = 3.0.0-1
136 Obsoletes: heartbeat-stonith < 3.0.0-1
139 Provides an interface to Shoot The Other Node In The Head.
141 %description stonith -l pl.UTF-8
142 STONITH (Shoot The Other Node In The Head) to interfejs służący do
143 "odstrzelenia" drugiego węzła w klastrze.
146 %setup -q -n Reusable-Cluster-Components-glue--glue-%{version}
156 s,^#!.*python$,#!%{__python3},
157 s,^#!.*bin/env perl,#!%{__perl},
159 lib/plugins/stonith/external/*
167 CPPFLAGS="%{rpmcppflags} -DOPENIPMI_DEFINE_SELECTOR_T"
169 PYTHON=%{__python3} \
170 --docdir=%{_docdir}/%{name}-%{version} \
171 --disable-fatal-warnings \
174 --with-daemon-group=haclient \
175 --with-daemon-user=hacluster \
176 --with-initdir=/etc/rc.d/init.d \
177 --with-rundir=/var/run
181 rm -rf $RPM_BUILD_ROOT
182 install -d $RPM_BUILD_ROOT%{systemdunitdir}
185 DESTDIR=$RPM_BUILD_ROOT
187 find $RPM_BUILD_ROOT -name '*.la' -delete
189 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
192 rm -rf $RPM_BUILD_ROOT
195 %groupadd -g 60 haclient
196 %useradd -u 17 -d /var/lib/heartbeat/cores/hacluster -c "Heartbeat User" -g haclient hacluster
199 /sbin/chkconfig --add logd
200 %service logd restart
201 %systemd_post logd.service
204 if [ "$1" = "0" ]; then
205 %service -q logd stop
206 /sbin/chkconfig --del logd
208 %systemd_preun logd.service
211 if [ "$1" = "0" ]; then
212 %userremove hacluster
213 %groupremove haclient
217 %post libs -p /sbin/ldconfig
218 %postun libs -p /sbin/ldconfig
221 %defattr(644,root,root,755)
222 %doc AUTHORS ChangeLog logd/logd.cf doc/stonith/README*
223 %attr(754,root,root) /etc/rc.d/init.d/logd
224 %{systemdunitdir}/logd.service
226 %attr(755,root,root) %{_sbindir}/ha_logger
227 %attr(755,root,root) %{_sbindir}/hb_report
228 %attr(755,root,root) %{_sbindir}/lrmadmin
229 %attr(755,root,root) %{_sbindir}/meatclient
230 %attr(755,root,root) %{_sbindir}/cibsecret
231 %{_mandir}/man1/ha_logger.1*
232 %{_mandir}/man8/ha_logd.8*
233 %{_mandir}/man8/hb_report.8*
234 %{_mandir}/man8/lrmadmin.8*
235 %{_mandir}/man8/meatclient.8*
237 %dir %{_datadir}/%{name}
238 %attr(755,root,root) %{_datadir}/%{name}/ha_cf_support.sh
239 %attr(755,root,root) %{_datadir}/%{name}/openais_conf_support.sh
240 %attr(755,root,root) %{_datadir}/%{name}/utillib.sh
241 %attr(755,root,root) %{_datadir}/%{name}/ha_log.sh
243 %attr(755,root,root) %{_libexecdir}/heartbeat/ha_logd
244 %attr(755,root,root) %{_libexecdir}/heartbeat/lrmd
246 %dir %{_libdir}/heartbeat/plugins/InterfaceMgr
247 %attr(755,root,root) %{_libdir}/heartbeat/plugins/InterfaceMgr/generic.so
248 %dir %{_libdir}/heartbeat/plugins/RAExec
249 %attr(755,root,root) %{_libdir}/heartbeat/plugins/RAExec/heartbeat.so
250 %attr(755,root,root) %{_libdir}/heartbeat/plugins/RAExec/lsb.so
251 %attr(755,root,root) %{_libdir}/heartbeat/plugins/RAExec/ocf.so
252 %dir %{_libdir}/heartbeat/plugins/compress
253 %attr(755,root,root) %{_libdir}/heartbeat/plugins/compress/bz2.so
254 %attr(755,root,root) %{_libdir}/heartbeat/plugins/compress/zlib.so
256 %dir /var/lib/heartbeat
257 %attr(711,root,root) %dir /var/lib/heartbeat/cores
258 %attr(700,root,root) %dir /var/lib/heartbeat/cores/root
259 %attr(700,hacluster,root) %dir /var/lib/heartbeat/cores/hacluster
260 # we don't want any files owned by nobody
261 %attr(700,root,root) %dir /var/lib/heartbeat/cores/nobody
264 %defattr(644,root,root,755)
265 %attr(755,root,root) %{_libdir}/liblrm.so.*.*.*
266 %attr(755,root,root) %ghost %{_libdir}/liblrm.so.2
267 %attr(755,root,root) %{_libdir}/libpils.so.*.*.*
268 %attr(755,root,root) %ghost %{_libdir}/libpils.so.2
269 %attr(755,root,root) %{_libdir}/libplumb.so.*.*.*
270 %attr(755,root,root) %ghost %{_libdir}/libplumb.so.2
271 %attr(755,root,root) %{_libdir}/libplumbgpl.so.*.*.*
272 %attr(755,root,root) %ghost %{_libdir}/libplumbgpl.so.2
273 %attr(755,root,root) %{_libdir}/libstonith.so.*.*.*
274 %attr(755,root,root) %ghost %{_libdir}/libstonith.so.1
275 %dir %{_libdir}/heartbeat
276 %dir %{_libdir}/heartbeat/plugins
277 # also used by resource-agents runtime package (shouldn't agent_config.h be in resource-agents-devel?)
278 %dir %{_includedir}/heartbeat
281 %defattr(644,root,root,755)
282 %attr(755,root,root) %{_libdir}/liblrm.so
283 %attr(755,root,root) %{_libdir}/libpils.so
284 %attr(755,root,root) %{_libdir}/libplumb.so
285 %attr(755,root,root) %{_libdir}/libplumbgpl.so
286 %attr(755,root,root) %{_libdir}/libstonith.so
287 %{_includedir}/clplumbing
288 %{_includedir}/heartbeat/compress.h
289 %{_includedir}/heartbeat/glue_config.h
290 %{_includedir}/heartbeat/ha_msg.h
291 %{_includedir}/heartbeat/lrm
292 %{_includedir}/stonith
296 %defattr(644,root,root,755)
297 %attr(755,root,root) %{_libexecdir}/heartbeat/ipctest
298 %attr(755,root,root) %{_libexecdir}/heartbeat/ipctransientclient
299 %attr(755,root,root) %{_libexecdir}/heartbeat/ipctransientserver
300 %attr(755,root,root) %{_libexecdir}/heartbeat/transient-test.sh
301 %attr(755,root,root) %{_libexecdir}/heartbeat/base64_md5_test
302 %attr(755,root,root) %{_libexecdir}/heartbeat/logtest
304 %dir %{_libdir}/heartbeat/plugins/test
305 %attr(755,root,root) %{_libdir}/heartbeat/plugins/test/test.so
307 %dir %{_datadir}/%{name}
308 %dir %{_datadir}/%{name}/lrmtest
309 %{_datadir}/%{name}/lrmtest/README.regression
310 %{_datadir}/%{name}/lrmtest/defaults
311 %{_datadir}/%{name}/lrmtest/descriptions
312 %{_datadir}/%{name}/lrmtest/language
313 %{_datadir}/%{name}/lrmtest/lrmadmin-interface
314 %attr(755,root,root) %{_datadir}/%{name}/lrmtest/LRMBasicSanityCheck
315 %attr(755,root,root) %{_datadir}/%{name}/lrmtest/lrmregtest*
316 %attr(755,root,root) %{_datadir}/%{name}/lrmtest/*.sh
318 %dir %{_datadir}/%{name}/lrmtest/testcases
319 %{_datadir}/%{name}/lrmtest/testcases/BSC
320 %{_datadir}/%{name}/lrmtest/testcases/basicset
321 %{_datadir}/%{name}/lrmtest/testcases/metadata
322 %{_datadir}/%{name}/lrmtest/testcases/metadata.exp
323 %{_datadir}/%{name}/lrmtest/testcases/rscexec
324 %{_datadir}/%{name}/lrmtest/testcases/rscexec.exp
325 %{_datadir}/%{name}/lrmtest/testcases/rscmgmt
326 %{_datadir}/%{name}/lrmtest/testcases/rscmgmt.exp
327 %{_datadir}/%{name}/lrmtest/testcases/stonith
328 %{_datadir}/%{name}/lrmtest/testcases/stonith.exp
329 %attr(755,root,root) %{_datadir}/%{name}/lrmtest/testcases/*filter
330 %attr(755,root,root) %{_datadir}/%{name}/lrmtest/testcases/*.sh
333 %defattr(644,root,root,755)
334 %doc doc/stonith/README*
335 %attr(755,root,root) %{_sbindir}/stonith
336 %{_mandir}/man8/stonith.8*
337 %dir %{_libdir}/stonith
338 %dir %{_libdir}/stonith/plugins
339 %dir %{_libdir}/stonith/plugins/external
340 %attr(755,root,root) %{_libdir}/stonith/plugins/external/*
341 %dir %{_libdir}/stonith/plugins/stonith2
342 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/apcmaster.so
343 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/apcmastersnmp.so
344 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/apcsmart.so
345 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/baytech.so
347 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/bladehpi.so
348 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/cyclades.so
350 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/drac3.so
351 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/external.so
352 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/ibmhmc.so
354 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/ipmilan.so
355 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/meatware.so
356 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/null.so
357 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/nw_rpc100s.so
358 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/rcd_serial.so
360 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/rhcs.so
361 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/rps10.so
362 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/ssh.so
363 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/suicide.so
366 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/vacm.so
368 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/wti_mpc.so
369 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/wti_nps.so
370 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith2/ribcl.py
371 %attr(755,root,root) %{_libdir}/stonith/plugins/xen0-ha-dom0-stonith-helper