]> git.pld-linux.org Git - packages/pacemaker.git/blame - pacemaker.spec
- updated to 1.1.13
[packages/pacemaker.git] / pacemaker.spec
CommitLineData
da3fb05a 1#
a5de291a
JB
2# Conditional build:
3%bcond_without corosync # Corosync stack support
4%bcond_without heartbeat # Heartbeat stack support
650f9adf
JB
5%bcond_without servicelog # ServiceLog support [IBM PPC specific]
6%bcond_without ipmi # IPMI ServiceLog support [IBM PPC specific]
a5de291a 7#
650f9adf
JB
8%ifnarch ppc ppc64
9%undefine with_servicelog
10%endif
11%if %{without servicelog}
12%undefine with_ipmi
13%endif
01ea2d51 14Summary: The scalable High-Availability cluster resource manager
a5de291a 15Summary(pl.UTF-8): Skalowalny zarządca zasobów klastrów o wysokiej dostępności
01ea2d51 16Name: pacemaker
46cb3c8b
JB
17Version: 1.1.13
18Release: 1
a5de291a 19License: GPL v2+, LGPL v2.1+
01ea2d51 20Group: Applications/System
79e2c602 21Source0: https://github.com/ClusterLabs/pacemaker/archive/Pacemaker-%{version}.tar.gz
46cb3c8b 22# Source0-md5: 219a1b5864013101dae3f9977f342b87
0fe40bd1 23Source1: %{name}.tmpfiles
d45bf2c6
JK
24Source2: %{name}.init
25Source3: %{name}.service
1b4a22d1
JK
26Patch0: %{name}-automake.patch
27Patch1: %{name}-manpage_xslt.patch
68084dab
JB
28Patch2: %{name}-update.patch
29Patch3: %{name}-man.patch
30Patch4: %{name}-libs.patch
01ea2d51 31URL: http://clusterlabs.org/wiki/Main_Page
650f9adf 32%{?with_ipmi:BuildRequires: OpenIPMI-devel}
da3fb05a 33BuildRequires: asciidoc
650f9adf 34BuildRequires: autoconf >= 2.59
01ea2d51 35BuildRequires: automake
68084dab 36BuildRequires: bison
01ea2d51 37BuildRequires: bzip2-devel
a5de291a 38BuildRequires: cluster-glue-libs-devel
ed3071d2 39%{?with_corosync:BuildRequires: corosync-devel >= 2.0}
68084dab 40BuildRequires: dbus-devel
7a65b1fb 41BuildRequires: docbook-style-xsl
01ea2d51 42BuildRequires: e2fsprogs-devel
68084dab 43BuildRequires: flex
e32df161 44BuildRequires: gettext-tools
650f9adf 45BuildRequires: glib2-devel >= 2.0
01ea2d51 46BuildRequires: gnutls-devel
650f9adf 47BuildRequires: help2man
46cb3c8b 48%{?with_heartbeat:BuildRequires: heartbeat-devel >= 3.0.6}
01ea2d51 49BuildRequires: libesmtp-devel
650f9adf
JB
50BuildRequires: libltdl-devel
51BuildRequires: libqb-devel >= 0.13
52%{?with_servicelog:BuildRequires: libservicelog-devel}
01ea2d51 53BuildRequires: libtool
650f9adf
JB
54BuildRequires: libuuid-devel
55BuildRequires: libxml2-devel >= 2.0
01ea2d51 56BuildRequires: libxslt-devel
7a65b1fb 57BuildRequires: libxslt-progs
68084dab 58BuildRequires: ncurses-devel >= 5.4
01ea2d51
JK
59BuildRequires: net-snmp-devel
60BuildRequires: pam-devel
a5de291a 61BuildRequires: pciutils-devel
01ea2d51
JK
62BuildRequires: pkgconfig
63BuildRequires: python-devel
07ce3f2c 64BuildRequires: rpm-pythonprov
68084dab
JB
65BuildRequires: rpmbuild(macros) >= 1.644
66BuildRequires: systemd-units
01ea2d51 67BuildRequires: swig
a5de291a 68Requires: %{name}-libs = %{version}-%{release}
ed3071d2 69Requires: cluster-glue
49485c8c 70Requires: resource-agents
20da0353
JK
71Provides: group(haclient)
72Provides: user(hacluster)
ed3071d2 73Suggests: pacemaker-shell
01ea2d51
JK
74BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
75
76%description
d45bf2c6
JK
77Pacemaker makes use of your cluster infrastructure (either
78Corosync/OpenAIS or Heartbeat) to stop, start and monitor the health
a5de291a 79of the services (aka. resources) you want the cluster to provide.
01ea2d51
JK
80
81It can do this for clusters of practically any size and comes with a
82powerful dependency model that allows the administrator to accurately
83express the relationships (both ordering and location) between the
84cluster resources.
85
86Pacemaker was formely a part of Heartbeat.
87
a5de291a
JB
88%description -l pl.UTF-8
89Pacemaker wykorzystuje infrastrukturę klastrową (Corosync/OpenAIS lub
90Heartbeat) do zatrzymywania, uruchamiania i monitorowania działania
91usług (tzw. zasobów), które ma udostępniać klaster.
92
93Jest w stanie obsłużyć klastry praktycznie dowolnych rozmiarów,
94zawiera elastyczny model zależności, pozwalający administratorowi
95dokładnie opisać powiązania (zarówno kolejność, jak i położenie)
96między zasobami klastra.
97
98Pacemaker był wcześniej częścią pakietu Heartbeat.
99
01ea2d51
JK
100%package libs
101Summary: Pacemaker libraries
a5de291a 102Summary(pl.UTF-8): Biblioteki Pacemakera
01ea2d51
JK
103Group: Libraries
104
105%description libs
106Shared libraries for Pacemaker.
107
a5de291a
JB
108%description libs -l pl.UTF-8
109Biblioteki współdzielone Pacemakera.
110
111%package devel
112Summary: Header files for Pacemaker libraries
113Summary(pl.UTF-8): Pliki nagłówkowe bibliotek Pacemakera
114Group: Development/Libraries
115Requires: %{name}-libs = %{version}-%{release}
116
117%description devel
118Header files for Pacemaker libraries.
119
120%description devel -l pl.UTF-8
121Pliki nagłówkowe bibliotek Pacemakera.
122
123%package static
124Summary: Static Pacemaker libraries
125Summary(pl.UTF-8): Statyczne biblioteki Pacemakera
126Group: Development/Libraries
127Requires: %{name}-devel = %{version}-%{release}
128
129%description static
130Static Pacemaker libraries.
131
132%description static -l pl.UTF-8
133Statyczne biblioteki Pacemakera.
134
da3fb05a
JK
135%package heartbeat
136Summary: Pacemaker for Heartbeat cluster
a5de291a 137Summary(pl.UTF-8): Pacemaker dla klastra Heartbeat
da3fb05a 138Group: Applications/System
a5de291a 139Requires: %{name} = %{version}-%{release}
46cb3c8b 140Requires: heartbeat >= 3.0.6
a5de291a 141Obsoletes: pacemaker < 1.1
da3fb05a
JK
142
143%description heartbeat
144This package allows using Pacemaker on a Heartbeat cluster.
145
a5de291a
JB
146%description heartbeat -l pl.UTF-8
147Ten pakiet pozwala na używanie Pacemakera na klastrze Heartbeat.
148
da3fb05a
JK
149%package corosync
150Summary: Pacemaker for Corosync cluster
a5de291a 151Summary(pl.UTF-8): Pacemaker dla klastra Corosync
da3fb05a 152Group: Applications/System
a5de291a 153Requires: %{name} = %{version}-%{release}
da3fb05a 154Requires: corosync
68084dab 155Requires: systemd-units >= 38
8a8116ff 156%{?with_heartbeat:%requires_eq heartbeat-libs}
da3fb05a
JK
157
158%description corosync
159This package allows using Pacemaker on a Corosync cluster.
160
a5de291a
JB
161%description corosync -l pl.UTF-8
162Ten pakiet pozwala na używanie Pacemakera na klastrze Corosync.
163
f4369631
JK
164%package remote
165Summary: Remote services manager for Pacemaker
a5de291a 166Summary(pl.UTF-8): Zarządca usług zdalnych dla Pacemakera
f4369631 167Group: Applications/System
68084dab 168Requires: systemd-units >= 38
f4369631
JK
169Requires: %{name} = %{version}-%{release}
170
171%description remote
172This package allows running Pacemaker-managed services on 'virtual'
a5de291a
JB
173nodes without actual cluster stack. This is useful to manage services
174in virtual machines or containers running on a Pacemaker cluster.
01ea2d51 175
a5de291a
JB
176%description remote -l pl.UTF-8
177Ten pakiet pozwala na uruchamianie usług zarządzanych przez Pacemakera
178na węzłach "wirtualnych" bez zainstalowanego całego stosu klastrowego.
179Jest to przydatne przy zarządzaniu usługami na maszynach wirtualncych
180lub w kontenerach uruchomionych na klastrze opartym o Pacemaker.
01ea2d51
JK
181
182%prep
79e2c602 183%setup -qn pacemaker-Pacemaker-%{version}
01ea2d51 184%patch0 -p1
9ab8266a 185%patch1 -p1
650f9adf
JB
186%patch2 -p1
187%patch3 -p1
188%patch4 -p1
01ea2d51
JK
189
190%build
191%{__libtoolize}
ed3071d2 192%{__aclocal} -I m4
01ea2d51
JK
193%{__autoconf}
194%{__autoheader}
195%{__automake}
196
650f9adf 197CPPFLAGS="%{rpmcppflags} %{?with_heartbeat:-I/usr/include/heartbeat}"
01ea2d51 198%configure \
a5de291a 199 --with-acl \
da3fb05a 200 --with-corosync%{!?with_corosync:=no} \
01ea2d51 201 --with-esmtp \
a5de291a 202 --with-heartbeat%{!?with_heartbeat:=no} \
66b40b4d 203 --with-initdir=/etc/rc.d/init.d \
a5de291a 204 --with-snmp \
650f9adf
JB
205 --disable-fatal-warnings \
206 --disable-silent-rules
01ea2d51
JK
207
208%{__make}
209
210%install
211rm -rf $RPM_BUILD_ROOT
46cb3c8b 212install -d $RPM_BUILD_ROOT{/var/run/crm,/var/log}
01ea2d51
JK
213
214%{__make} install \
df1ba55b 215 mibdir=%{_datadir}/mibs \
01ea2d51
JK
216 DESTDIR=$RPM_BUILD_ROOT
217
46cb3c8b
JB
218touch $RPM_BUILD_ROOT/var/log/pacemaker.log
219
a5de291a 220%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/pacemaker
01ea2d51 221
650f9adf
JB
222install -D %{SOURCE1} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
223%if %{with corosync}
224install -D %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
225install -D %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}.service
226%endif
0fe40bd1 227
01ea2d51
JK
228%clean
229rm -rf $RPM_BUILD_ROOT
230
20da0353
JK
231%pre
232%groupadd -g 60 haclient
233%useradd -u 17 -d /var/lib/heartbeat/cores/hacluster -c "Heartbeat User" -g haclient hacluster
234
da3fb05a
JK
235%post corosync
236/sbin/chkconfig --add %{name}
237%service %{name} restart "%{name} daemon"
da3fb05a
JK
238%systemd_post %{name}.service
239
240%preun
241if [ "$1" = "0" ]; then
68084dab
JB
242 %service %{name} stop
243 /sbin/chkconfig --del %{name}
da3fb05a 244fi
7c510570
JK
245
246%preun corosync
da3fb05a
JK
247%systemd_preun %{name}.service
248
249%postun corosync
250%systemd_reload
251
f4369631
JK
252%post remote
253/sbin/chkconfig --add pacemaker_remote
254%service pacemaker_remote restart "pacemaker_remote daemon"
255%systemd_post pacemaker_remote.service
256
257%preun remote
258%systemd_preun %{name}.service
259
260%postun remote
261%systemd_reload
262
68084dab
JB
263%post libs -p /sbin/ldconfig
264%postun libs -p /sbin/ldconfig
da3fb05a 265
01ea2d51
JK
266%files
267%defattr(644,root,root,755)
da3fb05a 268%doc doc/README* doc/*.html doc/*.txt AUTHORS COPYING*
da3fb05a 269%attr(755,root,root) %{_sbindir}/attrd_updater
01ea2d51
JK
270%attr(755,root,root) %{_sbindir}/cibadmin
271%attr(755,root,root) %{_sbindir}/crm_attribute
272%attr(755,root,root) %{_sbindir}/crm_diff
ed3071d2 273%attr(755,root,root) %{_sbindir}/crm_error
01ea2d51
JK
274%attr(755,root,root) %{_sbindir}/crm_failcount
275%attr(755,root,root) %{_sbindir}/crm_master
276%attr(755,root,root) %{_sbindir}/crm_mon
da3fb05a
JK
277%attr(755,root,root) %{_sbindir}/crm_node
278%attr(755,root,root) %{_sbindir}/crm_report
01ea2d51 279%attr(755,root,root) %{_sbindir}/crm_resource
da3fb05a
JK
280%attr(755,root,root) %{_sbindir}/crm_simulate
281%attr(755,root,root) %{_sbindir}/crm_shadow
01ea2d51 282%attr(755,root,root) %{_sbindir}/crm_standby
da3fb05a 283%attr(755,root,root) %{_sbindir}/crm_ticket
01ea2d51
JK
284%attr(755,root,root) %{_sbindir}/crm_verify
285%attr(755,root,root) %{_sbindir}/crmadmin
da3fb05a
JK
286%attr(755,root,root) %{_sbindir}/fence_legacy
287%attr(755,root,root) %{_sbindir}/fence_pcmk
01ea2d51 288%attr(755,root,root) %{_sbindir}/iso8601
da3fb05a 289%attr(755,root,root) %{_sbindir}/stonith_admin
650f9adf
JB
290%if %{with servicelog}
291%if %{with ipmi}
292%attr(755,root,root) %{_sbindir}/ipmiservicelogd
293%endif
294%attr(755,root,root) %{_sbindir}/notifyServicelogEvent
295%endif
a5de291a
JB
296%dir %{_libdir}/%{name}
297%attr(755,root,root) %{_libdir}/%{name}/attrd
298%attr(755,root,root) %{_libdir}/%{name}/cib
299%attr(755,root,root) %{_libdir}/%{name}/cibmon
300%attr(755,root,root) %{_libdir}/%{name}/crmd
301%attr(755,root,root) %{_libdir}/%{name}/lrmd
46cb3c8b 302%attr(755,root,root) %{_libdir}/%{name}/lrmd_internal_ctl
a5de291a
JB
303%attr(755,root,root) %{_libdir}/%{name}/lrmd_test
304%attr(755,root,root) %{_libdir}/%{name}/pengine
305%attr(755,root,root) %{_libdir}/%{name}/stonith-test
306%attr(755,root,root) %{_libdir}/%{name}/stonithd
307%{_datadir}/pacemaker
df1ba55b 308%{_datadir}/mibs/PCMK-MIB.txt
69ee3b2e 309%{py_sitedir}/cts
46cb3c8b
JB
310%{systemdunitdir}/crm_mon.service
311%config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/pacemaker
312%ghost /var/log/pacemaker.log
650f9adf
JB
313%{_mandir}/man7/crmd.7*
314%{_mandir}/man7/ocf_pacemaker_*.7*
315%{_mandir}/man7/pengine.7*
316%{_mandir}/man7/stonithd.7*
a5de291a
JB
317%{_mandir}/man8/attrd_updater.8*
318%{_mandir}/man8/cibadmin.8*
319%{_mandir}/man8/crm_attribute.8*
320%{_mandir}/man8/crm_diff.8*
321%{_mandir}/man8/crm_error.8*
322%{_mandir}/man8/crm_failcount.8*
323%{_mandir}/man8/crm_master.8*
324%{_mandir}/man8/crm_mon.8*
325%{_mandir}/man8/crm_node.8*
326%{_mandir}/man8/crm_report.8*
327%{_mandir}/man8/crm_resource.8*
328%{_mandir}/man8/crm_shadow.8*
329%{_mandir}/man8/crm_simulate.8*
330%{_mandir}/man8/crm_standby.8*
331%{_mandir}/man8/crm_ticket.8*
332%{_mandir}/man8/crm_verify.8*
333%{_mandir}/man8/crmadmin.8*
334%{_mandir}/man8/fence_legacy.8*
335%{_mandir}/man8/fence_pcmk.8*
336%{_mandir}/man8/iso8601.8*
337%{_mandir}/man8/stonith_admin.8*
650f9adf
JB
338%if %{with servicelog}
339%{_mandir}/man8/notifyServicelogEvent.8*
340%endif
a5de291a 341
46cb3c8b
JB
342%dir %{_prefix}/lib/ocf/resource.d/.isolation
343%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/.isolation/docker-wrapper
b35e723c 344%dir %{_prefix}/lib/ocf/resource.d/pacemaker
345%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/ClusterMon
346%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/Dummy
347%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/HealthCPU
348%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/HealthSMART
349%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/Stateful
350%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/SysInfo
351%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/SystemHealth
352%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/controld
353%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/o2cb
354%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/ping
355%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/pingd
f4369631 356%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/remote
a5de291a 357
ed3071d2
JK
358%dir /var/lib/%{name}
359%dir %attr(750,hacluster,haclient) /var/lib/%{name}/blackbox
360%dir %attr(750,hacluster,haclient) /var/lib/%{name}/cib
361%dir %attr(750,hacluster,haclient) /var/lib/%{name}/pengine
a5de291a
JB
362%dir %attr(750,hacluster,haclient) %{_var}/run/crm
363/usr/lib/tmpfiles.d/%{name}.conf
01ea2d51
JK
364
365%files libs
366%defattr(644,root,root,755)
650f9adf 367%attr(755,root,root) %{_libdir}/libcib.so.*.*.*
46cb3c8b 368%attr(755,root,root) %ghost %{_libdir}/libcib.so.4
650f9adf
JB
369%attr(755,root,root) %{_libdir}/libcrmcluster.so.*.*.*
370%attr(755,root,root) %ghost %{_libdir}/libcrmcluster.so.4
371%attr(755,root,root) %{_libdir}/libcrmcommon.so.*.*.*
372%attr(755,root,root) %ghost %{_libdir}/libcrmcommon.so.3
373%attr(755,root,root) %{_libdir}/libcrmservice.so.*.*.*
46cb3c8b 374%attr(755,root,root) %ghost %{_libdir}/libcrmservice.so.3
650f9adf
JB
375%attr(755,root,root) %{_libdir}/liblrmd.so.*.*.*
376%attr(755,root,root) %ghost %{_libdir}/liblrmd.so.1
377%attr(755,root,root) %{_libdir}/libpe_rules.so.*.*.*
378%attr(755,root,root) %ghost %{_libdir}/libpe_rules.so.2
379%attr(755,root,root) %{_libdir}/libpe_status.so.*.*.*
380%attr(755,root,root) %ghost %{_libdir}/libpe_status.so.4
381%attr(755,root,root) %{_libdir}/libpengine.so.*.*.*
382%attr(755,root,root) %ghost %{_libdir}/libpengine.so.4
383%attr(755,root,root) %{_libdir}/libstonithd.so.*.*.*
384%attr(755,root,root) %ghost %{_libdir}/libstonithd.so.2
385%attr(755,root,root) %{_libdir}/libtransitioner.so.*.*.*
386%attr(755,root,root) %ghost %{_libdir}/libtransitioner.so.2
01ea2d51 387
a5de291a
JB
388%files devel
389%defattr(644,root,root,755)
650f9adf
JB
390%attr(755,root,root) %{_libdir}/libcib.so
391%attr(755,root,root) %{_libdir}/libcrmcluster.so
392%attr(755,root,root) %{_libdir}/libcrmcommon.so
393%attr(755,root,root) %{_libdir}/libcrmservice.so
394%attr(755,root,root) %{_libdir}/liblrmd.so
395%attr(755,root,root) %{_libdir}/libpe_rules.so
396%attr(755,root,root) %{_libdir}/libpe_status.so
397%attr(755,root,root) %{_libdir}/libpengine.so
398%attr(755,root,root) %{_libdir}/libstonithd.so
399%attr(755,root,root) %{_libdir}/libtransitioner.so
400%{_libdir}/libcib.la
401%{_libdir}/libcrmcluster.la
402%{_libdir}/libcrmcommon.la
403%{_libdir}/libcrmservice.la
404%{_libdir}/liblrmd.la
405%{_libdir}/libpe_rules.la
406%{_libdir}/libpe_status.la
407%{_libdir}/libpengine.la
408%{_libdir}/libstonithd.la
409%{_libdir}/libtransitioner.la
a5de291a 410%{_includedir}/pacemaker
650f9adf
JB
411%{_pkgconfigdir}/pacemaker.pc
412%{_pkgconfigdir}/pacemaker-cib.pc
413%{_pkgconfigdir}/pacemaker-cluster.pc
414%{_pkgconfigdir}/pacemaker-fencing.pc
415%{_pkgconfigdir}/pacemaker-lrmd.pc
416%{_pkgconfigdir}/pacemaker-pengine.pc
417%{_pkgconfigdir}/pacemaker-service.pc
a5de291a
JB
418
419%files static
420%defattr(644,root,root,755)
650f9adf
JB
421%{_libdir}/libcib.a
422%{_libdir}/libcrmcluster.a
423%{_libdir}/libcrmcommon.a
424%{_libdir}/libcrmservice.a
425%{_libdir}/liblrmd.a
426%{_libdir}/libpe_rules.a
427%{_libdir}/libpe_status.a
428%{_libdir}/libpengine.a
429%{_libdir}/libstonithd.a
430%{_libdir}/libtransitioner.a
a5de291a 431
f4369631
JK
432%files remote
433%defattr(644,root,root,755)
f4369631
JK
434%attr(755,root,root) %{_sbindir}/pacemaker_remoted
435%attr(755,root,root) /etc/rc.d/init.d/pacemaker_remote
436%{systemdunitdir}/pacemaker_remote.service
a5de291a 437%{_mandir}/man8/pacemaker_remoted.8*
f4369631 438
da3fb05a
JK
439%if %{with heartbeat}
440%files heartbeat
441%defattr(644,root,root,755)
7c4f002d 442%attr(755,root,root) %{_sbindir}/crm_uuid
a5de291a 443%{_mandir}/man8/crm_uuid.8*
da3fb05a
JK
444%endif
445
446%if %{with corosync}
447%files corosync
448%defattr(644,root,root,755)
449%attr(755,root,root) %{_sbindir}/pacemakerd
450%attr(755,root,root) /etc/rc.d/init.d/%{name}
451%{systemdunitdir}/%{name}.service
a5de291a 452%{_mandir}/man8/pacemakerd.8*
da3fb05a 453%endif
This page took 0.161559 seconds and 4 git commands to generate.