]> git.pld-linux.org Git - packages/pacemaker.git/blame - pacemaker.spec
- updated to 1.1.11
[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
68084dab 17Version: 1.1.11
79e2c602 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
68084dab 22# Source0-md5: 7cbe4f8ef2b300c3426a0c12a0c67c93
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
JB
43BuildRequires: flex
44BuildRequires: gettext-devel
650f9adf 45BuildRequires: glib2-devel >= 2.0
01ea2d51 46BuildRequires: gnutls-devel
650f9adf 47BuildRequires: help2man
a5de291a 48%{?with_heartbeat:BuildRequires: heartbeat-devel >= 3.0.5-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}
da3fb05a 140Requires: heartbeat
a5de291a 141Obsoletes: pacemaker < 1.1
da3fb05a 142Conflicts: heartbeat < 2.99.0
da3fb05a
JK
143
144%description heartbeat
145This package allows using Pacemaker on a Heartbeat cluster.
146
a5de291a
JB
147%description heartbeat -l pl.UTF-8
148Ten pakiet pozwala na używanie Pacemakera na klastrze Heartbeat.
149
da3fb05a
JK
150%package corosync
151Summary: Pacemaker for Corosync cluster
a5de291a 152Summary(pl.UTF-8): Pacemaker dla klastra Corosync
da3fb05a 153Group: Applications/System
a5de291a 154Requires: %{name} = %{version}-%{release}
da3fb05a 155Requires: corosync
68084dab 156Requires: systemd-units >= 38
8a8116ff 157%{?with_heartbeat:%requires_eq heartbeat-libs}
da3fb05a
JK
158
159%description corosync
160This package allows using Pacemaker on a Corosync cluster.
161
a5de291a
JB
162%description corosync -l pl.UTF-8
163Ten pakiet pozwala na używanie Pacemakera na klastrze Corosync.
164
f4369631
JK
165%package remote
166Summary: Remote services manager for Pacemaker
a5de291a 167Summary(pl.UTF-8): Zarządca usług zdalnych dla Pacemakera
f4369631 168Group: Applications/System
68084dab 169Requires: systemd-units >= 38
f4369631
JK
170Requires: %{name} = %{version}-%{release}
171
172%description remote
173This package allows running Pacemaker-managed services on 'virtual'
a5de291a
JB
174nodes without actual cluster stack. This is useful to manage services
175in virtual machines or containers running on a Pacemaker cluster.
01ea2d51 176
a5de291a
JB
177%description remote -l pl.UTF-8
178Ten pakiet pozwala na uruchamianie usług zarządzanych przez Pacemakera
179na węzłach "wirtualnych" bez zainstalowanego całego stosu klastrowego.
180Jest to przydatne przy zarządzaniu usługami na maszynach wirtualncych
181lub w kontenerach uruchomionych na klastrze opartym o Pacemaker.
01ea2d51
JK
182
183%prep
79e2c602 184%setup -qn pacemaker-Pacemaker-%{version}
01ea2d51 185%patch0 -p1
9ab8266a 186%patch1 -p1
650f9adf
JB
187%patch2 -p1
188%patch3 -p1
189%patch4 -p1
01ea2d51
JK
190
191%build
192%{__libtoolize}
ed3071d2 193%{__aclocal} -I m4
01ea2d51
JK
194%{__autoconf}
195%{__autoheader}
196%{__automake}
197
650f9adf 198CPPFLAGS="%{rpmcppflags} %{?with_heartbeat:-I/usr/include/heartbeat}"
01ea2d51 199%configure \
a5de291a 200 --with-acl \
da3fb05a 201 --with-corosync%{!?with_corosync:=no} \
01ea2d51 202 --with-esmtp \
a5de291a 203 --with-heartbeat%{!?with_heartbeat:=no} \
66b40b4d 204 --with-initdir=/etc/rc.d/init.d \
a5de291a 205 --with-snmp \
650f9adf
JB
206 --disable-fatal-warnings \
207 --disable-silent-rules
01ea2d51
JK
208
209%{__make}
210
211%install
212rm -rf $RPM_BUILD_ROOT
213
214%{__make} install \
215 DESTDIR=$RPM_BUILD_ROOT
216
a5de291a 217%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/pacemaker
01ea2d51 218
650f9adf
JB
219install -D %{SOURCE1} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
220%if %{with corosync}
221install -D %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
222install -D %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}.service
223%endif
0fe40bd1 224
01ea2d51
JK
225%clean
226rm -rf $RPM_BUILD_ROOT
227
20da0353
JK
228%pre
229%groupadd -g 60 haclient
230%useradd -u 17 -d /var/lib/heartbeat/cores/hacluster -c "Heartbeat User" -g haclient hacluster
231
da3fb05a
JK
232%post corosync
233/sbin/chkconfig --add %{name}
234%service %{name} restart "%{name} daemon"
da3fb05a
JK
235%systemd_post %{name}.service
236
237%preun
238if [ "$1" = "0" ]; then
68084dab
JB
239 %service %{name} stop
240 /sbin/chkconfig --del %{name}
da3fb05a 241fi
7c510570
JK
242
243%preun corosync
da3fb05a
JK
244%systemd_preun %{name}.service
245
246%postun corosync
247%systemd_reload
248
f4369631
JK
249%post remote
250/sbin/chkconfig --add pacemaker_remote
251%service pacemaker_remote restart "pacemaker_remote daemon"
252%systemd_post pacemaker_remote.service
253
254%preun remote
255%systemd_preun %{name}.service
256
257%postun remote
258%systemd_reload
259
68084dab
JB
260%post libs -p /sbin/ldconfig
261%postun libs -p /sbin/ldconfig
da3fb05a 262
01ea2d51
JK
263%files
264%defattr(644,root,root,755)
da3fb05a 265%doc doc/README* doc/*.html doc/*.txt AUTHORS COPYING*
da3fb05a 266%attr(755,root,root) %{_sbindir}/attrd_updater
01ea2d51
JK
267%attr(755,root,root) %{_sbindir}/cibadmin
268%attr(755,root,root) %{_sbindir}/crm_attribute
269%attr(755,root,root) %{_sbindir}/crm_diff
ed3071d2 270%attr(755,root,root) %{_sbindir}/crm_error
01ea2d51
JK
271%attr(755,root,root) %{_sbindir}/crm_failcount
272%attr(755,root,root) %{_sbindir}/crm_master
273%attr(755,root,root) %{_sbindir}/crm_mon
da3fb05a
JK
274%attr(755,root,root) %{_sbindir}/crm_node
275%attr(755,root,root) %{_sbindir}/crm_report
01ea2d51 276%attr(755,root,root) %{_sbindir}/crm_resource
da3fb05a
JK
277%attr(755,root,root) %{_sbindir}/crm_simulate
278%attr(755,root,root) %{_sbindir}/crm_shadow
01ea2d51 279%attr(755,root,root) %{_sbindir}/crm_standby
da3fb05a 280%attr(755,root,root) %{_sbindir}/crm_ticket
01ea2d51
JK
281%attr(755,root,root) %{_sbindir}/crm_verify
282%attr(755,root,root) %{_sbindir}/crmadmin
da3fb05a
JK
283%attr(755,root,root) %{_sbindir}/fence_legacy
284%attr(755,root,root) %{_sbindir}/fence_pcmk
01ea2d51 285%attr(755,root,root) %{_sbindir}/iso8601
da3fb05a 286%attr(755,root,root) %{_sbindir}/stonith_admin
650f9adf
JB
287%if %{with servicelog}
288%if %{with ipmi}
289%attr(755,root,root) %{_sbindir}/ipmiservicelogd
290%endif
291%attr(755,root,root) %{_sbindir}/notifyServicelogEvent
292%endif
a5de291a
JB
293%dir %{_libdir}/%{name}
294%attr(755,root,root) %{_libdir}/%{name}/attrd
295%attr(755,root,root) %{_libdir}/%{name}/cib
296%attr(755,root,root) %{_libdir}/%{name}/cibmon
297%attr(755,root,root) %{_libdir}/%{name}/crmd
298%attr(755,root,root) %{_libdir}/%{name}/lrmd
299%attr(755,root,root) %{_libdir}/%{name}/lrmd_test
300%attr(755,root,root) %{_libdir}/%{name}/pengine
301%attr(755,root,root) %{_libdir}/%{name}/stonith-test
302%attr(755,root,root) %{_libdir}/%{name}/stonithd
303%{_datadir}/pacemaker
650f9adf 304%{_datadir}/snmp/mibs/PCMK-MIB.txt
69ee3b2e 305%{py_sitedir}/cts
650f9adf
JB
306%{_mandir}/man7/crmd.7*
307%{_mandir}/man7/ocf_pacemaker_*.7*
308%{_mandir}/man7/pengine.7*
309%{_mandir}/man7/stonithd.7*
a5de291a
JB
310%{_mandir}/man8/attrd_updater.8*
311%{_mandir}/man8/cibadmin.8*
312%{_mandir}/man8/crm_attribute.8*
313%{_mandir}/man8/crm_diff.8*
314%{_mandir}/man8/crm_error.8*
315%{_mandir}/man8/crm_failcount.8*
316%{_mandir}/man8/crm_master.8*
317%{_mandir}/man8/crm_mon.8*
318%{_mandir}/man8/crm_node.8*
319%{_mandir}/man8/crm_report.8*
320%{_mandir}/man8/crm_resource.8*
321%{_mandir}/man8/crm_shadow.8*
322%{_mandir}/man8/crm_simulate.8*
323%{_mandir}/man8/crm_standby.8*
324%{_mandir}/man8/crm_ticket.8*
325%{_mandir}/man8/crm_verify.8*
326%{_mandir}/man8/crmadmin.8*
327%{_mandir}/man8/fence_legacy.8*
328%{_mandir}/man8/fence_pcmk.8*
329%{_mandir}/man8/iso8601.8*
330%{_mandir}/man8/stonith_admin.8*
650f9adf
JB
331%if %{with servicelog}
332%{_mandir}/man8/notifyServicelogEvent.8*
333%endif
a5de291a 334
b35e723c 335%dir %{_prefix}/lib/ocf/resource.d/pacemaker
336%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/ClusterMon
337%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/Dummy
338%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/HealthCPU
339%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/HealthSMART
340%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/Stateful
341%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/SysInfo
342%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/SystemHealth
343%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/controld
344%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/o2cb
345%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/ping
346%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/pingd
f4369631 347%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/remote
a5de291a 348
ed3071d2
JK
349%dir /var/lib/%{name}
350%dir %attr(750,hacluster,haclient) /var/lib/%{name}/blackbox
351%dir %attr(750,hacluster,haclient) /var/lib/%{name}/cib
352%dir %attr(750,hacluster,haclient) /var/lib/%{name}/pengine
a5de291a
JB
353%dir %attr(750,hacluster,haclient) %{_var}/run/crm
354/usr/lib/tmpfiles.d/%{name}.conf
01ea2d51
JK
355
356%files libs
357%defattr(644,root,root,755)
650f9adf
JB
358%attr(755,root,root) %{_libdir}/libcib.so.*.*.*
359%attr(755,root,root) %ghost %{_libdir}/libcib.so.3
360%attr(755,root,root) %{_libdir}/libcrmcluster.so.*.*.*
361%attr(755,root,root) %ghost %{_libdir}/libcrmcluster.so.4
362%attr(755,root,root) %{_libdir}/libcrmcommon.so.*.*.*
363%attr(755,root,root) %ghost %{_libdir}/libcrmcommon.so.3
364%attr(755,root,root) %{_libdir}/libcrmservice.so.*.*.*
365%attr(755,root,root) %ghost %{_libdir}/libcrmservice.so.1
366%attr(755,root,root) %{_libdir}/liblrmd.so.*.*.*
367%attr(755,root,root) %ghost %{_libdir}/liblrmd.so.1
368%attr(755,root,root) %{_libdir}/libpe_rules.so.*.*.*
369%attr(755,root,root) %ghost %{_libdir}/libpe_rules.so.2
370%attr(755,root,root) %{_libdir}/libpe_status.so.*.*.*
371%attr(755,root,root) %ghost %{_libdir}/libpe_status.so.4
372%attr(755,root,root) %{_libdir}/libpengine.so.*.*.*
373%attr(755,root,root) %ghost %{_libdir}/libpengine.so.4
374%attr(755,root,root) %{_libdir}/libstonithd.so.*.*.*
375%attr(755,root,root) %ghost %{_libdir}/libstonithd.so.2
376%attr(755,root,root) %{_libdir}/libtransitioner.so.*.*.*
377%attr(755,root,root) %ghost %{_libdir}/libtransitioner.so.2
01ea2d51 378
a5de291a
JB
379%files devel
380%defattr(644,root,root,755)
650f9adf
JB
381%attr(755,root,root) %{_libdir}/libcib.so
382%attr(755,root,root) %{_libdir}/libcrmcluster.so
383%attr(755,root,root) %{_libdir}/libcrmcommon.so
384%attr(755,root,root) %{_libdir}/libcrmservice.so
385%attr(755,root,root) %{_libdir}/liblrmd.so
386%attr(755,root,root) %{_libdir}/libpe_rules.so
387%attr(755,root,root) %{_libdir}/libpe_status.so
388%attr(755,root,root) %{_libdir}/libpengine.so
389%attr(755,root,root) %{_libdir}/libstonithd.so
390%attr(755,root,root) %{_libdir}/libtransitioner.so
391%{_libdir}/libcib.la
392%{_libdir}/libcrmcluster.la
393%{_libdir}/libcrmcommon.la
394%{_libdir}/libcrmservice.la
395%{_libdir}/liblrmd.la
396%{_libdir}/libpe_rules.la
397%{_libdir}/libpe_status.la
398%{_libdir}/libpengine.la
399%{_libdir}/libstonithd.la
400%{_libdir}/libtransitioner.la
a5de291a 401%{_includedir}/pacemaker
650f9adf
JB
402%{_pkgconfigdir}/pacemaker.pc
403%{_pkgconfigdir}/pacemaker-cib.pc
404%{_pkgconfigdir}/pacemaker-cluster.pc
405%{_pkgconfigdir}/pacemaker-fencing.pc
406%{_pkgconfigdir}/pacemaker-lrmd.pc
407%{_pkgconfigdir}/pacemaker-pengine.pc
408%{_pkgconfigdir}/pacemaker-service.pc
a5de291a
JB
409
410%files static
411%defattr(644,root,root,755)
650f9adf
JB
412%{_libdir}/libcib.a
413%{_libdir}/libcrmcluster.a
414%{_libdir}/libcrmcommon.a
415%{_libdir}/libcrmservice.a
416%{_libdir}/liblrmd.a
417%{_libdir}/libpe_rules.a
418%{_libdir}/libpe_status.a
419%{_libdir}/libpengine.a
420%{_libdir}/libstonithd.a
421%{_libdir}/libtransitioner.a
a5de291a 422
f4369631
JK
423%files remote
424%defattr(644,root,root,755)
f4369631
JK
425%attr(755,root,root) %{_sbindir}/pacemaker_remoted
426%attr(755,root,root) /etc/rc.d/init.d/pacemaker_remote
427%{systemdunitdir}/pacemaker_remote.service
a5de291a 428%{_mandir}/man8/pacemaker_remoted.8*
f4369631 429
da3fb05a
JK
430%if %{with heartbeat}
431%files heartbeat
432%defattr(644,root,root,755)
7c4f002d 433%attr(755,root,root) %{_sbindir}/crm_uuid
da3fb05a
JK
434%attr(755,root,root) %{_libdir}/heartbeat/attrd
435%attr(755,root,root) %{_libdir}/heartbeat/cib
436%attr(755,root,root) %{_libdir}/heartbeat/crmd
437%attr(755,root,root) %{_libdir}/heartbeat/pengine
438%attr(755,root,root) %{_libdir}/heartbeat/stonithd
a5de291a 439%{_mandir}/man8/crm_uuid.8*
da3fb05a
JK
440%endif
441
442%if %{with corosync}
443%files corosync
444%defattr(644,root,root,755)
445%attr(755,root,root) %{_sbindir}/pacemakerd
446%attr(755,root,root) /etc/rc.d/init.d/%{name}
447%{systemdunitdir}/%{name}.service
a5de291a 448%{_mandir}/man8/pacemakerd.8*
da3fb05a 449%endif
This page took 0.711226 seconds and 4 git commands to generate.